The Best WordPress Testimonials Plugin – Testimonials Premium

Testimonials Widget Premium - WordPress's Best Testimonials Plugin
Add to Cart

Testimonials Premium extends Testimonials by Aihrus with caching, excerpts, more options, ratings, read more links, shortcodes, and user entry.

Testimonials Premium

Testimonials Premium extends Testimonials by Aihrus with caching, excerpts, more options, ratings, read more links, shortcodes, and user entry.

Contributors: comprock
Donate link:
Tags: client, customer, portfolio, quotations, quote, quotes, random, recommendation, ratings, reference, review, reviews, testimonial, testimonials, testimony, wpml
Requires at least: 3.6
Tested up to: 3.9.0
Stable tag: 1.20.4
License: GPLv2 or later (


Testimonials Premium adds onto the best WordPress testimonials plugin there is, Testimonials. 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.

Video introduction

View a Live Testimonials Demo

The WordPress testimonials plugin, Testimonials lets you randomly slide or list selected portfolios, quotes, reviews, or text with images or videos on your WordPress site.

User submitted testimonials are marked as “Pending” in WordPress Admin > Testimonials listing.

Primary Premium Features

  • Akismet, math-based CAPTCHA, and more anti-spam traps
  • Alternate destinations for “Read more” links
  • Auto rotate testimonials by page
  • CSS or HTML table based testimonials submissions form layout
  • Caching of testimonials queries and content to decrease server load time improve page loading speed by 1/10 to 1/2 a second
  • Carousel mode for rotating multiple testimonials at the same time
  • Displays ratings to grant testimonials more power!
  • Excerpts for widget view, with read more link to complete testimonial
  • Front-end entry form for user supplied testimonials. Live form demo
  • Select only testimonials with excerpts, images or of arbitrary maximum and minimum length
  • Show unique testimonials when displaying multiple testimonial instances

Premium Shortcodes

  • Count of testimonials [testimonials_count]
  • List of testimonial source and title linking to full entry [testimonials_links]
  • Testimonials entry form [testimonials_form]

Premium Theme Functions

  • <?php echo testimonials_count( $args ); ?>
  • <?php echo testimonials_form( $args ); ?>
  • <?php echo testimonials_links( $args ); ?>

Additional Features

  • “Read more” link column on testimonial posts admin page
  • Admin mode only anti-spam debug help text
  • Alternating .even and .odd CSS classes for styling testimonial list entries
  • 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
  • Default post author, category, and status options for user testimonial submissions
  • Deletes old and related testimonial cache entries automatically
  • Disable caching for widget, shortcode or theme functions
  • Disable donate and purchase related text and links
  • 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
  • Form “Testimonial” header text is customizable to “Specials” or other terms
  • Multiple user-entry forms on same page are allowed
  • On testimonial submission error, focus on first required field
  • Override Review schema author name
  • 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
  • Review microdata format per
  • Right Now Dashboard widget displays “Pending Testimonials” counts
  • Select post, page and other custom post types for content rotations slider
  • Settings and URL based cache clearing
  • 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)
  • Testimonial links listing with image, source, title, location, company, and URL fields
  • Upload images by browsing or URL
  • WordPress Admin > Testimonials > Clear Cache menu link
  • WPML compatible

Shortcode Examples


  • [testimonials_slider carousel_count=2 transition_mode=vertical slide_margin=50] - 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=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 show_controls=true] - Display rotating testimonials with link to next testimonial
  • [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 unique=true] - Prevent showing previously selected testimonials on a page


  • [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 char_limit=250] – Display a list of all testimonials with a character limit for each testimonial and with a link to access to the full testimonial page.

