The Best WordPress Testimonials Plugin – Testimonials Premium

Testimonials Premium is the most amazing and incredibly full-featured WordPress testimonials plugin there is. It lets you randomly slide or list selected portfolios, quotes, reviews, or text with images or videos on your WordPress site. You can insert Testimonials content via shortcode, theme functions, or widgets with category and tag selections and having multiple display options such as random or specific ordering. Also, Review schema for improved search engine results is built-in.

Further, Testimonials Premium offers caching, excerpts, ratings, read more links, more selection options, and advanced capabilities like using custom post types as testimonials. Additionally, testimonials support ratings and users can submit their own testimonials via a front-end form shortcode or widget.

Testimonials Premium is Way More than a WordPress Slider!

  • Slide Images - responsive image slideshow
  • Slide Videos - video slideshow
  • Slide Text - useful for rotating testimonials
  • Slide Mixed Content: slideshow having video slides, images slides, and text slides. Each individual slide can also have mixed content.
  • Shortcode compatible - slide content that is rendered using shortcodes. i.e. stock Worpdress Galleries and Gravity Forms
  • Widget ready
  • Shortcode ready
  • Random display
  • Fade and slide transitions
  • Filter slideshow content by WordPress’ built in categories, tags, or post-ID

Introduction to Testimonials Premium plugin for WordPress

View a Live Testimonials Demo

More than one Testimonials shortcode or widget instance can be displayed at a time on a page. Additionally, with shortcodes and theme functions, you can display a short or long list or rotation of testimonials anywhere you need.

Through categories and tagging, you can create organizational structures. Using categories for products, projects and services you can then apply tagging for further classification.

As an example, create a Portfolio category and then use tags to identify webmagazinemediapublicenterprise, or other niches. Then configure the Testimonial instance to show only Portfolio testimonials with the public and enterprise tags. In another Testimonial instance, you can also select only Portfolio testimonials, but then allow web and media tags.

For easy custom styling, each Testimonial widget has its own CSS class identifier.

Widgets display content sans wpautop formatting. This means there’s no forced paragraph breaks unless the content specifically contains them. If needed, you can enable wpautop via the “Keep whitespace?” option.

The single testimonial view supports image, source, title, location, email, company and URL details with optional Review schema.

User submitted testimonials are marked as “Pending” in WordPress Admin > Testimonials listing. Testimonials are saved to thetestimonials-widget custom post type.

Primary Premium Features

  • Admin interface to add, edit and manage testimonials
  • Akismet, math-based CAPTCHA, and more anti-spam traps
  • Alternate destinations for “Read more” links
  • API to manipulate testimonials output and selection
  • Auto rotate testimonials by page
  • Caching of testimonials queries and content to decrease server load time improve page loading speed by 1/10 to 1/2 a second
  • Capable of handling multiple widgets per page or post
  • Carousel mode for rotating multiple testimonials at the same time
  • CSS or HTML table based testimonials submissions form layout
  • Displays ratings to grant testimonials more power!
  • Excerpts for widget view, with read more link to complete testimonial
  • Fields for source, testimonial, image, title, location, email, company and URL details
  • Front-end entry form for user supplied testimonials. Live form demo
  • Minimalist CSS styling for easier theming
  • Multiple paging options for testimonials listings
  • microdata format for improved search engine results
  • Select only testimonials with excerpts, images or of arbitrary maximum and minimum length
  • Settings export/import
  • Settings screen for site-wide option defaults
  • Shortcodes and theme functions for listings and rotation
  • Show unique testimonials when displaying multiple testimonial instances
  • Single testimonial view includes image, source, title, location, email, company and URL details
  • Testimonials archive view
  • Use custom taxonomy or WordPress’s own for categories and tags
  • Uses bxSlider for transitions

Premium Shortcodes

  • [testimonials] - Listings with paging
  • [testimonials_count] - Count of testimonials
  • [testimonials_form] - Testimonials entry form
  • [testimonials_links] - List of testimonial source and title linking to full entry
  • [testimonials_slider] - Rotating

Premium Theme Functions

  • <?php echo testimonials( $args ); // Listings with paging ?>
  • <?php echo testimonials_count( $args ); // Count of testimonials ?>
  • <?php echo testimonials_form( $args ); // Testimonials entry form ?>
  • <?php echo testimonials_links( $args ); // List of testimonial source and title linking to full entry ?>
  • <?php echo testimonials_slider( $args ); // Rotating ?>

Testimonials Migration Helpers

