{CODICTS} Snippets is now available

MyListing Statsify

The {CODICTS} MyListing Statsify plugin provides a single, flexible shortcode — [statsify] — that displays a wide variety of listing and site-wide statistics anywhere shortcodes are supported. Show bookmarks, views, reviews, star ratings, listing counts, user counts, button click tracking, expiration dates, package information, and more.

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”.

Once activated, the [statsify] shortcode is immediately available. No settings page is needed — everything is controlled through shortcode attributes.


Key Features

FeatureDescription
Bookmarks CountDisplay how many users have bookmarked a listing.
Views CountDisplay the unique view count for a listing.
Reviews CountDisplay the number of approved reviews for a listing, or total reviews site-wide.
Star RatingsDisplay average star ratings per review category with visual star icons (★★★☆☆).
Listing CountDisplay the total number of published listings, with optional filters by listing type, category, and region.
User CountDisplay the total number of registered users, with optional role filtering.
User Registration DateDisplay when a specific user registered, in a customizable date format.
Button Click TrackingDisplay click stats for a listing’s action buttons using MyListing’s built-in tracking.
Expiration DateDisplay a listing’s expiration date.
Package InfoDisplay the name, image, or description of a listing’s WooCommerce package.
Summary ViewCombine bookmarks, views, and reviews into a single output.
Preview Card CompatibleWorks inside MyListing preview cards using the [[:id]] dynamic tag.

How to Use

Place the [statsify] shortcode anywhere shortcodes are supported — pages, posts, Elementor widgets, MyListing preview cards, text widgets, and more. Control what it displays using the type attribute.

Global Attributes

These attributes are available on all shortcode types:

AttributeDefaultDescription
typeemptyThe statistic type to display. When empty, shows a summary of bookmarks + views + reviews.
idCurrent postThe listing ID to pull stats for. If omitted, uses the current page’s listing.
with_titlefalseShow a text label alongside the stat (e.g., “Bookmarks”, “Views”).
with_icontrueShow an icon next to the stat.
remove_tagsfalseOutput the raw value without any wrapping HTML. Useful for conditional logic or use inside other shortcodes.
classemptyAdditional CSS class(es) added to the wrapper element.

Shortcode Types

Summary (No Type)

[statsify]

When no type is specified, the shortcode displays a combined summary of bookmarks, views, and reviews for the listing, each with its label shown.

Bookmarks

[statsify type="bookmarks"]
[statsify type="bookmarks" id="123"]

Displays the number of users who have bookmarked the listing. Shows a heart icon by default.

Views

[statsify type="views"]
[statsify type="views" id="123"]

Displays the unique view count for the listing. Shows an eye icon by default.

Reviews

[statsify type="reviews"]
[statsify type="reviews" id="123"]

Displays the number of approved reviews for a specific listing. Shows a star icon by default.

Total Reviews (Site-Wide)

[statsify type="total-reviews"]

Displays the total review count across all listings site-wide. The id attribute is ignored for this type.

Listing Count

[statsify type="listing-count"]

[statsify type=”listing-count” listing_type=”Hotels”]

[statsify type=”listing-count” listing_type=”Restaurants” category=”italian” region=”new-york”]

Displays the total number of published listings. You can filter by listing type, category, and/or region:

Filter AttributeDescription
listing_typeFilter by MyListing listing type title (e.g., "Restaurants", "Hotels").
categoryFilter by category slug (e.g., "italian", "luxury").
regionFilter by region slug (e.g., "new-york", "london").

All filters are optional and can be combined. Without any filters, it shows the total count of all published listings.

User Count

[statsify type="user-count"]
[statsify type="user-count" role="customer"]

Displays the total number of registered users. Optionally filter by WordPress user role using the role attribute (e.g., "subscriber", "customer", "administrator").

User Registration Date

[statsify type="user-registered-date" user_id="42"]
[statsify type="user-registered-date" user_id="42" date_format="d M Y"]

Displays when a specific user registered.

