MyListing Reviews and Comments Addon
The {CODICTS} MyListing Reviews and Comments Addon plugin extends MyListing’s built-in reviews and comments system with powerful additional features. Place review forms and comment lists anywhere on listing pages using shortcodes, let users upload multiple images with their reviews, add custom numeric review categories alongside star ratings, display review averages on listing headers and preview cards, customize star icons, and showcase reviews across your site with an Elementor widget.
Installation & Activation
Start by downloading the plugin from the Downloads page on your dashboard on the CoDicts website.
After downloading, install and activate the plugin in WordPress by navigating to “Plugins” > “Add New” > “Upload Plugin” and selecting the downloaded zip file. Click “Install Now” and then “Activate”.
On activation, the plugin automatically copies its template files into your child theme. Navigate to the new Reviews and Comments Addon menu in the WordPress admin sidebar to configure settings.
Key Features
| Feature | Description |
|---|---|
| Shortcode-Based Placement | Place the comment form and comment list anywhere on the listing page using shortcodes — independent of the default tab layout. |
| Multi-Image Review Uploads | Users can upload multiple images per review with live thumbnail previews and individual removal before submitting. |
| Custom Star Icons | Replace the default star icons with any icon class (Font Awesome, Material Icons, etc.) site-wide. |
| Custom Number Review Types | Add numeric review categories with no upper limit alongside traditional star ratings — ideal for scores like “Food: 85” or “Service: 92.” |
| Header Display | Show custom number review averages directly in the listing page header. |
| Summary Shortcode | Display selected review averages as visual number indicators on listing pages or preview cards. |
| Color Indicators | Configurable color thresholds for number review displays (e.g., grey → yellow → green). |
| Elementor Reviews Feed Widget | Display a grid or carousel of reviews from across your site using an Elementor widget. |
| Hide Review Tab | Optionally hide the default review tab on listing pages when using shortcode placement instead. |
How It Works
The plugin extends MyListing’s existing review system — all original MyListing review features remain intact, with additional capabilities layered on top.
Review Submission Flow
1. A user visits a listing page with reviews enabled and fills in the review form — star ratings for standard categories, number inputs for custom numeric categories, review text, and optional image uploads.
2. When submitted, the plugin processes both star ratings and number ratings, uploads gallery images, and calculates averages.
3. The review is displayed using an enhanced comment walker that shows star ratings, number ratings, gallery images, and threaded replies.
4. The listing’s overall averages (both star and number) are automatically updated and can be displayed on the listing header, in preview cards, or via shortcodes.
Note: Averages are automatically recalculated whenever reviews are submitted, updated, deleted, or when their approval status changes (e.g., pending → approved, approved → spam).
Admin Settings
Navigate to Reviews and Comments Addon in the WordPress admin sidebar.
Hide Review Tab
| Setting | Description |
|---|---|
| Hide Review Tab on Listing Page | When enabled, hides the default review tab toggle button on single listing pages. The review/comment module can still be placed anywhere using shortcodes. |
Tip: Enable this when you’re using the comment form and comment list shortcodes to place reviews in a custom location on the listing page, so the default tab doesn’t appear as a duplicate.
Custom Star Icons
Change the star rating icons used across the entire site by entering icon class names:
| Setting | Default | Description |
|---|---|---|
| Full Star Icon | mi star | Icon class for a fully filled star. |
| Half Star Icon | mi star_half | Icon class for a half-filled star. |
| Blank Star Icon | mi star_border | Icon class for an empty/unfilled star. |
Examples of supported icon libraries:
| Library | Full | Half | Empty |
|---|---|---|---|
| Material Icons (default) | mi star | mi star_half | mi star_border |
| Font Awesome | fa fa-star | fa fa-star-half-alt | fa fa-star-o |
Note: The icon library must already be loaded on your site. MyListing includes Material Icons by default. If using Font Awesome, ensure it’s enqueued by your theme or a plugin.
Custom Number Review Types
One of the most powerful features is the ability to add custom numeric review categories alongside traditional star ratings. Unlike star ratings which cap at 5 or 10, number ratings accept any positive value — ideal for scores like “Food: 85,” “Service: 92,” or “Value: 78.”
Configuring Number Reviews
1. Go to Listing Types in the MyListing admin and edit a listing type.
2. Navigate to Settings → Reviews.
3. Click on a review rating category row to expand it.
4. The plugin adds a Type dropdown with two options:
| Type | Description |
|---|---|
| Stars (default) | Standard star rating (1–5 or 1–10 depending on your MyListing rating mode). |
| Numbers | Free-form numeric input with no upper limit. Users enter a number instead of selecting stars. |
5. When you select “Numbers,” additional options appear:
| Option | Description |
|---|---|
| Preview Card Tag / Shortcode | Shows the shortcode to display this specific rating’s average on preview cards or listing pages. |
| Display on Header | When enabled, the average value for this category is shown in the listing page header alongside the standard star rating. |
| Display on Summary Shortcode | When enabled, this category is included when the reviews summary shortcode is used. |
6. Save the listing type.
Color Indicators for Number Reviews
When number review averages are displayed via the summary shortcode, you can define color thresholds that visually indicate rating quality. Add this JavaScript to your site (e.g., via a custom code plugin or your child theme):
let codicts_reviews_color_indicators = {
0 : 'grey', // 0 and above → grey border
40 : 'yellow', // 40 and above → yellow border
80 : 'green' // 80 and above → green border
};
You can add as many threshold/color pairs as needed:
let codicts_reviews_color_indicators = {
0 : 'grey',
20 : 'red',
40 : 'orange',
60 : 'yellow',
80 : 'green'
};
The plugin finds the closest threshold below the actual value and applies that color as a border on the number indicator element.
Shortcodes
Reviews Summary
[codicts-reviews-comments-addon]
Displays a summary of all custom number review types that have “Display on Summary Shortcode” enabled. Shows each category with its computed average as a visual number indicator. Automatically detects the current listing’s type and retrieves averages. Can be placed on listing pages or in preview card templates using the [[:id]] dynamic tag.
Individual Review Field
[codicts-reviews-comments-addon field_key="{key}" listing_id=[[:id]]]
| Attribute | Required | Description |
|---|---|---|
| field_key | Yes | The key/ID of the review category (set in the listing type editor). |
| listing_id | No | The listing post ID. Use [[:id]] for dynamic resolution on preview cards. Defaults to the current post if omitted. |
Displays the computed average value of a single custom number review category. Returns just the numeric average — useful for displaying individual scores on preview cards or in listing page blocks.
Comment Form
[codicts-reviews-comments-addon commentbox-form]
Renders a standalone review/comment submission form that can be placed anywhere on the listing page. Includes star rating fields, number rating fields, image gallery upload with live preview, guest fields (name, email), and update functionality if the user has already reviewed. Must be placed on a page where a single listing is being viewed.
Comment List
[codicts-reviews-comments-addon commentbox-list]
Renders the list of approved comments/reviews for the current listing. Includes threaded replies, pagination with “Load more,” star and number ratings displayed per review, gallery images, and empty state messaging. Must be placed on a page where a single listing is being viewed.
Tip: Use the comment form and comment list shortcodes together with the “Hide Review Tab” setting to completely relocate the reviews module from the default tab to a custom location on the listing page.
Review Image Uploads
Users can upload multiple images with their reviews:
1. When writing a review, the user clicks the image upload field and selects one or multiple images.
2. Selected images appear as thumbnail previews before submission. Individual images can be removed from the preview.
3. On submission, images are uploaded to the WordPress Media Library and linked to the review.
4. Gallery images are displayed within the review alongside the comment text and ratings.
5. When a review is deleted, all associated gallery images are permanently removed from the Media Library.
Note: Only image file types are accepted. The maximum upload size is determined by your server’s PHP configuration (
upload_max_filesizeandpost_max_size).
Elementor Reviews Feed Widget
The plugin registers an Elementor widget called {CODICTS} > Reviews Feed that displays reviews from across your site in a grid or carousel layout.
Widget Controls
| Control | Default | Description |
|---|---|---|
| Template | Grid | Layout: Grid or Carousel. |
| Carousel Autoplay | No | Enable autoplay for carousel mode. |
| Number of items to show | 6 | Maximum total reviews to display. |
| Filter by Listing Type(s) | (all) | Filter reviews to specific listing types. |
| Select a list of listings | (none) | Manually specify listing IDs to pull reviews from. |
| Number of reviews per listing | 1 | Maximum reviews fetched per individual listing. |
| Order by | Date | Options: Date, Included order, Rating, Random, Last modified. |
| Order | DESC | Ascending or Descending. |
| Invert nav color | No | Light navigation arrows for dark backgrounds (carousel only). |
| Cache results for | 720 minutes | Cache duration in minutes. Set to 0 to disable caching. |
| Column count | 3 / 3 / 2 / 1 | Responsive columns for large / medium / small / extra-small screens. |
Grid vs Carousel
| Grid | Carousel |
|---|---|
| Responsive multi-column grid layout. | Horizontal slider with navigation arrows. |
| All reviews visible at once (within configured count). | Slides through reviews with Previous/Next navigation. |
| No navigation arrows. | Optional autoplay with smooth transitions. |
Each review card in both layouts shows the listing preview card, commenter avatar, name, date, star rating, and review text. Long reviews (over 160 characters) include a “Read more” / “Less” toggle.
Caching
The widget caches results for 12 hours by default to improve performance. Cache is automatically cleared when editing the page in Elementor. Set the cache to 0 to disable caching, or reduce the duration if reviews change frequently.
Admin Review Management
When editing a comment/review in the WordPress admin that belongs to a listing:
A Listing Review meta box appears showing the current rating average and each review category. Star categories show a dropdown selector, while number categories show a text input. You can also manage gallery images (add or remove). Changes are saved with full average recalculation.
Example Setup
1. Activate the plugin with the MyListing theme and a child theme active. Template files are automatically copied.
2. Navigate to Reviews and Comments Addon settings. Optionally check “Hide Review Tab on Listing Page” if you plan to use shortcodes for placement instead.
3. Edit a listing type (e.g., “Restaurants”). Go to Settings → Reviews.
4. You’ll see existing review categories like “Food,” “Service,” and “Ambiance.” Click on a category to expand it.
5. For “Food” and “Service,” change the Type dropdown to Numbers. Enable Display on Header and Display on Summary Shortcode for both. Leave “Ambiance” as Stars.
6. Save the listing type.
7. On the listing type’s Single Page tab, add a block containing the comment form shortcode: [codicts-reviews-comments-addon commentbox-form]. Add another block below with the comment list shortcode: [codicts-reviews-comments-addon commentbox-list].
8. On the listing type’s Preview Card template, add the summary shortcode: [codicts-reviews-comments-addon] to display number averages on explore page cards. Or use an individual field shortcode like [codicts-reviews-comments-addon field_key="food" listing_id=[[:id]]] to show just the Food score.
9. Save the listing type.
10. Now when a user reviews a restaurant, they rate “Food” and “Service” with numbers (e.g., 85 and 92) and “Ambiance” with stars. The listing header shows the number averages for Food and Service, preview cards on the explore page show summary indicators, and the review form and list appear wherever you placed the shortcodes.
11. To showcase reviews site-wide, add the {CODICTS} > Reviews Feed Elementor widget to a page. Set it to Grid layout, filter by “Restaurants” listing type, show 6 reviews, and order by Rating descending to highlight your best reviews.
Frequently Asked Questions
Does this require a child theme?
Yes. The plugin copies several template files into the child theme to extend MyListing’s review system. Without a child theme, the plugin cannot install its templates.
Is there a settings page?
Yes. Navigate to Reviews and Comments Addon in the WordPress admin sidebar to configure the Hide Review Tab option and custom star icons. Custom number review types are configured within each listing type’s Settings → Reviews section.
Does this replace MyListing’s review system?
No. It extends it. All original MyListing review features remain intact. The plugin adds number review types, multi-image uploads, relocatable shortcodes, custom star icons, and the Elementor widget on top of the existing system.
What’s the difference between Stars and Numbers review types?
Stars are the standard MyListing rating (1–5 or 1–10) displayed as star icons. Numbers are free-form numeric inputs with no upper limit — users type a number instead of selecting stars. Numbers are ideal for scores where the scale exceeds 10.
Can I show number review averages on preview cards?
Yes. Use the summary shortcode [codicts-reviews-comments-addon] to show all enabled number averages, or the individual field shortcode [codicts-reviews-comments-addon field_key="{key}" listing_id=[[:id]]] to show a single category’s average.
Can I place the review form and comment list anywhere on the listing page?
Yes. Use [codicts-reviews-comments-addon commentbox-form] for the form and [codicts-reviews-comments-addon commentbox-list] for the list. Place them in MyListing blocks or Elementor widgets. Enable “Hide Review Tab” in settings to hide the default tab location.
Can users upload images with their reviews?
Yes. The review form includes a multi-image upload field with live thumbnail previews. Users can remove individual images before submitting. Only image file types are accepted.
How do color indicators work for number reviews?
Define a JavaScript variable codicts_reviews_color_indicators with threshold/color pairs. The plugin applies the color of the closest threshold below the actual value as a border on the number indicator element. See the Color Indicators section above for examples.
Does the Elementor widget require Elementor?
Yes. The Reviews Feed widget is an Elementor widget and requires Elementor to be installed. Elementor is typically bundled with the MyListing theme.
How does caching work on the Reviews Feed widget?
Results are cached for 12 hours (720 minutes) by default. Cache is automatically cleared when editing the page in Elementor. Set the cache to 0 in widget settings to disable caching.
Can administrators edit reviews in the WordPress admin?
Yes. When editing a comment/review in the admin, a Listing Review meta box appears with dropdowns for star categories, text inputs for number categories, and gallery management. Changes trigger full average recalculation.
Does the plugin create any database tables?
No. All data is stored using WordPress post meta (for listing averages), comment meta (for individual review ratings and galleries), and the options table (for plugin settings). No custom database tables are created.
Troubleshooting
Reviews Not Showing
| Cause | Solution |
|---|---|
| Reviews not enabled | Ensure reviews/ratings are enabled in the listing type settings under Settings → Reviews. |
| Comments closed on listing | Check that comments are open on the listing post. Edit the listing and ensure “Allow Comments” is enabled. |
| Template files missing | Deactivate and reactivate the plugin to re-copy template files. Verify comments.php and includes/extensions/reviews/reviews.php exist in your child theme. |
| Plugin not activated | Go to Plugins → Installed Plugins and verify the plugin is active. |
Custom Number Reviews Not Working
| Cause | Solution |
|---|---|
| Type not set to Numbers | Edit the listing type → Settings → Reviews. Click on the review category row to expand it and change the Type dropdown to “Numbers.” |
| Listing type not saved | After changing the type, save the listing type. |
| Category key conflict | Ensure the category key is unique and doesn’t conflict with other categories. |
Star Icons Not Changing
| Cause | Solution |
|---|---|
| Wrong icon class | Enter the full icon class (e.g., fa fa-star for Font Awesome, not just star). |
| Icon library not loaded | Ensure the icon library (Font Awesome, etc.) is enqueued on your site. MyListing includes Material Icons by default. |
| Caching | Clear page cache after changing icon settings. |
Gallery Images Not Uploading
| Cause | Solution |
|---|---|
| Server upload limit | Check your PHP configuration’s upload_max_filesize and post_max_size. Increase them if needed. |
| Non-image file type | Only image file types are accepted. Other file types are silently skipped. |
| Gallery feature not enabled | Ensure the review gallery feature is enabled in the listing type settings. |
Shortcodes Not Rendering
| Cause | Solution |
|---|---|
| Wrong syntax | Use exact syntax with hyphens: [codicts-reviews-comments-addon]. Check for typos. |
| Wrong field_key | For individual field shortcodes, the field_key must exactly match the category key set in the listing type editor. |
| Not on a single listing page | The commentbox-form and commentbox-list shortcodes must be placed on a page where a single listing is being viewed. |
Elementor Reviews Feed Widget Not Appearing
| Cause | Solution |
|---|---|
| Elementor not installed | The widget requires Elementor to be installed and active. |
| Can’t find widget | Search for “{CODICTS}” in the Elementor widget panel. |
| No reviews to display | If no reviews exist for the selected listings or types, the widget renders nothing. Add some reviews first. |
| Stale data showing | The widget caches results for 12 hours by default. Set Cache results for to 0 to disable caching, or edit the page in Elementor to clear the cache. |
Template Overwrite Warning
The following template files in your child theme are managed by this plugin and may be overwritten on reactivation:
comments.php
includes/extensions/reviews/reviews.php
includes/extensions/reviews/reviews-admin.php
includes/extensions/reviews/walker.php
partials/star-ratings.php
If you’ve customized these files, back up your changes before deactivating/reactivating the plugin.
“MyListing Theme Not Detected” or “Child Theme Not Detected” Error
The MyListing theme and a child theme must both be installed and active. Go to Appearance → Themes to verify.
For further support, visit codicts.com or contact us at support@codicts.com.