Additional Features

  • “Read more” link column on testimonial posts admin page
  • Adjustable animation speed
  • Admin mode only anti-spam debug help text
  • Alternating .even and .odd CSS classes for styling testimonial list entries
  • Archive Page URL and Testimonial Page URL are prevented from being the same or matching existing pages.
  • Auto-suggest for category and tag options
  • Automatic linking of email and URL fields via source or company fields
  • Built-in update notification
  • Cache per page when you use custom testimonials instance per page
  • Clear cache when WP Super Cache, FlexiCache, Hyper Cache, DB Cache Reloaded Fix does
  • Clickable widget titles
  • Commenting on testimonial single-view pages
  • Compatible with WordPress multisite
  • Configuration based validation for easy extending or overriding
  • Content truncation respects HTML tags
  • Custom CSS in footer for HTML validation
  • Custom text or HTML for bottom of widgets
  • Custom widget bottom text
  • Customizable archive and testimonial URLs
  • Customizable testimonial data field testimonial_extra
  • Default post author, category, and status options for user testimonial submissions
  • Deletes old and related testimonial cache entries automatically
  • Deletes testimonials-widget custom post type entries and settings on uninstall
  • Disable caching for widget, shortcode or theme functions
  • Disable donate and purchase related text and links
  • Disable self-generated quotation marks
  • Easily label and link to reviewed item for Review schema
  • Easy to configure Next and Previous page indicators
  • Editors and admins can edit testimonial publisher
  • Email notification for user submitted testimonials
  • Fields for rating, item reviewed, and item URL per testimonial
  • Filters for caching and more link control, text replacement, and more
  • Flush URLs on deactivation
  • Form “Testimonial” header text is customizable to “Specials” or other terms
  • Gravatars saved as featured images
  • IDs column shown in testimonials edit page
  • IE7 CSS hacks for quotes and join parts
  • Image, email based Gravatar, category and tag enabled
  • Internal version tracking for compatibility checks and automatic settings update
  • Localizable via languages/testimonials-widget.pot
  • Multiple user-entry forms on same page are allowed
  • On testimonial submission error, focus on first required field
  • Optional commenting on testimonial single-view pages
  • Override Review schema author name
  • Performance optimizations
  • Plugin version tracking to ensure compatibility
  • Premium tab on settings screen for site-wide option defaults
  • Read more links for testimonials exceeding the character limit
  • Require minimumal testimonial rating for display
  • Respects meta capabilities
  • Review microdata format per
  • Right Now Dashboard widget displays “Pending Testimonials” counts
  • Rotation JavaScript in footer than body
  • Select post, page and other custom post types for content rotations slider
  • Settings and URL based cache clearing
  • Settings page contextual help
  • Shortcode helpers on category and tag admin screens
  • Shortcodes allowed inside of testimonials content
  • Shortcodes and theme functions for testimonials count and testimonial link list
  • Shortcodes, theme functions, and widget user testimonial submission form
  • Show excerpts with list and single views
  • Simple, single rating per testimonials (more capabilities to come in future releases)
  • Supports WP-PageNavi
  • Testimonial content supports HTML
  • Testimonial links listing with image, source, title, location, company, and URL fields
  • Testimonial, email, and URL fields are clickable – URL requires http:// or https:// prefix
  • Testimonials output is completely customizable via filters
  • Testimonials support styling based upon CSS classes for category, tags and post id
  • Testimonials widget displays static and rotating testimonials
  • Unique CSS class per widget
  • Upload images by browsing or URL
  • URLs can be opened in new windows
  • WordPress Admin > Testimonials > Clear Cache menu link
  • WordPress Multilingual enabled WPML
  • WPML compatible

Doesn’t Work For You?

No problem, get a 100% refund and keep the software. Your license for support and updates will be revoked though.