AttributeDefaultDescription
user_idRequiredThe WordPress user ID to look up.
date_formatd F YPHP date format string. For example, "d F Y" outputs “19 February 2026”, "d M Y" outputs “19 Feb 2026”.

Button Clicks

[statsify type="button-clicks"]
[statsify type="button-clicks" id="123"]

Displays click tracking data for the listing’s action buttons, using MyListing’s built-in tracking system. Each tracked button is shown with its name and click count.

Star Ratings

[statsify type="stars"]
[statsify type="stars" id="123" key="service" display_review_count="true" with_title="true"]

Displays average star ratings as visual star icons (★★★★☆). By default, shows ratings for all review categories.

AttributeDefaultDescription
keyempty (all)Filter to a specific review category by its key. When empty, all review categories are displayed.
display_review_countfalseWhen "true", appends the total review count in parentheses next to the stars, e.g., ★★★★☆ (12).
with_titlefalseWhen "true", shows the review category label (e.g., “Service”, “Value”).

Ratings are calculated by averaging all approved review scores, normalized to a 5-star scale, and rounded to the nearest half star. Stars are rendered as full (★), half (★½), or empty (☆) icons.

Expiration Date

[statsify type="expiration"]
[statsify type="expiration" id="123"]

Displays the listing’s expiration date, formatted using your site’s date format setting. Returns nothing if no expiration date is set.

Listing Package Name

[statsify type="listing-package"]
[statsify type="listing-package" id="123"]

Displays the name of the WooCommerce product (listing package) associated with the listing. Requires WooCommerce.

Listing Package Image

[statsify type="listing-package-image"]
[statsify type="listing-package-image" id="123"]

Displays the featured image of the listing’s WooCommerce package. Returns nothing if the package has no featured image. Requires WooCommerce.

Listing Package Description

[statsify type="listing-package-description"]
[statsify type="listing-package-description" id="123"]

Displays the full description of the listing’s WooCommerce package. Requires WooCommerce.


Using in MyListing Preview Cards

The shortcode works inside MyListing’s preview card builder. Use the [[:id]] dynamic tag to pass the current listing’s ID automatically:

[statsify type="bookmarks" id=[[:id]]]
[statsify type="views" id=[[:id]]]
[statsify type="reviews" id=[[:id]]]
[statsify type="stars" id=[[:id]] display_review_count="true"]

For clean numeric output without any HTML wrapper (useful inside conditional logic or other shortcodes):

[statsify type="views" id=[[:id]] remove_tags="true"]

Display Options

You can control how each stat is displayed using the global attributes:

Show with label and icon (default):

[statsify type="views"]

Show with label, no icon:

[statsify type="views" with_title="true" with_icon="false"]

Show icon only, no label:

[statsify type="views" with_icon="true" with_title="false"]

Raw number only (no HTML):

[statsify type="views" remove_tags="true"]

Add a custom CSS class:

[statsify type="bookmarks" class="my-custom-class"]

CSS Customization

The plugin includes its own stylesheet. You can override styles in your child theme’s CSS or via Appearance → Customize → Additional CSS:

/* Change the icon background color on single listing pages */
.single-listing .statsify-icon {
    background: #e0f0ff;
    color: #0066cc;
}

/* Hide icons globally */
.statsify-icon {
    display: none !important;
}

/* Adjust the star ratings layout */
.statsify-stat.c-list-stars {
    gap: 5px;
}

Quick Reference

# Full summary (bookmarks + views + reviews)

[statsify]

# Individual listing stats

[statsify type=”bookmarks”]

[statsify type=”views”]

[statsify type=”reviews”]

[statsify type=”stars”]

[statsify type=”button-clicks”]

[statsify type=”expiration”] # Site-wide stats

[statsify type=”total-reviews”]

[statsify type=”listing-count”]

[statsify type=”listing-count” listing_type=”Hotels” category=”luxury” region=”miami”]

[statsify type=”user-count”]

