{"id":352068,"date":"2026-08-31T17:17:53","date_gmt":"2026-08-31T17:17:53","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/trustfusion-google-reviews\/"},"modified":"2026-10-18T00:45:44","modified_gmt":"2026-10-18T00:45:44","slug":"trustfusion","status":"publish","type":"plugin","link":"https:\/\/ml.wordpress.org\/plugins\/trustfusion\/","author":14731359,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.1.2","stable_tag":"2.1.2","tested":"7.1.3","requires":"5.6","requires_php":"7.4","requires_plugins":null,"header_name":"TrustFusion \u2014 Show Reviews from Google Business Profile","header_author":"Forkan Hossain","header_description":"Display your Google Business Profile reviews per location on your WordPress site via the TrustFusion relay \u2014 no API key needed. Syncs server-side and renders via shortcode.","assets_banners_color":"434d69","last_updated":"2026-10-18 00:45:44","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/wise.com\/pay\/me\/mdforkanh","header_plugin_uri":"https:\/\/reviews.webcitylab.com","header_author_uri":"https:\/\/github.com\/forkanhossain","rating":0,"author_block_rating":0,"active_installs":10,"downloads":419,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.0.6":{"tag":"2.0.6","author":"forkanhossain","date":"2026-08-31 17:17:22","revision":3674703},"2.0.9":{"tag":"2.0.9","author":"forkanhossain","date":"2026-10-12 11:43:32","revision":3741372},"2.1.0":{"tag":"2.1.0","author":"forkanhossain","date":"2026-10-16 11:40:23","revision":3750328},"2.1.1":{"tag":"2.1.1","author":"forkanhossain","date":"2026-10-17 12:07:19","revision":3751880},"2.1.2":{"tag":"2.1.2","author":"forkanhossain","date":"2026-10-18 00:45:44","revision":3752446}},"upgrade_notice":{"2.1.2":"<p>Adds a Powered by Google toggle, linked company and reviewer names, consistent orange stars and dots, tighter card spacing and better tablet and phone layouts. Reviewer profile links appear after the next review sync.<\/p>","2.1.1":"<p>Adds options to show or hide the address and buttons, and fixes review card alignment, cropped logos and blank carousel pages. No settings changes required.<\/p>","2.1.0":"<p>Adds the Carousel \u2013 Inline layout, scrollable Grid\/List layouts, a shortcode builder, per-business logos and drag\/swipe carousels. No settings changes required; existing shortcodes keep working.<\/p>","2.0.5":"<p>Removed the plugin&#039;s own 10-review cap on fetch\/store\/display \u2014 the relay enforces its own limit for unlicensed requests server-side. No settings changes required.<\/p>","2.0.4":"<p>Author\/Donate links updated. Manual &quot;Sync Reviews Now&quot; via the relay is now once a month (was once a day), matching automatic sync \u2014 add your own free Google API key in Settings for anytime manual sync.<\/p>","2.0.1":"<p>Manual &quot;Sync Reviews Now&quot; is now limited to once a day per business on the Free plan. No settings changes required.<\/p>","2.0.0":"<p>License key\/Pro features removed from this plugin \u2014 install TrustFusion Pro separately for unlimited reviews and official OAuth connect.<\/p>","1.2.2":"<p>Removed a non-public Google endpoint call and fixed uninstall data cleanup. No settings changes required.<\/p>","1.2.1":"<p>Code-quality and security hardening update. No settings changes required.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3674703,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3674703,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3674703,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3674703,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.0.6","2.0.9","2.1.0","2.1.1","2.1.2"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Carousel \u2013 Inline layout with business logo and scrollable review cards.","2":"Full-width Carousel layout.","3":"Grid layout.","4":"Grid \u2013 Scroll Excerpt layout.","5":"List layout.","6":"Shortcode builder on the Overview page.","7":"Connect a Google Business Profile.","8":"Overview page with the Set Logo option."}},"plugin_section":[],"plugin_tags":[238774,21827,15652,229787,1518],"plugin_category":[53,55],"plugin_contributors":[234892],"plugin_business_model":[],"class_list":["post-352068","plugin","type-plugin","status-publish","hentry","plugin_tags-google-business-profile","plugin_tags-google-reviews","plugin_tags-review-widget","plugin_tags-reviews-slider","plugin_tags-testimonials","plugin_category-ratings-and-reviews","plugin_category-seo-and-marketing","plugin_contributors-forkanhossain","plugin_committers-forkanhossain"],"banners":{"banner":"https:\/\/ps.w.org\/trustfusion\/assets\/banner-772x250.png?rev=3674703","banner_2x":"https:\/\/ps.w.org\/trustfusion\/assets\/banner-1544x500.png?rev=3674703","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/trustfusion\/assets\/icon-128x128.png?rev=3674703","icon_2x":"https:\/\/ps.w.org\/trustfusion\/assets\/icon-256x256.png?rev=3674703","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>TrustFusion is a free Google reviews plugin for WordPress.<\/strong> Connect your Google Business Profile, choose a layout, copy the shortcode, and display your Google reviews and star rating on any page. No Google API key and no coding required.<\/p>\n\n<p>Reviews are stored on your own server instead of being loaded from Google on every page view, so pages stay fast. TrustFusion also adds <strong>JSON-LD <code>AggregateRating<\/code> schema markup<\/strong> using your business's real Google rating and review count, which can help your listing qualify for star ratings in search results.<\/p>\n\n<h4>Video guide<\/h4>\n\n<p>Watch how to connect your business, choose a layout and add the shortcode to a page:<\/p>\n\n<p>https:\/\/youtu.be\/47akSQqBohU<\/p>\n\n<h4>Google review layouts<\/h4>\n\n<p>Use a different layout in every shortcode:<\/p>\n\n<ul>\n<li><strong>Grid<\/strong> \u2014 responsive review cards, with \"Read more\" on long reviews.<\/li>\n<li><strong>Grid \u2013 Scroll Excerpt<\/strong> \u2014 the same grid, with each review scrolling inside its card.<\/li>\n<li><strong>List<\/strong> \u2014 one review per row, with \"Read more\" on long reviews.<\/li>\n<li><strong>List \u2013 Scroll Excerpt<\/strong> \u2014 the same list, with scrolling review text.<\/li>\n<li><strong>Carousel<\/strong> \u2014 a full-width review slider with your business header, arrows, dots and auto-play. Drag with the mouse or swipe on touch screens.<\/li>\n<li><strong>Carousel \u2013 Inline<\/strong> \u2014 a slider with your business logo, star rating and \"review us on Google\" button on the left, and scrollable review cards on the right.<\/li>\n<\/ul>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Connect a Google Business Profile through the built-in relay, with no Google API key. You can add your own Google Maps\/Places API key for direct access.<\/li>\n<li><strong>Shortcode builder<\/strong> on the Overview page: choose a layout and the number of reviews, tick what to show, then copy the finished shortcode.<\/li>\n<li><strong>Show or hide<\/strong> the business header, rating, company address, \"View on Google\" button, \"Write a Review\" button and review date, globally in Settings or per shortcode.<\/li>\n<li><strong>Business logo<\/strong> \u2014 pick one per business from the Media Library. It falls back to your site logo, then your site icon.<\/li>\n<li><strong>Multi-location support<\/strong> \u2014 show each business separately or merge several into one review feed.<\/li>\n<li><strong>Hide or show individual reviews<\/strong> without deleting them.<\/li>\n<li><strong>Lightweight<\/strong> \u2014 CSS and JavaScript load only on pages that use the shortcode (default setting).<\/li>\n<li>Works with any theme and any editor that supports shortcodes.<\/li>\n<li>Reviews are fetched when you connect a business, when you reactivate the plugin, or when you click \"Sync Reviews Now\" (up to once a month per business). The Free plan has no background sync. <a href=\"https:\/\/reviews.webcitylab.com\/\">TrustFusion Pro<\/a> adds weekly automatic syncing and unlimited manual sync.<\/li>\n<\/ul>\n\n<h4>Shortcode examples<\/h4>\n\n<p>Default layout: <code>[trustfusion_reviews]<\/code><\/p>\n\n<p>Carousel: <code>[trustfusion_reviews id=\"1\" layout=\"carousel\" limit=\"10\"]<\/code><\/p>\n\n<p>Carousel with business logo: <code>[trustfusion_reviews id=\"1\" layout=\"carousel-inline-option-main\"]<\/code><\/p>\n\n<p>Grid or list with scrolling reviews: <code>[trustfusion_reviews id=\"1\" layout=\"grid-scroll-excerpt\"]<\/code> or <code>[trustfusion_reviews id=\"1\" layout=\"list-scroll-excerpt\"]<\/code><\/p>\n\n<p>Hide the address and the buttons: <code>[trustfusion_reviews id=\"1\" show_address=\"no\" show_view_button=\"no\" show_review_button=\"no\"]<\/code><\/p>\n\n<p>Several locations in one feed: <code>[trustfusion_reviews ids=\"1,2,3\"]<\/code><\/p>\n\n<p>Attributes: <code>id<\/code>, <code>place_id<\/code>, <code>ids<\/code>, <code>layout<\/code>, <code>limit<\/code>, <code>show_header<\/code>, <code>show_rating<\/code>, <code>show_address<\/code>, <code>show_view_button<\/code>, <code>show_review_button<\/code>, <code>show_date<\/code> (each <code>yes<\/code> or <code>no<\/code>). Layouts: <code>grid<\/code>, <code>grid-scroll-excerpt<\/code>, <code>list<\/code>, <code>list-scroll-excerpt<\/code>, <code>carousel<\/code>, <code>carousel-inline-option-main<\/code>.<\/p>\n\n<p><a href=\"https:\/\/reviews.webcitylab.com\/\">TrustFusion Pro<\/a> is a separate plugin, sold directly at reviews.webcitylab.com (not listed on or distributed through WordPress.org), with official Google OAuth connect and a higher review-sync ceiling for licensed sites.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to external services to fetch and display your Google reviews. Details below.<\/p>\n\n<ol>\n<li><p><strong>Google Business Profile API \/ Google Places API<\/strong>\nUsed to search for your business and fetch its reviews, rating, and business details for display on your site. This happens when: you search for a business on the \"Add New\" admin page, you connect a business (via the TrustFusion relay, or your own Google Maps\/Places API key if you've added one), you reactivate the plugin, or you click \"Sync Reviews Now\" (up to once a month per business). Data sent to Google includes your search query and\/or the connected business's Google Place ID.\nThis service is provided by Google LLC \u2014 <a href=\"https:\/\/developers.google.com\/terms\">Google APIs Terms of Service<\/a> \u2014 <a href=\"https:\/\/policies.google.com\/privacy\">Google Privacy Policy<\/a>.<\/p><\/li>\n<li><p><strong>TrustFusion Relay (reviews.webcitylab.com)<\/strong>\nWhen you connect a business without entering your own Google API key (the default, key-free path), this plugin sends your site URL and the connected business's Google Place ID to reviews.webcitylab.com \u2014 a service operated by Web City Lab (this plugin's developer) \u2014 which fetches the review data on your behalf. This plugin doesn't impose any review-count limit of its own; the relay itself currently returns up to 10 reviews per business for requests without a paid TrustFusion Pro license, to keep the shared, free service sustainable.\nThis service is provided by Web City Lab \u2014 <a href=\"https:\/\/reviews.webcitylab.com\/terms-of-service-trustfusion\/\">Terms of Service<\/a> \u2014 <a href=\"https:\/\/reviews.webcitylab.com\/privacy-policy-trustfusion\/\">Privacy Policy<\/a> \u2014 <a href=\"https:\/\/reviews.webcitylab.com\/data-deletion-policy-trustfusion\/\">Data Deletion Policy<\/a>.<\/p><\/li>\n<\/ol>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>, or search for \"TrustFusion\" under <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Go to <strong>TrustFusion \u2192 Add New<\/strong> and connect your Google Business Profile.<\/li>\n<li>Open <strong>TrustFusion \u2192 Overview<\/strong>, choose a <strong>Layout<\/strong> and the number of reviews, then click <strong>Copy<\/strong>.<\/li>\n<li>Paste the shortcode into a page, post or widget. In the block editor, use a <strong>Shortcode<\/strong> block.<\/li>\n<li>Optional: click <strong>Set Logo<\/strong> on the Overview page to show your business logo in the carousel layouts.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20show%20google%20reviews%20on%20my%20wordpress%20site%3F\"><h3>How do I show Google reviews on my WordPress site?<\/h3><\/dt>\n<dd><p>Connect your Google Business Profile under <strong>TrustFusion \u2192 Add New<\/strong>, choose a layout in the shortcode builder on the <strong>Overview<\/strong> page, and paste the shortcode into any page or post.<\/p><\/dd>\n<dt id=\"do%20i%20need%20a%20google%20api%20key%3F\"><h3>Do I need a Google API key?<\/h3><\/dt>\n<dd><p>No. The built-in TrustFusion relay fetches reviews without one. You can optionally add your own Google Maps\/Places API key in Settings.<\/p><\/dd>\n<dt id=\"which%20layouts%20are%20available%3F\"><h3>Which layouts are available?<\/h3><\/dt>\n<dd><p>Grid, Grid \u2013 Scroll Excerpt, List, List \u2013 Scroll Excerpt, Carousel and Carousel \u2013 Inline.<\/p><\/dd>\n<dt id=\"what%20are%20the%20scroll%20excerpt%20layouts%3F\"><h3>What are the Scroll Excerpt layouts?<\/h3><\/dt>\n<dd><p>Grid and List shorten long reviews with \"Read more\". The Scroll Excerpt layouts keep cards the same height and let visitors scroll inside the review to read it in full.<\/p><\/dd>\n<dt id=\"can%20visitors%20drag%20or%20swipe%20the%20carousel%3F\"><h3>Can visitors drag or swipe the carousel?<\/h3><\/dt>\n<dd><p>Yes. Both carousel layouts support mouse drag, touch swipe, arrows and dots, and auto-advance until the visitor hovers over them.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20my%20business%20logo%3F\"><h3>How do I add my business logo?<\/h3><\/dt>\n<dd><p>Go to <strong>TrustFusion \u2192 Overview<\/strong>, click <strong>Set Logo<\/strong> and choose an image from the Media Library. Without one, TrustFusion uses your site logo, then your site icon.<\/p><\/dd>\n<dt id=\"how%20do%20i%20hide%20the%20address%2C%20%22view%20on%20google%22%20or%20%22write%20a%20review%22%3F\"><h3>How do I hide the address, \"View on Google\" or \"Write a Review\"?<\/h3><\/dt>\n<dd><p>Untick them under <strong>TrustFusion \u2192 Settings \u2192 Display Options<\/strong> to change the default everywhere, or untick them in the shortcode builder on the <strong>Overview<\/strong> page to change one shortcode. You can also add <code>show_address=\"no\"<\/code>, <code>show_view_button=\"no\"<\/code> or <code>show_review_button=\"no\"<\/code> to the shortcode yourself.<\/p><\/dd>\n<dt id=\"does%20it%20add%20review%20schema%20markup%3F\"><h3>Does it add review schema markup?<\/h3><\/dt>\n<dd><p>Yes. It outputs JSON-LD <code>AggregateRating<\/code> markup using your business's real Google rating and review count. Google decides whether to show rich results, so they can't be guaranteed.<\/p><\/dd>\n<dt id=\"how%20often%20are%20reviews%20synced%3F\"><h3>How often are reviews synced?<\/h3><\/dt>\n<dd><p>When you connect a business and when you reactivate the plugin. \"Sync Reviews Now\" refreshes a business up to once a month through the relay. With your own Google Maps\/Places API key, manual sync works anytime on your own Google quota.<\/p><\/dd>\n<dt id=\"how%20many%20reviews%20can%20i%20display%3F\"><h3>How many reviews can I display?<\/h3><\/dt>\n<dd><p>The plugin sets no limit of its own. It shows what the relay or your own API key returns, and you can set <code>limit<\/code> in the shortcode. Without a TrustFusion Pro license, the shared relay currently returns up to 10 reviews per business.<\/p><\/dd>\n<dt id=\"can%20i%20show%20reviews%20from%20multiple%20locations%3F\"><h3>Can I show reviews from multiple locations?<\/h3><\/dt>\n<dd><p>Yes. Connect as many businesses as you like and show them separately, or merge several with the <code>ids<\/code> attribute.<\/p><\/dd>\n<dt id=\"can%20i%20hide%20a%20review%3F\"><h3>Can I hide a review?<\/h3><\/dt>\n<dd><p>Yes, from <strong>Manage Reviews<\/strong>, or with the \"Hide review\" button administrators see on the front end. Hidden reviews are excluded from the page and from the schema rating.<\/p><\/dd>\n<dt id=\"will%20it%20slow%20down%20my%20site%3F\"><h3>Will it slow down my site?<\/h3><\/dt>\n<dd><p>No. Reviews are stored in your database, and the plugin's CSS and JavaScript load only on pages that use the shortcode.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20page%20builders%3F\"><h3>Does it work with page builders?<\/h3><\/dt>\n<dd><p>Yes, wherever shortcodes are supported, including the block editor's Shortcode block.<\/p><\/dd>\n<dt id=\"is%20it%20free%3F\"><h3>Is it free?<\/h3><\/dt>\n<dd><p>Yes. TrustFusion Free has no license key. <a href=\"https:\/\/reviews.webcitylab.com\/\">TrustFusion Pro<\/a> is an optional separate plugin with official Google OAuth connect and weekly automatic syncing.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.1.2<\/h4>\n\n<ul>\n<li>New: <strong>\"Powered by Google\" text<\/strong> can be shown or hidden in the Carousel \u2013 Inline layout (TrustFusion \u2192 Settings \u2192 Display Options, or <code>show_powered_by=\"no\"<\/code> on the shortcode).<\/li>\n<li>New: company names and reviewer names are now links. The company name opens the business's Google reviews page; a reviewer's name opens their Google profile (or the business's reviews page when Google doesn't provide one). Reviewer profile links appear after the next review sync.<\/li>\n<li>Improved: all layouts now use the same orange star colour, and carousel dots and arrow hover use it too; the active review dot stands out.<\/li>\n<li>Improved: the Carousel \u2013 Inline layout stays side by side on tablets and large phones, shows one review at a time on tablet and smaller, and only stacks on small phones. Other layouts were tuned for small screens too.<\/li>\n<li>Improved: on phones the Carousel \u2013 Inline company logo sits beside the name and rating, and the review card uses the full width with the arrows on its edges.<\/li>\n<li>Changed: the inline layout button now reads \"Review us on\".<\/li>\n<li>Fixed: stray gaps between the reviewer name, date and stars (and in the company panel) when the shortcode sits in a theme template or post; the \"Review us on\" button text and Google icon now stay on one line.<\/li>\n<\/ul>\n\n<h4>2.1.1<\/h4>\n\n<ul>\n<li>New: <strong>Display Options<\/strong> \u2014 show or hide the business header, rating, company address, \"View on Google\" button, \"Write a Review\" button and review date. Set the defaults under TrustFusion \u2192 Settings, or override them per shortcode (<code>show_address=\"no\"<\/code> and so on) with the shortcode builder.<\/li>\n<li>Fixed: reviewer photo, name, date and star rating are now consistently aligned in every layout, even when the theme restyles headings, links or spacing, and in narrow cards.<\/li>\n<li>Fixed: carousels showed a blank last page in narrow containers. The number of cards per view now follows the carousel's own width, and the last page lines up with the final card.<\/li>\n<li>Fixed: business logos are shown in full, never cropped.<\/li>\n<li>Fixed: \"View on Google\" and \"Write a Review\" buttons keep their proportions on themes with large button or link styles.<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>New: <strong>Carousel \u2013 Inline<\/strong> layout (<code>layout=\"carousel-inline-option-main\"<\/code>) \u2014 business logo, star rating, \"Based on N reviews\" and a \"review us on Google\" button on the left, with scrollable review cards on the right.<\/li>\n<li>New: <strong>Grid \u2013 Scroll Excerpt<\/strong> and <strong>List \u2013 Scroll Excerpt<\/strong> layouts (<code>grid-scroll-excerpt<\/code>, <code>list-scroll-excerpt<\/code>) \u2014 full reviews scroll inside the card instead of using \"Read more\".<\/li>\n<li>New: <strong>Shortcode builder<\/strong> on the Overview page \u2014 pick a layout and the number of reviews, see a short description of the layout, and copy the finished shortcode. The Default Layout setting uses the same list.<\/li>\n<li>New: <strong>Business logo<\/strong> \u2014 choose a logo per business from the Media Library (TrustFusion \u2192 Overview \u2192 Set Logo). Used in the carousel layouts; falls back to the site logo, then the site icon.<\/li>\n<li>New: <strong>Drag and swipe<\/strong> navigation on both carousel layouts (mouse drag and touch swipe), alongside arrows and dots.<\/li>\n<li>Improved: the Carousel layout now shows full reviews in scrollable cards (no \"Read more\"), has a smooth slide transition, and uses refreshed, vertically-centred arrow buttons.<\/li>\n<li>Improved: consistent, thin rounded scrollbars in Chrome\/Edge (no more old-style arrow buttons), and respect for the \"reduce motion\" accessibility setting.<\/li>\n<li>Improved: updated readme, tags and documentation, plus a video setup guide.<\/li>\n<\/ul>\n\n<h4>2.0.9<\/h4>\n\n<ul>\n<li>Fixed: running TrustFusion Free and TrustFusion Pro active on the same site at once caused a fatal PHP error (both plugins declared identically-named internal classes). Free's internal classes are now uniquely named so this can never collide, regardless of which plugin happens to load first.<\/li>\n<li>Added: if TrustFusion Pro is detected active, Free now automatically deactivates itself with an explanatory notice \u2014 the two aren't meant to run together, and Pro is a full superset, so there's nothing Free adds once Pro is active. Connected businesses and reviews are untouched.<\/li>\n<\/ul>\n\n<h4>2.0.8<\/h4>\n\n<ul>\n<li>Brought back: the \"Sync Reviews Now\" button, removed in 2.0.7 \u2014 it's limited to once a month per business (matching the relay's own once-a-month-per-IP cache) so it still can't be used to repeatedly hit the shared relay. There's still no automatic\/background sync at all; this is the only on-demand refresh option on the Free plan.<\/li>\n<\/ul>\n\n<h4>2.0.7<\/h4>\n\n<ul>\n<li>Removed: the \"Sync Reviews Now\" manual button and the monthly background WP-Cron sync. The Free plugin now only ever fetches reviews once when you connect a business, plus once more if you reactivate the plugin \u2014 ongoing\/on-demand syncing is a TrustFusion Pro feature. Sites upgrading from an older version with the background sync already scheduled have it cleared automatically.<\/li>\n<li>Removed: the \"Auto-Sync\" toggle from Settings, since there's no background sync left to toggle.<\/li>\n<\/ul>\n\n<h4>2.0.6<\/h4>\n\n<ul>\n<li>Removed the remaining promotional links to TrustFusion Pro from the admin UI (Plugins list row action and dashboard banner).<\/li>\n<li>Reworded the \"Connect &amp; Fetch Reviews\" helper text for accuracy.<\/li>\n<li>Plugin activation now re-syncs connected businesses immediately, instead of waiting on the throttled background\/manual sync.<\/li>\n<\/ul>\n\n<h4>2.0.5<\/h4>\n\n<ul>\n<li>Removed the plugin's own hardcoded 10-review cap on fetching, storing, and displaying reviews (<code>TrustFusion_Shortcode::REVIEW_CAP<\/code>). This plugin no longer imposes any review-count limit of its own; it fetches and shows whatever the TrustFusion Relay returns, and the relay independently caps unlicensed\/free requests to keep the shared service sustainable (see the \"External services\" section below). Site owners can still set an explicit <code>limit<\/code> on the <code>[trustfusion_reviews]<\/code> shortcode.<\/li>\n<li>Reworded the description and readme to reflect the above \u2014 the review-count limit was never something this plugin's own code needs to enforce.<\/li>\n<li>Removed the \"Connect Official Google Business Profile (TrustFusion Pro)\" upsell link from the Add New page for this submission \u2014 to be reintroduced later.<\/li>\n<\/ul>\n\n<h4>2.0.4<\/h4>\n\n<ul>\n<li>Author changed from \"Web City Lab\" to a personal name (matches the WordPress.org account\/Contributors); Author URI now points to a personal GitHub profile. The previous Author URI\/Donate link (webcitylab.com) was unreachable during a plugin review check.<\/li>\n<li>Donate link changed to a personal Wise payment link, for the same reason.<\/li>\n<li>Manual \"Sync Reviews Now\" via the TrustFusion relay is now limited to once a month per business, matching the automatic sync cadence (was once a day), to keep shared relay usage sustainable. Add your own free Google Maps\/Places API key in Settings to sync manually anytime instead \u2014 that path was always immediate and still is.<\/li>\n<li>Fixed a stale reference to \"OAuth tokens\" in the plugin-delete confirmation dialog; this plugin hasn't stored any since Google OAuth moved to TrustFusion Pro in v2.0.0.<\/li>\n<li>Corrected a docblock on an internal repository method that inaccurately described a 10-review cap it doesn't itself enforce (the cap is applied by the caller).<\/li>\n<\/ul>\n\n<h4>2.0.3<\/h4>\n\n<ul>\n<li>Removed the \"Powered by Google\" attribution feature entirely (was an opt-in Settings toggle; not needed).<\/li>\n<li>Removed the optional async-CSS preload toggle \u2014 it rewrote an already-enqueued stylesheet's tag via <code>style_loader_tag<\/code>, which repeatedly triggered plugin-review false positives for unenqueued CSS. Not worth the friction for an optional perf toggle.<\/li>\n<\/ul>\n\n<h4>2.0.2<\/h4>\n\n<ul>\n<li>Fixed Plugin Check warnings on the <code>wait<\/code> query parameter (uses <code>absint( wp_unslash( ... ) )<\/code> now, the recognized WP sanitization pattern).<\/li>\n<\/ul>\n\n<h4>2.0.1<\/h4>\n\n<ul>\n<li>Manual \"Sync Reviews Now\" is now limited to once a day per business, to keep shared relay API usage sustainable across every Free install. Automatic background sync (about once a month) is unaffected. TrustFusion Pro has no such limit.<\/li>\n<li>Tested up to WordPress 7.1.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>This plugin is now Free-only and fully self-contained \u2014 no license key, no locked\/limited built-in features. TrustFusion Pro is a separate plugin distributed outside WordPress.org.<\/li>\n<li>Official Google OAuth connect moved to TrustFusion Pro; this plugin uses the key-free TrustFusion relay only.<\/li>\n<li>Fixed: JSON-LD review text could contain a literal <code>&lt;\/script&gt;<\/code> sequence, breaking out of the schema markup.<\/li>\n<li>\"Powered by Google\" credit is now an opt-in Settings toggle instead of always-on.<\/li>\n<li>\"Based on X reviews\" and the JSON-LD rating now reflect the business's real Google review count, not just the reviews stored locally.<\/li>\n<li>Renamed all AJAX actions\/nonces to a <code>trustfusion_<\/code> prefix; removed an unused, unreachable secondary OAuth code path.<\/li>\n<li>Plugin renamed to \"TrustFusion \u2014 Show Reviews from Google Business Profile\".<\/li>\n<\/ul>\n\n<h4>1.2.5<\/h4>\n\n<ul>\n<li>Fixed: an invalid or expired license key saved in Settings couldn't be cleared from the admin UI \u2014 the \"Deactivate\" button only appeared for a currently-valid license, so a stale\/rejected key would keep reappearing in the field after every save. A \"Clear\" button is now shown next to \"Activate\" whenever a key is saved, regardless of its current validity.<\/li>\n<\/ul>\n\n<h4>1.2.4<\/h4>\n\n<ul>\n<li>Free plan's automatic background sync now runs about once a month instead of weekly, to keep unattended Google API usage sustainable on a plan with no associated revenue. Paid plans are unaffected (still weekly). The manual \"Sync Reviews Now\" button works immediately on any plan regardless of this schedule.<\/li>\n<\/ul>\n\n<h4>1.2.3<\/h4>\n\n<ul>\n<li>Removed a leftover developer debug tool from the My Businesses admin page (reachable via an undocumented query string) that dumped internal diagnostics and wrote to the reviews table on a plain, un-nonced GET request.<\/li>\n<\/ul>\n\n<h4>1.2.2<\/h4>\n\n<ul>\n<li>Removed a Google Maps internal-endpoint fallback used for fetching extra reviews via a user-supplied API key; the plugin now only calls Google's official, public Places API endpoints.<\/li>\n<li>Fixed <code>uninstall.php<\/code> referencing incorrect database table names (data removal on uninstall now actually removes all plugin tables).<\/li>\n<li>Added \"External services\" disclosure section to this readme.<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>Code-quality pass: prepared-statement corrections, input sanitization\/escaping fixes, gated debug logging behind WP_DEBUG, corrected readme metadata.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Multi-location connect and merged shortcode display.<\/li>\n<li>Hide\/show individual reviews from the admin.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Show Google reviews on your site with grid, list, carousel &amp; slider layouts, review schema markup and multi-location support. No API key needed.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/352068","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=352068"}],"author":[{"embeddable":true,"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/forkanhossain"}],"wp:attachment":[{"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=352068"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=352068"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=352068"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=352068"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=352068"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ml.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=352068"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}