TestimonialLab — Documentation
Lightweight client testimonials for Joomla 5 & 6.
TestimonialLab is a focused testimonials component that displays client quotes in clean, responsive layouts. It replaces the frustration of heavyweight testimonial plugins with a simple tool that looks good out of the box and includes a module and shortcode embedding for flexible placement.

Requirements
- Joomla 5.0 or later (including Joomla 6)
- PHP 8.1 or later
- MySQL 5.7+ or MariaDB 10.3+
Installation
- Download the
pkg_testimoniallab-1.0.0.zippackage file. - In your Joomla admin panel, go to System > Install > Extensions.
- Upload the package file and click Upload & Install.
- The installer will set up the component, the shortcode content plugin, and the site module.
- Navigate to Components > TestimonialLab to get started.
Getting Started
Adding Testimonials
- Go to Components > TestimonialLab.
- Click New to add a testimonial.
- Enter the Author Name (required) — the person who gave the testimonial.
- Optionally add Role / Title (e.g. “Managing Director”) and Company with an optional Company URL.
- Write the Testimonial using the Joomla editor.
- Set Featured to Yes for testimonials you want to highlight.
- Click Save.
Featured Testimonials
In the list view, click the star icon next to any testimonial to toggle its featured status. Featured testimonials:
- Display with an accent left border on the frontend.
- Can be sorted to the top of the list (configurable).
- Can be filtered in the admin and displayed separately via the module and shortcode.
Publishing on the Frontend
There are three ways to display testimonials on your site:
Option 1: Menu Item
- Go to Menus and create a new menu item.
- Set the Menu Item Type to Testimonials.
- Configure the menu item parameters: layout (grid/list), display limit, show featured first, show company, show role, show search.
- Save and visit the page.
Option 2: Module
- Go to Content > Site Modules and create a new TestimonialLab module.
- Set the Mode: All, Featured Only, or Latest.
- Set the Count (number of testimonials to show).
- Choose Layout: Grid or List.
- Assign to a module position and publish.
Option 3: Shortcode in an Article
- Make sure the Content - TestimonialLab plugin is enabled in System > Plugins.
- Create or edit an article and add a shortcode (see Shortcode Embedding below).
- Save and visit the article.
Display Options
Layout: Grid vs List
TestimonialLab supports two display layouts, configurable per menu item or globally in Components > TestimonialLab > Options > Display Settings:
- Grid (default) — responsive card grid using CSS Grid with
auto-fill, minmax(300px, 1fr). Cards stack to single column on mobile. - List — single-column vertical layout with full-width cards. Clean and simple for sidebar or narrow layouts.
Show Featured First
When enabled (default), featured testimonials sort to the top of the list, followed by non-featured items in ordering sequence.
Display Limit
Set a maximum number of testimonials to display. 0 = show all published testimonials.
Show/Hide Options
- Show Company — display the company name and link in the citation.
- Show Role / Title — display the author’s role or job title.
- Show Search — enable the client-side search/filter bar.
- Show Quote Marks — show decorative CSS quote marks on each card.
- Quote Mark Style (when quote marks are enabled) — Double Quotes, Single Quote, or Guillemets.
Style Options
Configure the visual appearance in Components > TestimonialLab > Options > Style Settings:
- Card Background — background colour for testimonial cards.
- Card Border — border colour around cards.
- Quote Text Colour — colour for the testimonial text.
- Author Colour — colour for the author name, role, and company.
- Accent Colour — used for featured highlight border, company links, and search focus ring.
- Featured Background — light background tint for featured testimonial cards.
- Border Radius — Square, Rounded (default), or Pill.
All colours are applied via CSS custom properties, making them easy to override in template CSS if needed.

Module
The mod_testimoniallab module lets you display testimonials in any template position.
Module Parameters
- Mode — All (featured first, then by ordering), Featured Only, or Latest (by creation date).
- Count — maximum number of testimonials to show (default: 3).
- Layout — Grid or List.
- Show Company — yes/no.
- Show Role / Title — yes/no.
- Show Quote Marks — yes/no.
The module inherits style settings (colours, border radius) from the component options, so all testimonial displays stay visually consistent.
Typical Use Cases
- Homepage sidebar: 3 featured testimonials in a list.
- Footer position: all testimonials in a grid.
- Landing page: latest 5 testimonials.
Shortcode Embedding
TestimonialLab includes a content plugin that lets you embed testimonials in articles and custom HTML modules.
Setup
- Go to System > Plugins and ensure Content - TestimonialLab is enabled (it is enabled by default on install).
- In any article, add a shortcode where you want the testimonials to appear.
Shortcode Formats
{testimoniallab all}— all published testimonials.{testimoniallab featured}— featured testimonials only.{testimoniallab latest 5}— the 5 most recently created testimonials.{testimoniallab 3}— a single testimonial by ID.
Usage Tips
- The shortcode renders the same card grid as the component views, with all style options applied.
- You can use multiple shortcodes on the same page.
- Add introductory text or other content around the shortcode — it renders inline within the article.
- The shortcode works in standard articles and in any content that triggers Joomla’s content prepare event.
Template Overrides
Styling
TestimonialLab ships with clean default styling that works on most templates. To customise, create template overrides:
templates/{your-template}/html/com_testimoniallab/testimonials/default.phptemplates/{your-template}/html/mod_testimoniallab/default.php
CSS Classes Reference
.testimoniallab-wrapper— outer container with CSS custom properties.testimoniallab-module— additional class when rendered via module.testimoniallab-no-quotes— modifier when quote marks are hidden.testimoniallab-search— search bar container.testimoniallab-search-input— search input field.testimoniallab-grid— grid layout container.testimoniallab-list— list layout container.testimoniallab-item— individual testimonial card (blockquote).testimoniallab-featured— featured item modifier (accent border).testimoniallab-quote— testimonial text wrapper.testimoniallab-citation— author/company footer.testimoniallab-author— author name (cite element).testimoniallab-role— author role/title.testimoniallab-company— company name (with optional link).testimoniallab-hidden— hidden by search filter.testimoniallab-empty— no testimonials message
CSS Custom Properties
Set via inline style on .testimoniallab-wrapper, overridable in your template CSS:
--testimoniallab-card-bg--testimoniallab-card-border--testimoniallab-quote-colour--testimoniallab-author-colour--testimoniallab-accent--testimoniallab-featured-bg--testimoniallab-border-radius
Changelog
Version 1.0.0 (April 2026)
- Initial release
- Admin CRUD with featured toggle and ordering
- Frontend grid and list layouts
- Featured testimonial highlighting
- Site module with mode, count, and layout options
- Content plugin for shortcode embedding
- Live client-side search
- Configurable style options via CSS custom properties
- Company name and URL with linked citation
- Decorative quote marks (toggleable)
- Responsive mobile-first design
- Vanilla CSS/JS with zero dependencies
Support
For help, feature requests, or bug reports, visit the TestimonialLab page on the TDCLab extensions site:
https://extensions.thedesigncompany.co.nz
Licence
TestimonialLab is free software released under the GNU General Public License v2 or later.