Thank you for using Aha Orbit Testimonials
Thank you for trusting our plugins. Aha Orbit Testimonials lets you create beautiful testimonial sliders with an orbital avatar layout, smooth animated transitions, and a full colour customisation system — all powered by vanilla JavaScript, with no jQuery dependency on the front end.
In WordPress, open Aha Orbit → Settings → Shortcode for a copyable shortcode reference. All layout, behaviour, and design settings are configured individually per-Orbit on the post edit screen.
Discover other Aha Plugins and get more out of WordPress — tools built for quality and simplicity.
Visit Aha Plugins →About the plugin
Aha Orbit Testimonials is a free WordPress plugin (GPLv2 or later) that creates animated testimonial sliders using a dedicated Custom Post Type (aha_orbit) and a simple shortcode. Each slider is a CPT post: you add testimonials and configure the layout directly in the post editor. Display is controlled entirely via the shortcode [aha_orbit id="POST_ID"].
Version: 1.0.0 (check Plugins in WordPress for the installed copy)
Requires: WordPress 6.0+, PHP 7.4+
License: GPLv2 or later — ahaplugins.com
Key features:
- Orbit Testimonials CPT with a repeater for as many testimonials as needed, each with name, role, text, and an optional avatar image
- Initials fallback — when no avatar image is provided, the component automatically generates a coloured avatar using the person’s first and last initials (e.g. DS for David Smith)
- Social media badges — add optional social network badges (Facebook, Instagram, LinkedIn, X) on avatars with clickable profile links
- Two layout modes — Auto (Elliptical) places avatars in an orbit automatically; Manual Coordinates lets you set the exact position of each avatar
- Smooth animated transitions powered by vanilla JavaScript — no jQuery, no third-party carousel library
- Design controls in the post editor with 8 colour presets (Default, Dark, Midnight, Purple, Ocean, Emerald, Warm, Rose) and individual colour pickers for every token
- Independent sliders — all configuration is managed directly in the slider edit screen without affecting other sliders
- Drag and swipe support on desktop and mobile
- Drag to reorder testimonials — quickly reorganize testimonials in the admin editor
- Grayscale effect on inactive avatars (optional)
- Autoplay with configurable interval, transition speed, and animation delay
- Navigation arrows and pagination bullets (optional)
- Works with any theme or page builder via shortcode
Installation
Via WordPress admin
- Go to Plugins → Add New.
- Search for Aha Orbit Testimonials (or upload the plugin ZIP file).
- Click Install now, then Activate.
- Go to Aha Orbit in the admin sidebar to create your first slider.
Via FTP
- Unzip the plugin ZIP file on your computer.
- Connect to your server via FTP and go to
wp-content/plugins. - Upload the
aha-orbit-testimonialsfolder intowp-content/plugins. - In the WordPress admin, go to Plugins and activate Aha Orbit Testimonials.
[aha_orbit id="POST_ID"] on any page.
Creating a testimonial slider
Go to Aha Orbit → Orbit Testimonials → Add New. Each slider is a WordPress post with two custom meta boxes: Slider Settings and Testimonials.
Give your slider a title
The post title is used only for internal reference in the admin list — it is never shown on the front end. Use a descriptive name such as “Homepage testimonials” or “Product page reviews”.
Publish the post
The slider must be in Published status to render on the front end. Draft sliders return an HTML comment instead of output.
Get the shortcode
After publishing, note the post ID shown in the URL bar (e.g. post=42) or in the Aha Orbit list. Use that ID in the shortcode: [aha_orbit id="42"].
Adding testimonials
The Testimonials meta box is a repeater that lets you add as many testimonials as needed. Each item has the following fields:
| Field | Required | Description |
|---|---|---|
| Name | Yes | Full name of the person giving the testimonial (e.g. David Smith). Used to display the name under the testimonial card and, when no image is provided, to generate initials for the avatar. |
| Role / Position | Yes | Job title or role displayed below the name (e.g. CEO, Acme Corp). |
| Testimonial Text | Yes | The testimonial quote displayed in the card. Keep it concise for best visual results. |
| Avatar Image URL | No | Direct URL of the person’s photo. Use the Select Image button to pick from the media library (automatically converted to a highly optimised WordPress thumbnail). If left empty, it displays a coloured circle with the person’s initials. |
| Company Logo URL | No | Optional logo displayed below the reviewer name (scaled down to an optimised 30px height). |
| Social Network | No | Optional social network badge to display on the avatar. Choose from: Facebook, Instagram, LinkedIn, or X (Twitter). The badge will appear as a small icon on the avatar corner. |
| Social Profile Link | No | Optional URL to the person’s social media profile. If provided, clicking the social badge will open the link in a new window. Only used if a Social Network is selected. |
| X Position (%) | No | Horizontal position of the avatar when Layout Mode is set to Manual Coordinates. Example: 20%. Ignored in Auto mode. |
| Y Position (%) | No | Vertical position of the avatar in Manual mode. Example: 80%. Ignored in Auto mode. |
Initials avatar
When no image URL is provided, the plugin extracts the first letter of the first word and the first letter of the last word from the Name field. For example, David Smith produces DS and Ana produces A. The avatar is rendered as a gradient circle with white text.
Managing items
- Click + Add Testimonial to add a new item at the bottom of the list.
- Click Remove on any item to delete it (a confirmation dialog appears).
- Reorder testimonials by dragging the drag handle (six-line icon) on the left side of each testimonial item. Drop it in the desired position to reorganize.
- Testimonials are displayed on the front end in the order they appear in the admin repeater.
Slider settings
The Slider Settings meta box controls the behaviour and design of this individual slider. Each slider is completely independent.
Behaviour
| Setting | Default | Description |
|---|---|---|
| Layout Mode | Auto (Elliptical) | Auto distributes avatars evenly around an elliptical orbit calculated automatically. Manual Coordinates uses the X % / Y % values you set per testimonial for precise placement. |
| Container Height (px) | 450 | Height of the avatar orbit area in pixels. Recommended value: 450. Increase for larger orbit areas; decrease for tighter layouts. On mobile, the height is automatically reduced to 350 px. |
| Show Arrows | On | Show or hide the previous/next navigation buttons. Disable if you rely solely on avatar clicks or swipe to navigate. |
| Show Dots | On | Show or hide the pagination bullet row below the testimonial card. |
| Autoplay | On | Automatically advance to the next testimonial on a timer. When disabled, navigation is manual only. |
| Autoplay Interval (ms) | 5000 | Time in milliseconds between automatic advances. Example: 5000 = 5 seconds. Only relevant when Autoplay is enabled. |
| Transition Speed (ms) | 800 | Duration in milliseconds of the avatar orbit animation when switching testimonials. Lower values feel snappier; higher values feel more cinematic. |
| Animation Delay (ms) | 150 | Delay in milliseconds between the avatar orbit movement finishing and the testimonial card text updating. Provides a brief pause so the eye can follow the avatar before reading the new text. |
| Grayscale Effect | On | When enabled, inactive (non-active) floating avatars are rendered in greyscale at reduced opacity. The active (centre) avatar is always shown in full colour. Hovering a greyscale avatar partially restores colour as a visual hint. |
| Draggable | On | Enables drag-to-navigate on the testimonial card. On touch devices, swipe left/right also works regardless of this setting. |
Design & Colours
Controls the colour palette applied to this slider. These values are applied dynamically, allowing multiple independent sliders on the same page.
Colour presets
Select a preset to fill all eight colour pickers at once. Available presets:
| Preset | Character |
|---|---|
| Default | Clean white card, blue accents — works on any background. |
| Dark | Dark navy card with light text and blue accents — ideal for dark-background sections. |
| Midnight | Deep midnight blue with indigo accents. |
| Purple | Light lavender card with violet accents. |
| Ocean | Sky-blue card with deep teal text. |
| Emerald | Soft green card with emerald accents. |
| Warm | Warm cream card with orange accents. |
| Rose | Blush card with deep rose accents. |
Individual colour pickers
After selecting a preset, fine-tune any individual colour using the colour picker fields:
- Card Background — Background of the testimonial card and avatar border/background.
- Testimonial Text — Main body text colour for the testimonial quote.
- Name — Colour of the testimonial person’s name.
- Role / Function — Colour of the role / job title text.
- Quote Icon — Colour of the large decorative opening quotation mark.
- Navigation Arrows — Colour of the arrow icons inside the navigation buttons.
- Dot Indicators — Colour of the inactive pagination dots.
- Active Dot — Colour of the active pagination dot (also used for the arrow button hover state).
Plugin settings
Go to Aha Orbit → Settings in the admin sidebar. Settings are organized in tabs: General, Shortcode, and Uninstall.
General
Contains a simple toggle to enable or disable all Orbit Testimonials across the site globally.
Shortcode
Documentation-only tab: copyable shortcode, the full attribute reference, and examples.
Uninstall
Choose whether to remove all plugin data (sliders, testimonial meta, and settings) when the plugin is deleted from Plugins → Installed Plugins. Deactivating alone does not remove any data. Media files in the library are not deleted automatically.
Shortcode reference
Use the shortcode to display a testimonial slider on any page, post, widget, or page builder block. Place it in a Shortcode block (Gutenberg), a Shortcode widget, or directly in the HTML area of any page builder.
[aha_orbit id="POST_ID"]Required attributes:
id — the ID of the published Orbit Testimonials post
Basic examples
| Use case | Code |
|---|---|
| Display slider with ID 42 | [aha_orbit id="42"] |
| Display slider with ID 85 on a different page | [aha_orbit id="85"] |
Multiple sliders on the same page
You can place several shortcodes on the same page. Each instance runs independently with its own orbit animation and unique DOM id:
[aha_orbit id="42"]
[aha_orbit id="85"]
Finding the slider ID
After creating and publishing a slider, the ID is visible in the URL when editing the post (e.g. post=42) and also in the Aha Orbit → Orbit Testimonials list view. The Shortcode tab in Settings also shows a ready-to-copy example.
Attribute reference
| Attribute | Required | Accepted values | Description |
|---|---|---|---|
id |
Yes | integer | Post ID of the published Orbit Testimonials CPT entry to render. The slider must be published; drafts and private posts return an HTML comment instead of output. |
In page builders
- Elementor — Add a Shortcode widget and paste the shortcode.
- Gutenberg — Add a Shortcode block and paste the shortcode.
- Bricks, Divi, Oxygen — Use the shortcode / HTML element and paste the shortcode.
- Classic editor — Paste the shortcode directly in the content.
Video – Setup and demo
Video walkthrough for setup and plugin demonstration.
[Video placeholder]
Add your setup and demo video embed (YouTube, Vimeo, etc.) here.