Shortcode Examples


  • [testimonials category="category-name"] - Testimonial list by category
  • [testimonials category=product hide_not_found=true] - Testimonial list by category and hide “No testimonials found” message
  • [testimonials category=product tags=widget limit=5] - Testimonial list by tag, showing 5 at most
  • [testimonials char_limit=0 limit=-1] - Show all testimonials on one page
  • [testimonials char_limit=0 target=_new limit=3 disable_quotes=true] - Show 3 full-length testimonials, with opening and closing quote marks removed
  • [testimonials hide_source=true hide_url=true] - Show testimonial list with source and urls hidden
  • `[testimonials ids="1,11,111" paging=false] - Show only these 3 testimonials
  • [testimonials meta_key=testimonials-widget-company order=asc limit=15] - Show 15 testimonials, in company order
  • [testimonials order=ASC orderby=title] - List testimonials by post title
  • [testimonials tags="test,fun" random=true exclude="2,22,333"] - Select testimonials tagged with either “test” or “fun”, in random order, but ignore those of the excluded ids


  • [testimonials_count category=product-a] - Display the number of “Product A” category testimonials


  • [testimonials_form hide_meta_email=true hide_tags_input=false] – Display a testimonial input form on the front-end sans email, but enables tags entry
  • [testimonials_form hide_post_excerpt=true hide_meta_title=true hide_meta_location=true hide_meta_email=true hide_meta_company=true hide_meta_url=true hide_featured_image=true] - Very simple testimonial submission form


  • [testimonials_links hide_company=true] – Display a list of all testimonials without content or company details


  • [testimonials_slider carousel_count=2 transition_mode=vertical slide_margin=50 rotate_per_page=false] - Show vertical carousel with 2 testimonials
  • [testimonials_slider carousel_count=3 transition_mode=horizontal slide_width=250 slide_margin=25 require_ratings=1] - Show horizontal carousel with 3 rated testimonials
  • [testimonials_slider category=product order=asc] - Show rotating testimonials, of the product category, lowest post ids first
  • [testimonials_slider category=quote rotate_per_page=true show_controls=true] - Automatically rotate testimonials page to page, even if next testimonial is clicked
  • [testimonials_slider limit=3 show_controls=true require_ratings=4 require_image=true hide_excerpt=true] Show testimonials having at least 4 stars and a featured image, but don’t show the excerpt
  • [testimonials_slider maximum_length=100] - Display only short testimonials
  • [testimonials_slider minimum_length=250] - Ignore short testimonials for display
  • [testimonials_slider post_type=post] - Display posts instead of testimonials
  • [testimonials_slider require_image=true require_excerpt=true] - Display only testimonials with excerpts and featured images. Great for lead-ins
  • [testimonials_slider show_controls=true] - Display rotating testimonials with link to next testimonial
  • [testimonials_slider tags=sometag random=true] - Show rotating, random testimonials having tag “sometag”
  • [testimonials_slider unique=true] - Prevent showing previously selected testimonials on a page

Shortcode and Widget Options

Please keep in mind that inheritance affects options. This means that changes made to Testimonials > Settings will not affect current widget instance options. You must change the widget instance manually. However, if you create a new widget instance, then the global settings will apply.

Further, global settings are the baseline for shortcodes. If you want to alter the shortcode appearance, then alter the shortcode options directly.


  • Use bxSlider? - Prior to 2.15.0, Testimonials’ used custom JavaScript for transitions.
  • Exclude bxSlider CSS? - For a bare-bones, unthemed slider.
    • exclude_bxslider_css - default show; exclude_bxslider_css=true
  • Include IE7 CSS?
  • Hide built-in quotes? - Remove open and close quote span tags surrounding testimonial content
    • disable_quotes - default false; disable_quotes=true
  • Remove .hentry CSS? – Some themes use class .hentry in a manner that breaks Testimonials’ CSS and corrupts microdata parsing
    • remove_hentry - default true; remove_hentry=false
  • Use <q> tag? – Not HTML5 compliant
    • use_quote_tag - default none; use_quote_tag=true

Fields to Show

  • Hide Gravatar Image?
    • hide_gravatar - default show; hide_gravatar=true
  • Hide Image?
    • hide_image - default show; hide_image=true
  • Hide Image in Single View?
    • hide_image_single - default show; hide_image_single=true
  • Hide Testimonial Content?
    • hide_content - default show; hide_content=true
  • Hide Author/Source? - Don’t display “Post Title” in cite
    • hide_source - default show; hide_source=true
  • Hide Email?
    • hide_email - default show; hide_email=true
  • Hide Job Title?
    • hide_title - default show; hide_title=true
  • Hide Location?
    • hide_location - default show; hide_location=true
  • Hide Company?
    • hide_company - default show; hide_company=true
  • Hide URL?
    • hide_url - default show; hide_url=true


  • Default Reviewed Item? - Name of thing being referenced in testimonials
    • item_reviewed - default “Site Title”
  • Default Reviewed Item URL? - URL of thing being referenced in testimonials
    • item_reviewed_url - default network_site_url();
  • Enable Paging? - for [testimonials]
    • paging - default true [true|before|after|false]; paging=false
      • true – display paging before and after testimonial entries
      • before – display paging only before testimonial entries
      • after – display paging only after testimonial entries
    • Widget - Not functional
  • Enable Review Schema? – Adds HTML tag markup per the Review schema to testimonials. Search engines including Bing, Google, Yahoo! and Yandex rely on this markup to improve the display of search results.
    • enable_schema - default true; enable_schema=false
  • Enable [shortcodes]? - If unchecked, shortcodes are stripped.
    • do_shortcode - default false; do_shortcode=true
  • Hide “Testimonials Not Found”?
    • hide_not_found - default show; hide_not_found=true
  • URL Target - Add target to all URLs; leave blank if none
    • target - default none; target=_new


  • Category Filter - Comma separated category names
    • category - default none; category=product or category=”category-a, another-category”
  • Tags Filter - Comma separated tag names
    • tags - default none; tags=fire or tags=”tag-a, another-tag”
  • Require All Tags - Select only testimonials with all of the given tags
    • tags_all - default OR; tags_all=true
  • Include IDs Filter - Comma separated IDs
    • ids - default none; ids=2 or ids=”2,4,6″
  • Exclude IDs Filter - Comma separated IDs
    • exclude - default none; exclude=2 or exclude=”2,4,6″
  • Limit - Number of testimonials to rotate through via widget or show at a time when listing
    • limit - default 10; limit=25


  • Random Order? - Unchecking this will rotate testimonials per ORDER BY and ORDER BY Order. Widgets are random by default automatically
    • random - default none; random=true (overrides order and orderby)
    • Widget default true
  • ORDER BY - Used when Random order is disabled
    • orderby - default ID; orderby=title
  • ORDER BY meta_key - Used when “Random Order” is disabled and sorting by a testimonials meta key is needed
    • meta_key - default none [[testimonials-widget-company|testimonials-widget-email|testimonials-widget-title|testimonials-widget-location|testimonials-widget-url]]; meta_key=testimonials-widget-company
  • ORDER BY Order - DESC or ASC
    • order - default DESC; order=ASC


  • Widget Title
    • title - default “Testimonials”
  • Title Link - URL or Post ID to link widget title to
  • Character Limit - Number of characters to limit testimonial views to
    • char_limit - default none; char_limit=200
    • Widget - default 500
  • Rotation speed - Seconds between testimonial rotations or 0 for no rotation at all
    • refresh_interval - default 5; refresh_interval=0
  • Transition Mode? - Type of transition between slides
    • transition_mode - default fade; transition_mode=horizontal|vertical|fade
  • Show Play/Pause? - Display start and stop buttons underneath the testimonial slider.
    • show_start_stop - default true; show_start_stop=false
  • Enable Video? - Only enable when displaying video content.
    • enable_video - default false; enable_video=true
  • Keep Whitespace? - Keeps testimonials looking as entered than sans auto-formatting
    • keep_whitespace - default none; keep_whitespace=true
    • The citation has no whitespace adaptations. It’s straight text, except for email or URL links. The presentation is handled strictly by CSS.
  • Testimonial Bottom Text - Custom text or HTML for bottom of testimonials
    • bottom_text - default none; bottom_text=”<h3><a href="">All testimonials</a></h3>

Post Type

  • Allow Comments? – Only affects the Testimonials post edit page. Your theme controls the front-end view.
  • Archive Page URL – URL slug-name for testimonials archive page. After changing, you must click “Save Changes” on Permalink Settings to update them.
  • Testimonial Page URL – URL slug-name for testimonial view pages. After changing, you must click “Save Changes” on Permalink Settings to update them.


  • Don’t Use Default Taxonomies? – If checked, use Testimonials’ own category and tag taxonomies instead
  • Export Settings – These are your current settings in a serialized format. Copy the contents to make a backup of your settings.
  • Import Settings – Paste new serialized settings here to overwrite your current configuration.
  • Remove Plugin Data on Deletion? - Delete all Testimonials data and options from database on plugin deletion
  • Reset to Defaults? – Check this box to reset options to their defaults

Version Based Options

  • Disable Animation? - Disable animation between testimonial transitions. Useful when stacking.
    • disable_animation - default false; disable_animation=true
  • Fade Out Speed - Transition duration in milliseconds; higher values indicate slower animations, not faster ones.
    • fade_out_speed - default 1250; fade_out_speed=400
  • Fade In Speed - Transition duration in milliseconds; higher values indicate slower animations, not faster ones.
    • fade_in_speed - default 500; fade_in_speed=800
  • Height - Testimonials height, in pixels. Overrides minimum and maximum height
    • height - default none; height=300
  • Minimum Height - Set for minimum display height, in pixels
    • min_height - default none; min_height=100
  • Maximum Height - Set for maximum display height, in pixels
    • max_height - default none; max_height=250


  • License Key - Required to enable premium plugin updating. Activation is automatic. Use 0 to deactivate.
  • Disable Donate Text? - Remove “If you like…” text with the donate and premium purchase links from the settings screen.
    • disable_donate - default false; disable_donate=true

Fields to Show

  • Hide Excerpt? - Don’t show excerpts instead of testimonial content in widget views. Also, shows excerpts with testimonial content in single views.
    • hide_excerpt - default show; hide_excerpt=true
  • Hide Ratings? - Don’t show ratings in testimonial views.
    • hide_ratings - default show; hide_ratings=true
  • Hide “Read more” Links? - Don’t show “Read more” links on testimonials exceeding the character limit
    • hide_read_more - default show; hide_read_more=true


  • Add nofollow to “Read more” Links?
    • nofollow_read_more - default false; nofollow_read_more=true
  • Default Rating? - Default new testimonial rating
    • default_rating - default 5; default_rating=4
  • Force “Read more” Links?
    • force_read_more - default false; force_read_more=true
  • Link Image? – If checked, wraps image in link to testimonial
    • link_image - default true; link_image=false
  • Show Content as Excerpt? - On Testimonials edit page listing, show truncated post content if no excerpt.


  • Maximum Length - Maximum number of allowed characters in testimonial content for query selection
    • maximum_length - default none; maximum_length=500
  • Minimum Length - Minimum number of characters required in testimonial content for query selection
    • minimum_length - default none; minimum_length=250
  • Require Excerpt? - Select only testimonials with excerpts
    • require_excerpt - default none; require_excerpt=true
  • Require Image? - Select only testimonials with images
    • require_image - default none; require_image=true
  • Require Ratings? - Minimum rating required before selecting testimonials to display.
    • require_ratings - default 0; require_ratings=4
  • Strict Ratings? - Show only testimonials matching the Require Ratings selection.
    • strict_rating - default none; strict_rating=true
  • Alternate Testimonial Post Type? - Set this to use Posts, Posts or another custom post type for testimonials
    • post_type - default testimonials-widget; post_type=post


  • Cache Per Page? - This is useful when you use custom testimonial instances per page.
    • cache_per_page 0 default false; cache_per_page=true
  • Disable Caching? - Disables caching for this particular Testimonials instance. Useful for letting Testimonials list be cached and shown, while a rotation widget shows a different sequence on each page load
    • no_cache - default false; no_cache=true
  • Prevent Duplicates? - Prevent allowing duplicate testimonials from showing on a page. Requires caching to be enabled.
    • unique - default false; unique=true

Widget Only Options

  • Auto-Rotate Page-to-Page? - Automatically change to the next testimonial, per the sort order, whenever a user navigates to another page.
    • If you have a quick rotation and slow loading pages, it’s possible that the next page will show the current as it takes a moment for the cookie to be set.
    • rotate_per_page - default false; rotate_per_page=true
  • Show Next/Prev Controls?
    • show_controls - default true; show_controls=false
  • Show Pager?
    • show_pager - default false; show_pager=true
  • Carousel Count? - The number of testimonials to be shown at a time. “1″ means no carousel. Testimonials will be sized down if carousel becomes smaller than the original size. Requires Transition Mode “Horizontal” or “Vertical”.
    • carousel_count - default 1; carousel_count=3 Slide Margin? - Margin between each testimonial. Increase to thumbnail height or greater for vertical transitions. Used with Carousel Count.
    • slide_margin - default 10; slide_margin=50 Slide Width? - Width of each testimonial. Increase to thumbnail width or greater for horizontal transitions. Used with Carousel Count.
    • slide_width - default none; slide_width=300

Version Based Options

  • Show “Next testimonial…” Link? - Display link to next testimonial for rotating widgets
    • next_button - default none; next_button=true


  • Form Header – Leave blank for default “Add a Testimonial” or “Edit Testimonial” headings.
    • form_header – default none; form_header=”Why do you love us?”
  • Default Testimonial Status – default pending; Select blog Publish, Pending, Draft, or Private
  • Default Testimonial Author
    • post_author – default 1; Select blog administrator or editor
  • Default Testimonial Category – Only one category is allowed
    • post_category – default 1; Select Testimonials post category
  • Disallow Edit After Submission?
    • disallow_edit – default false; disallow_edit=true
  • Send Mail Notification? - Send admin notice of testimonial submission
  • Notification Recipient
  • Thank You Page Link - URL, path, or post ID of thank you page. Ex:, /thank-you, or 123
    • thank_you_page - default none; thank_you_page=/thank-you


  • Use Table Form Layout? - Use HTML table tags to layout the form instead of CSS. Since version 1.14.4.
    • form_table – default false; form_table=true
  • Include Form CSS? - Not all themes include form related CSS. This includes a very basic form stylesheet. Since version 1.14.4.

Widget Only Options

  • Widget Title
  • Title Link - URL or Post ID to link widget title to. Ex: 123 or
  • URL Target - Add target to Title Link; leave blank if none

Fields to Show

  • Hide Form Header?
    • hide_form_header – default false; hide_form_header=true
  • Hide Excerpt Field? - Hide form field input for variable post_excerpt.
    • hide_post_excerpt – default false; hide_post_excerpt=true
  • Hide Ratings? - Hide form field input for variable meta_rating. Expects integer, 1 to 5.
    • hide_meta_rating – default false; hide_meta_rating=true
  • Hide Job Title Field? - Hide form field input for variable meta_title.
    • hide_meta_title – default false; hide_meta_title=true
  • Hide Location Field? - Hide form field input for variable meta_location=.
    • hide_meta_location – default false; hide_meta_location=true
  • Hide Email Field? - Hide form field input for variable meta_email.
    • hide_meta_email – default false; hide_meta_email=true
  • Hide Company Field? - Hide form field input for variable meta_company=.
    • hide_meta_company – default false; hide_meta_company=true
  • Hide URL Field? - Hide form field input for variable meta_url.
    • hide_meta_url – default false; hide_meta_url=true
  • Hide Item Referenced Field? - Hide form field input for variable meta_item.
    • hide_meta_url – default false; hide_meta_item=true
  • Hide Item URL Field? - Hide form field input for variable meta_item_url.
    • hide_meta_item_url – default false; hide_meta_item_url=true
  • Hide “Read More Link” Field? - Hide form field input for variable meta_read_more_link.
    • hide_meta_read_more_link – default true; hide_meta_read_more_link=false
  • Hide Tags Field? - Hide form field input for variable tags_input.
    • hide_tags_input – default true; hide_tags_input=false
  • Hide Image Field? - Hides both image upload and URL fields.
    • hide_featured_image – default false; hide_featured_image=true
  • Disable Image Upload via URL? - Hide form field input for variable featured_image_url. Expects image URL.
    • hide_featured_image_url – default false; hide_featured_image_url=true


  • Akismet API Key - For many people, Akismet will greatly reduce or even completely eliminate the testimonial spam you get on your site. If you don’t have an API key yet, you can get one at
  • BBCode is Spam – Review the testimonial contents for BBCode links
  • Validate Submission IP – Validity check for used IP address
  • Use Anti-spam Regular Expressions – Predefined and custom patterns by plugin hook
  • Check Local Spam Database – Already marked as spam? Yes? No?
  • Check Public Anti-spam Database – Matching the IP address with Tornevall
  • Block Testimonials From Specific Countries – Filtering the requests depending on country
  • Allow Testimonials Only In Certain Language – Detection and approval in specified language
    • Language – English, French, German, Italian, Spanish
  • Hide “What is the sum of…?” – A simple anti-spam helper
    • hide_are_you_human – default false; hide_are_you_human=true



Install Methods

  • Download locally
    • Through WordPress Admin > Plugins > Add New
    • Click Upload
    • “Choose File”
    • Click “Install Now”
  • Download and unzip locally
    • Using FTP, upload directory testimonials-widget-premium to your website’s /wp-content/plugins/ directory

Activation Options

  • Activate the “Testimonials Premium” plugin after uploading
  • Activate the “Testimonials Premium” plugin through WordPress Admin > Plugins

License Activation

  1. Set the license key through WordPress Admin > Testimonials > Settings, Premium tab, License Key field
  2. License key activation is automatic upon clicking “Save Changes”


  1. Read How do I create a testimonial record?
  2. Watch Testimonial Widget
  3. Add and manage testimonials through the “Testimonials” menu in the WordPress admin area
  4. To display testimonials in the sidebar, go to “Widgets” menu and drag “Testimonials” widget into the desired widget area
  5. Configure “Testimonials” to select quotes and display as needed
  6. Use the [testimonials] or [testimonials_slider] shortcodes to display testimonials on a page or in a post
  7. Read theme functions usage for testimonials() and testimonials_slider()


  • Through WordPress
    • Via WordPress Admin > Dashboard > Updates, click “Check Again”
    • Select plugins for update, click “Update Plugins”
  • Using FTP
    • Download and unzip locally
    • Upload directory testimonials-widget-premium to your website’s /wp-content/plugins/ directory
    • Be sure to overwrite your existing testimonials-widget-premium folder contents

Frequently Asked Questions

Most Common Issues

Still Stuck or Want Something Done? Get Support!

  1. Knowledge Base - read and comment upon 125+ frequently asked questions
  2. Open Issues - review and submit bug reports and enhancement requests
  3. Support on WordPress - ask questions and review responses
  4. E-mail [email protected] for personalized assistance
  5. Contribute Code
  6. Beta Testers Needed - provide feedback and direction to plugin development



  1. Single [testimonials] entry with and without “Read more” link
  2. [testimonials_slider show_controls=true keep_whitespace=true char_limit=250 minimum_length=100] - Widget with “Read more” and Next/Prev links
  3. Using Review and AggregateRating schema data structures
  4. [testimonials_links] Shortcode examples, unstyled
  5. Widget with ‘sample excerpt’ and “Read more” link
  6. Single view with and without excerpt
  7. require_imageminimum_length and maximum_length shortcode option examples
  8. Edit testimonial with Excerpt, Item Referenced, Rating and Read more Link fields
  9. [testimonials_count] Examples
  10. Clear Cache page results
  11. Alternating background colors – Courtesy of placeofstillness
  12. Testimonials Settings > Premium tab
  13. [testimonials_form] – Add a Testimonial; HTML table and CSS layouts based shown
  14. Testimonials Settings > Entry Form tab
  15. New testimonial submission email
  16. Testimonials submission form widget
  17. Options for testimonials submission form widget


See Changelog

Upgrade Notice


  • Include Form CSS is now set by default


  • Please resave your Testimonials > Settings and Widget options for defaults to be corrected


  • Default value for slide_margin set to 10.
  • Default value for slide_width removed.
  • This is the last version supporting pre-bxSlider options


  • Plugin “Testimonials by Aihrus” is NOT required to be installed and activated prior to activating “Testimonials Premium”.


  • Licensing is required for updating plugin
  • Requires PHP 5.3+ notice


  • Some of the new features only work with Testimonials 2.15.0 or higher with bxSlider enabled.


  • 50 modifications See Changelog
  • The read more link tag surrounding the span.image tag, is now inside of span.image tag.


  • Clear the Cache to reset it
  • CSS ID testimonials-widget-premium-form changed to class
  • Form layout CSS moved to own stylesheet for optional include via “Include Form CSS?”
  • Option hide_featured_image_url renamed to hide_featured_image
  • Remove style="display: table;" from testimonials submission form


  • Clear Cache? moved from Setting to WP Admin > Testmonials > Clear Cache as a menu link


  • CSS and JavaScript renaming
    • testimonialswidget_excerpt renamed to testimonials-widget-premium-excerpt
    • testimonialswidget_testimonial renamed to testimonials-widget-testimonial
    • testimonialswidget_testimonials renamed to testimonials-widget-testimonials
    • testimonials_form renamed to testimonials-widget-premium-form


  • Requires at least Testimonials 2.11.2


  • CSS class names are simplified. For the most part, other than testimonialswidget_testimonial remove testimonialswidget_from the CSS class name in your CSS customizations.
    • Ex: .testimonialswidget_join becomes .join
    • Ex: .testimonialswidget_author becomes .author
  • Testimonials are now formatted using blockquote than q for HTML5 compliance. If you need q tag formatting, enable it at WP Admin > Testimonials > Settings, Compatibility & Reset tab
    • cite is now


  • CSS class names are simplified. For the most part, other than testimonialswidget_testimonial remove testimonialswidget_from the CSS class name in your CSS customizations.
    • Ex: .testimonialswidget_join becomes .join
    • Ex: .testimonialswidgetpremium_testimonials_links to .testimonialswidget_testimonials .links
  • Replace filter testimonials_widget_disable_more_link with setting hide_read_more
  • Requires at least Testimonials 2.10.3


  • Requires at least Testimonials 2.10.0


  • Using posts, pages, and other custom post types for rotation and testimonials is possible now


  • Requires at least Testimonials 2.8.0


  • Requires at least Testimonials 2.7.15


  • Requires at least Testimonials 2.7.3


  • When plugin is uninstalled, licensing is deactivated


Deprecation Notices

Deprecated Shortcodes

  • [testimonialswidgetpremium_count]
  • [testimonialswidgetpremium_form]
  • [testimonialswidgetpremium_link_list]
  • [testimonialswidget_list]
  • [testimonialswidget_widget]

Deprecated Theme Functions

  • testimonialswidgetpremium_count()
  • testimonialswidgetpremium_form()
  • testimonialswidgetpremium_link_list()
  • testimonialswidget_list()
  • testimonialswidget_widget()


You can translate this plugin into your own language if it’s not done so already. The localization file testimonials-widget-premium.pot can be found in the languages folder of this plugin. After translation, please send the localized file for plugin inclusion.

How do I localize?

Thank You

  • jQuery Raty – A Star Rating Plugin


Add to Cart

18 Comments on "The Best WordPress Testimonials Plugin – Testimonials Premium"

  • Am I missing something or is there no documentation on the filters available with this plugin?

    • You’re right. I started the API documentation, but never finish or published it.

      See API.

  • Ewan Colin

    Hi, I just updated this plugin for first time in two months. Now the testimonials are no longer working in my WPML site. Did you recently remove WordPress Multi Lingual support for the free version of this plugin?

    • Did you read or search the FAQ?

      I’m sorry about that response, I hadn’t realized WP admin cutoff the comment when I replied.

      WPML is still in place in free and paid Testimonials Widget. You probably have to go through the WPML troubleshooting process again to get TW’s custom post type picked up.

  • nathan winners

    is this premium plugin compliant with schema?

    • I don’t have micro-schema enabled yet as I haven’t figured out which to use. The problem is that there’s the reviews, quote, and testimonials point of views to this, plus who’s the actual author beyond other niggling details.

      If you can present some clear guidance on how to best proceed, I’d be happy to code it in soon.

    • The testimonials widget plugins are now Review schema compliant.

      • Rick

        Is the premium or standard version complaint with the review schema?

        • Michael Cannon

          Yes, the Review schema generated passes the microdata tests from Google. See the demo links in the features listing.

          • Hi

            Does the free version allow the testimonail giver to spcity the rating (5 stars etc.) or is that only available in the premium version?

            I see has nice 5 star reviews. Does that feature of being able to add 5 star reviews come with the free version or only eith the premium version?

            looking forward to your reply.

          • Matt, ratings are a premium feature.

  • Had someone else set up my testimonials but they used free version and features aren’t working so now I have purchased premium. However, I have no idea how/where to activate the new version and am afraid of losing 45 testimonials I already set up. Please advise.

  • Gretchen Duffin

    Hi Michael,

    I installed and set up the Testimonial Widget which was working fine on my multilingual site.

    Then I paid for the Premium version in order to slow the transition speed, but after doing so the widget is no longer changing languages (the testimonials stay in English on my French pages).

    I’ve tried so many things with no success…

    Under WPML > Theme and plugins localization, I rescanned the plugin for strings.

    Under WPML > Translation management > ‘Custom fields translation’ > all the ‘testimonials’ related fields were changed to ‘translate’.

    Under WPML > Translation management > Custom posts > Testimonials > I am using ‘different slugs in different languages’

    No change. Any suggestions?

  • Gretchen Duffin

    Dear Michael,

    Thank you for your quick reply. I uninstalled the Premium version and re installed the free version. All is working again and I have the rotation speed as the client requested it.

    That is very kind of you to offer a refund. I will be happy to accept. I will send you a donation as gratitude for your help.

    Have a great day.

  • Sam

    I’m thinking of using your premium plugin but have a couple of questions;

    1) Are you using custom form entry code or a plugin like Contact Form 7 ? I want to style the form I use.

    2) I want to create my own slider so would code a template using the standard wp loop structure with the plugins CPT - is that be possible? Do you have a list of the CPT’s custom field names?

    3) I want to be able to tag specific testimonials as ‘featured’, and be able to display only these - is that possible?

    Looking forward to your reply

    • Sam,

      1. You can customize the form via the API and CSS. Read the FAQ for entries on same.

      2. You can use the API to swap out the slider code, but why as bxSlider is being used. One of the best and most flexible sliders there is.

      2.1. The CPT is `testimonials-widget`.

      3. Yes, read the features and examples above.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>