Shortcode and Widget Options

  • License Key – Required to enable premium plugin updating. Activation is automatic. Use 0 to deactivate.
  • 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
  • Link Image? – If checked, wraps image in link to testimonial
    • link_image - default true; link_image=false
  • Default Rating? – Default new testimonial rating
    • default_rating - default 5; default_rating=4
  • Hide Ratings? – Don’t show ratings in testimonial views.
    • hide_ratings - default show; hide_ratings=true
  • 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 “Read more” Links? – Don’t show “Read more” links on testimonials exceeding the character limit
    • hide_read_more - default show; hide_read_more=true
  • Force “Read more” Links?
    • force_read_more - default false; force_read_more=true
  • Add nofollow to “Read more” Links?
    • nofollow_read_more - default false; nofollow_read_more=true
  • 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
  • Prevent Duplicates? – Prevent allowing duplicate testimonials from showing on a page. Requires caching to be enabled.
    • unique - default false; unique=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
  • 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
  • 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
  • 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

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 Options

  • 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
  • Form Header – Leave blank for default “Add a Testimonial” or “Edit Testimonial” headings.
    • form_header – default none; form_header=”Why do you love us?”
  • Hide Form Header?
    • hide_form_header – default false; hide_form_header=true
  • Hide Ratings?
    • hide_meta_rating – default false; hide_meta_rating=true
  • Hide Excerpt Field?
    • hide_post_excerpt – default false; hide_post_excerpt=true
  • Hide Job Title Field?
    • hide_meta_title – default false; hide_meta_title=true
  • Hide Location Field?
    • hide_meta_location – default false; hide_meta_location=true
  • Hide Email Field?
    • hide_meta_email – default false; hide_meta_email=true
  • Hide Company Field?
    • hide_meta_company – default false; hide_meta_company=true
  • Hide URL Field?
    • hide_meta_url – default false; hide_meta_url=true
  • Hide “Read More Link” Field?
    • hide_meta_read_more_link – default true; hide_meta_read_more_link=false
  • Hide Tags Field?
    • 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_featured_image_url – default false; hide_featured_image_url=true
  • Disallow Edit After Submission?
    • disallow_edit – default false; disallow_edit=true
  • Send Mail Notification? – Send admin notice of testimonial submission
  • 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.
  • 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 Activatation

  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. Add and manage testimonials through the “Testimonials” menu in the WordPress admin area
  3. To display testimonials in the sidebar, go to “Widgets” menu and drag “Testimonials” widget into the desired widget area
  4. Configure “Testimonials” to select quotes and display as needed
  5. Use the [testimonials] or [testimonials_slider] shortcodes to display testimonials on a page or in a post
  6. 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. Testimonials Knowledge Base - read and comment upon 125+ frequently asked questions
  2. Open Testimonials Issues - review and submit bug reports and enhancement requests
  3. Testimonials Support on WordPress - review responses, but do NOT ask questions as premium support via WordPress forums is forbidden
  4. E-mail for personalized assistance
  5. Contribute Code to Testimonials - request access
  6. Beta Testers Needed - get the latest Testimonials Premium version


  1. Single [testimonials] entry with and without “Read more” link
  2. Widget with “Read more” and “Next testimonial…” links
  3. Widget with Premium Options
  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. [testimonials_slider unique=true] Show multiple testimonials in rotation
  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
  18. Dashboard > Right Now “Pending Testimonials” count
  19. Removed donation and premium plugin purchase links
  20. Clear Cache page results
  21. Admin Antispam Debug Help Text
  22. Using Review and AggregateRating schema data structures


See Changelog

Upgrade Notice

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
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-widg
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 usin
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_testimonia
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 Premium Shortcodes

  • Count of testimonials [testimonialswidgetpremium_count]
  • List of testimonial source and title linking to full entry [testimonialswidgetpremium_link_list]
  • Testimonials entry form [testimonialswidgetpremium_form]

Deprecated Premium Theme Functions

  • <?php echo testimonialswidgetpremium_count( $args ); ?>
  • <?php echo testimonialswidgetpremium_form( $args ); ?>
  • <?php echo testimonialswidgetpremium_link_list( $args ); ?>


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

Add to Cart