[statsify type=”user-count” role=”customer”]

[statsify type=”user-registered-date” user_id=”1″ date_format=”d M Y”] # Listing package info (requires WooCommerce)

[statsify type=”listing-package”]

[statsify type=”listing-package-image”]

[statsify type=”listing-package-description”]

# Star ratings with options

[statsify type=”stars” key=”service” display_review_count=”true” with_title=”true”]

# Display options

[statsify type=”views” with_title=”true” with_icon=”false”]

[statsify type=”reviews” remove_tags=”true”]

[statsify type=”bookmarks” class=”my-custom-class”]

# Preview card usage [statsify type=”views” id=[[:id]]] [statsify type=”stars” id=[[:id]] display_review_count=”true”]


Frequently Asked Questions

Is there a settings page?

No. The plugin has no settings page — everything is controlled through shortcode attributes. Just place the shortcode wherever you need stats displayed.

Can I use it outside of listing pages?

Yes. Use the id attribute to specify a listing ID for listing-specific stats. Site-wide stats like listing-count, user-count, total-reviews, and user-registered-date work anywhere without an id.

Can I show multiple stats on one page?

Yes. Use the shortcode multiple times with different type values. The plugin uses in-memory caching so repeated queries for the same data within a single page load only hit the database once.

What does the summary (no type) show?

When you use [statsify] without a type attribute, it shows bookmarks, views, and reviews together in a combined output, each with its label displayed.

Can I filter listing counts by multiple criteria?

Yes. The listing-count type supports combining listing_type, category, and region filters. For example, [statsify type="listing-count" listing_type="Restaurants" category="italian" region="new-york"] shows only Italian restaurants in New York.

How are star ratings calculated?

Ratings are averaged across all approved reviews for each review category, normalized to a 5-star scale, and rounded to the nearest half star. Full, half, and empty star icons are rendered visually.

Does it work with MyListing preview cards?

Yes. Use [[:id]] in place of the id attribute to automatically pass the current listing’s ID in the preview card builder.

What does remove_tags do?

Setting remove_tags="true" outputs just the raw number or value without any wrapping HTML, icons, or labels. This is useful when you need the value inside conditional logic, calculations, or other shortcodes.

Do the package shortcode types require WooCommerce?

Yes. The listing-package, listing-package-image, and listing-package-description types require WooCommerce to be active, since listing packages are WooCommerce products.


Troubleshooting

Shortcode Showing as Plain Text

CauseSolution
Plugin not activatedVerify the plugin is active in Plugins → Installed Plugins.
MyListing not activeThe shortcode only registers when MyListing is detected. Install and activate the MyListing theme.

Stats Showing 0 or Empty

CauseSolution
Wrong listing IDIf using the id attribute, verify the ID is correct. If omitting id, make sure you’re on a page where a listing is the current post.
No data existsThe listing may genuinely have 0 bookmarks, views, or reviews. Verify by checking the listing in the admin.
Wrong listing_type valueThe listing_type attribute for listing-count uses the listing type title (e.g., “Restaurants”), not the slug.
Missing user_idThe user-registered-date type requires the user_id attribute. It returns empty if omitted.

Package Info Not Displaying

CauseSolution
WooCommerce not activeThe listing-package, listing-package-image, and listing-package-description types require WooCommerce.
No package assignedThe listing may not have a WooCommerce package assigned. Check the listing’s _package_id meta value.
Package has no imageFor listing-package-image, the WooCommerce product must have a featured image set.

Star Ratings Not Showing

CauseSolution
No approved reviewsStar ratings are calculated from approved reviews. The listing needs at least one approved review with ratings.
Wrong key valueIf using the key attribute to filter a specific review category, ensure the key matches the review category’s ID exactly.

“MyListing Theme Not Detected” Error

The MyListing theme must be installed and active. Go to Appearance → Themes to verify.


For further support, visit codicts.com or contact us at support@codicts.com.

CoDicts Co., Ltd. © 2021-2026. All rights reserved