Title: AboutBuzz Stories Embed
Author: AboutBuzz
Published: <strong>August 4, 2025</strong>
Last modified: May 1, 2026

---

Search plugins

![](https://ps.w.org/aboutbuzz-stories-embed/assets/banner-772x250.png?rev=3341318)

![](https://ps.w.org/aboutbuzz-stories-embed/assets/icon-256x256.png?rev=3341318)

# AboutBuzz Stories Embed

 By [AboutBuzz](https://profiles.wordpress.org/ftpwebdesign/)

[Download](https://downloads.wordpress.org/plugin/aboutbuzz-stories-embed.2.0.2.zip)

 * [Details](https://co.wordpress.org/plugins/aboutbuzz-stories-embed/#description)
 * [Reviews](https://co.wordpress.org/plugins/aboutbuzz-stories-embed/#reviews)
 *  [Installation](https://co.wordpress.org/plugins/aboutbuzz-stories-embed/#installation)
 * [Development](https://co.wordpress.org/plugins/aboutbuzz-stories-embed/#developers)

 [Support](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/)

## Description

AboutBuzz Stories Embed renders a responsive, lazy-loading carousel of verified 
video reviews from AboutBuzz.com. Add the shortcode `[aboutbuzz_reviews code="ABZ-
XXXX-XXXX-XXXX-XXXX"]` anywhere in your content and the plugin handles fetching,
caching, and rendering.

### External Services

This plugin connects to AboutBuzz.com to fetch video stories and record likes. All
requests are over HTTPS.

 * Endpoint `https://aboutbuzz.com/wp-json/aboutbuzz/v1/stories/by-code` — fetches
   stories for a given activation code (sent: code, plugin version).
 * Endpoint `https://aboutbuzz.com/wp-json/aboutbuzz/v1/like/` — records a like (
   sent: post ID, plugin version).

Successful story responses are cached for 5 minutes per activation code in a WordPress
transient. No personal visitor data is collected by the plugin.

 * Terms of Service: https://aboutbuzz.com/terms-of-service/
 * Privacy Policy: https://aboutbuzz.com/privacy-policy/

## Screenshots

 * [[
 * Plugin installed, reviews visible on the site.
 * [[
 * Reviews on mobile in a carousel with play/pause and like integration.
 * [[
 * Settings screen — AboutBuzz Activation.
 * [[
 * Entering your secret key from aboutbuzz.com.
 * [[
 * Embedding reviews via shortcode.

## Installation

 1. Upload the plugin to `/wp-content/plugins/aboutbuzz-stories-embed`, or install 
    it via the Plugins screen in WordPress.
 2. Activate the plugin.
 3. Add `[aboutbuzz_reviews code="YOUR_CODE"]` to any post or page. Get your code from
    your AboutBuzz dashboard.

## FAQ

### How do I get an activation code?

Sign in to your AboutBuzz dashboard at https://aboutbuzz.com or contact support.

### Is the widget mobile-friendly?

Yes — it renders as a single-row, scroll-snapping carousel that adapts to viewport
width.

## Reviews

![](https://secure.gravatar.com/avatar/a0e3b11ffbef05ee7b84e4d104801698d8c5777655819ab0ea524385430740a1?
s=60&d=retro&r=g)

### 󠀁[Proud of how easy this turned out!](https://wordpress.org/support/topic/exactly-what-i-needed-1000/)󠁿

 [AboutBuzz](https://profiles.wordpress.org/ftpwebdesign/) August 8, 2025

As the developer of AboutBuzz Stories Embed, I wanted to make setup super simple.
Just add the shortcode and your reviews show up instantly. Seeing it work smoothly
on mobile was a top priority, and the play/pause and like buttons really bring the
reviews to life. We’ve put a lot of effort into fast, helpful support — happy to
hear it made a difference during setup. I’m excited to keep improving the plugin
based on your feedback! — The AboutBuzz Team

 [ Read all 1 review ](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/reviews/)

## Contributors & Developers

“AboutBuzz Stories Embed” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ AboutBuzz ](https://profiles.wordpress.org/ftpwebdesign/)

[Translate “AboutBuzz Stories Embed” into your language.](https://translate.wordpress.org/projects/wp-plugins/aboutbuzz-stories-embed)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/aboutbuzz-stories-embed/),
check out the [SVN repository](https://plugins.svn.wordpress.org/aboutbuzz-stories-embed/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/aboutbuzz-stories-embed/)
by [RSS](https://plugins.trac.wordpress.org/log/aboutbuzz-stories-embed/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 2.0.2

**Branding refresh, mobile layout fix, and per-review language labels.** Updates
the widget palette to the new AboutBuzz brand colors, resolves a mobile-only layout
bug where the rating stars wrapped onto a second line on narrow cards, and renders
the “Verified product review” label in the language of each individual review.

 * **Per-review “Verified product review” label.** The label under each video is
   now selected from the review’s `acf.jezik` field (returned by `/wp-json/aboutbuzz/
   v1/stories/by-code`), so a Slovenian review shows “Ocena testiranega izdelka”
   while an English review on the same page shows “Verified product review”. Six
   languages are supported out-of-the-box, with both Slovene-language and English-
   language native names accepted as input values:
    - Slovenian (`Slovenščina` / `Slovenian`)  “Ocena testiranega izdelka”
    - English (`Angleščina` / `English`)  “Verified product review”
    - Russian (`Ruščina` / `Russian`)  “Проверенный отзыв о товаре”
    - German (`Nemščina` / `German`)  “Verifizierte Produktbewertung”
    - Latvian (`Latviščina` / `Latvian`)  “Apstiprināta produkta atsauksme”
    - Turkish (`Turščina` / `Turkish`)  “Doğrulanmış ürün yorumu”
    - Unknown / missing values fall back to the WordPress site locale via the existing`
      __('Verified product review', …)` translation, so behavior on existing sites
      is unchanged when the API has no language data.
 * **`language` added to the sanitized story array.** A new `language` key (canonical
   2-letter code) is now stored in the per-story sanitized array and the 5-minute
   response cache. A migration guard discards any 2.0.1 transient entry that’s missing
   this key on first read after upgrade, so the new label kicks in immediately on
   the next render — no manual cache flush required.
 * **Brand palette updated.** `--aboutbuzz-text` changed from `#545454` to `#404040`,
   and `--aboutbuzz-accent` changed from `#007cba` to `#01798C` (new AboutBuzz teal).
   Affects body text and any element bound to the accent variable (logo text, etc.).
 * **Loading spinner restyled.** Spinner border thickness increased from `2px` to`
   3px`, and the active arc color now uses the new accent `#01798C` instead of the
   previous `#3498db`.
 * **Mobile card width increased from 58% to 80%** of the viewport (`@media (max-
   width: 600px)`). The narrower card was causing the rating row to overflow and
   the star icons to wrap onto a new line on small screens. `scroll-padding-inline`
   was updated in lockstep so scroll-snap centering still works.
 * **Rating row hardened against overflow.** `.row-0` / `.ab-info-row` now declares`
   flex-wrap: nowrap` with `gap: 8px`. The rating-stars container is `inline-flex`
   with `flex-shrink: 0` and `white-space: nowrap`, and `.aboutbutzz_like_wrapper`
   is also `flex-shrink: 0`. Stars and the like button stay on a single row regardless
   of card width.

#### 2.0.1

**Privacy hardening.** Reduces the surface area for personal data from the AboutBuzz
API to land on the client site.

 * **Response caching now holds a sanitized array instead of the raw API body.**
   The `aboutbuzz_stories_bycode_<md5>` transient previously stored the full JSON
   response body as a string, meaning any fields the server returned (including 
   ones this plugin does not render) would sit in `wp_options` for up to 5 minutes
   per activation code. The transient now stores only the allowlisted `$sanitized_posts`
   array (ID, rating, vote_count, watermark_video, product_source, brand, and the
   video URL) that the template actually consumes. Extra server-returned fields 
   are dropped before caching.
 * **Removed the unused `post_title` field** from the sanitized story array. It 
   was being copied from the API response but never rendered anywhere in the template.
   Since `post_title` on the AboutBuzz side can contain reviewer names, stripping
   it here removes that field from the client’s in-memory and cached representation
   of each story.
 * **Migration guard for the legacy cache format.** Existing transient entries (
   stored as JSON strings by earlier builds) are discarded on first read after upgrade;
   the next render repopulates the cache in the new array format. No manual cache
   flush required.
 * 5-minute cache TTL and the `?abz_nocache=1` admin bypass are unchanged.
 * Removed per-review title interpolation from video `aria-label` and `alt` strings;
   accessibility labels are now generic (“Predvajaj video oceno” / “Predogled video
   ocene”). Translations (`.pot`, `sl_SI`, `en_US`) updated to match the new msgids.

#### 2.0.0

**Major release.** Card design redesigned to match aboutbuzz.com homepage, CSS architecture
moved to `@scope` for isolation, response caching added, new Product Source badges,
admin diagnostics for error paths.

 * “Verified Purchase” / “Verified Tester” overlay badges driven by the `product_source`
   ACF field; assets bundled locally.
 * Rating row always renders 5 inline-SVG stars (filled `#FFB600`, empty outlined`#
   C7C7C7`).
 * Always-on single-row scroll-snap carousel; mobile cards at 58% of viewport so
   neighbours peek.
 * All widget styles wrapped in `@scope (.aboutbuzz-reviews-host) { ... }`; CSS 
   custom properties exposed for theming (`--aboutbuzz-card-bg`, `--aboutbuzz-text`,`--
   aboutbuzz-muted`, `--aboutbuzz-accent`, `--aboutbuzz-star-filled`, `--aboutbuzz-
   star-empty`, `--aboutbuzz-radius`, `--aboutbuzz-video-height`).
 * 5-minute response cache per activation code; errors never cached. Per-visitor
   rate limit counts cache misses only (60/hour). Admin `?abz_nocache=1` bypass.
 * Admin-only yellow info boxes for rate-limit / HTTP error / network error / invalid-
   JSON paths; public visitors see nothing.
 * New `ABOUTBUZZ_EMBED_VERSION` constant drives enqueue cache-busting and API `
   User-Agent`.
 * Star row carries an `aria-label` with the numeric rating; individual SVGs are`
   aria-hidden`. Decorative check `alt` emptied.
 * `.pot`, `en_US.po`, `sl_SI.po` updated; `.mo` files recompiled.

**Breaking changes:**

 * The legacy “wrap as a row at 1–3 videos, carousel at 4+” layout is gone — every
   count renders as a carousel.
 * Brand-site CSS targeting class names the plugin never emits (`.playbutton`, `.
   heart-icon`, `.vote-button-overlay`, `.vote-count`, `.voting`, `.video-preview`)
   will continue to do nothing.
 * If a brand theme forces `.ab-info-row { display: grid }`, the flex-based layout
   will break — remove the conflicting rule.

#### 1.9.x

 * 1.9.3 — Fixed first thumbnail not loading on sites using third-party lazy-loaders(
   WP Rocket, LiteSpeed). Added `data-no-lazy`, `data-skip-lazy`, `skip-lazy`, `
   no-lazyload` to the first image.
 * 1.9.2 — Updated plugin logo.
 * 1.9.1 — Full i18n support: translatable strings, `.pot` template, `sl_SI` and`
   en_US` catalogs, translatable ARIA labels.
 * 1.9.0 — Shortcode renamed `[aboutbuzz_smart_stories]`  `[aboutbuzz_reviews]`.
   Auto-detects brand from the activation code; `code` is the only parameter.

#### 1.8.x

 * 1.8.2 — Removed problematic `all: unset` reset.
 * 1.8.1 — Assets fix.
 * 1.8.0 — Visual redesign: modern layout, refreshed colors, improved spacing, better
   like-button feedback, custom Nunito Sans font, new SVG carousel arrows.

#### 1.7.x

 * 1.7.9 — Heart icon styling fix (red, proper opacity states).
 * 1.7.8 — Added “Oddaj video mnenje” upload link.
 * 1.7.7 — Major WordPress.org compliance pass: external CSS/JS, AJAX likes, CORS
   + nonces, no inline styles.
 * Earlier 1.7.x — Initial release, carousel, like button, mobile centering, caching.

## Meta

 *  Version **2.0.2**
 *  Last updated **4 weeks ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.0 or higher **
 *  Tested up to **6.8.5**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/aboutbuzz-stories-embed/)
 * Tags
 * [embed](https://co.wordpress.org/plugins/tags/embed/)[reviews](https://co.wordpress.org/plugins/tags/reviews/)
   [stories](https://co.wordpress.org/plugins/tags/stories/)[testimonials](https://co.wordpress.org/plugins/tags/testimonials/)
   [video](https://co.wordpress.org/plugins/tags/video/)
 *  [Advanced View](https://co.wordpress.org/plugins/aboutbuzz-stories-embed/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  1 5-star review     ](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/reviews/)

## Contributors

 *   [ AboutBuzz ](https://profiles.wordpress.org/ftpwebdesign/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/aboutbuzz-stories-embed/)