Title: Stunning Related for Posts, Products, Pages and widgets
Author: wp-buy
Published: <strong>February 21, 2014</strong>
Last modified: September 1, 2026

---

Search plugins

![](https://ps.w.org/advanced-css3-related-posts-widget/assets/banner-772x250.jpg?
rev=3676863)

![](https://ps.w.org/advanced-css3-related-posts-widget/assets/icon-256x256.png?
rev=3676863)

# Stunning Related for Posts, Products, Pages and widgets

 By [wp-buy](https://profiles.wordpress.org/wp-buy/)

[Download](https://downloads.wordpress.org/plugin/advanced-css3-related-posts-widget.2.1.zip)

 * [Details](https://sa.wordpress.org/plugins/advanced-css3-related-posts-widget/#description)
 * [Reviews](https://sa.wordpress.org/plugins/advanced-css3-related-posts-widget/#reviews)
 *  [Installation](https://sa.wordpress.org/plugins/advanced-css3-related-posts-widget/#installation)
 * [Development](https://sa.wordpress.org/plugins/advanced-css3-related-posts-widget/#developers)

 [Support](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/)

## Description

Most related-content plugins give you one global settings page and one block at 
the bottom of the article. This one is built around a different idea: you create**
Displays**, and every display answers three separate questions.

 * **WHAT** should be shown — content selection.
 * **WHERE** should it appear — the placement engine.
 * **HOW** should it look — layout, template and styling.

That separation runs all the way through the architecture:

    ```
    Content Provider → Relation Engine → Filters / Exclusions → Ranking → Cache → Placement Engine → Layout Renderer → Template
    ```

#### Unlimited independent displays

One article can run several displays at once, each with its own content rules, position,
design and priority — and the same item is never repeated twice on the page:

 * “Read Next” — 1 related post after paragraph 4.
 * “You May Also Like” — 3 posts after 65% of the article.
 * “More From This Category” — 6 posts in 3 columns at the end.

Displays are ordered by a **priority** value, can be activated or deactivated individually,
duplicated, and exported to JSON for another site.

#### Weighted relation engine

Instead of “same category”, candidates are scored and ranked:

    ```
    related_score = primary category + categories + tags + custom taxonomies + product attributes + same author + recency
    ```

Every weight is adjustable from 0 to 100, so two posts sharing a category and three
tags naturally outrank one sharing only a category. The primary category set by **
Yoast SEO** or **Rank Math** is recognised and weighted separately. A **Basic** 
engine mode is included when you want plain term matching where every shared term
counts the same.

Other content controls:

 * **Related by** — choose exactly which taxonomies create relatedness.
 * **Recency window** — how recent an item must be to earn the recency bonus (0–
   3650 days).
 * **Fallback** when relationships are thin — most recent, random, most-commented,
   or simply show fewer items.
 * **Order** — relevance score, newest first, recently updated, title AZ, or random.
 * **Total items** — 1 to 60, independent of the column count.

#### Selection modes

 * **Automatic** — the engine chooses.
 * **Manual** — only your picks, in your order.
 * **Manual + automatic** — your picks first, the remaining slots filled by the 
   engine.

#### HTML-aware in-content placement

In-content insertion is resolved with a DOM pass. A block is only ever placed **
between** top-level elements, so lists, tables, blockquotes, galleries and shortcodes
are never split — content is never cut on `</p>` with a string function.

Available positions: before content, after title, after content, after paragraph
X, before paragraph X, after X% of the article, middle of the article, before the
first heading, after the first heading, before the last heading, before the conclusion,
every X paragraphs, and every X words — the repeating positions with a maximum block
count.

#### WooCommerce placements

24 product, shop, cart, checkout and order hooks:

 * **Product page** — before product, before/after title, after rating, after price,
   before/after short description, before/after variations, before/after Add to 
   Cart, after product summary, before/after product tabs, after product page.
 * **Shop and archives** — before or after the product loop.
 * **Cart** — before cart, cart collaterals, after cart, empty cart.
 * **Checkout** — before or after the checkout form.
 * **Order received** — after the order.

Cart, checkout and order-received recommendations are derived from what is actually
in the cart or in the completed order, and never recommend a product the customer
already has.

#### Cross-content recommendations

The engine is not hard-coded to post  post. Set a source and a target and a blog
article can recommend products, while a product page recommends the guides that 
explain it. Cross-content matching links the two by matching term slugs across the
taxonomies of the target post types.

#### Display conditions

A display runs only where you want it:

 * Post types it is generated from.
 * Taxonomy rules — “only when the post has …” and “never when the post has …”, 
   combined with **AND** or **OR** logic.
 * Specific items to include or exclude by ID.
 * WooCommerce product price range.
 * Visitor state — everyone, logged-in only, or logged-out only.

#### Per-post overrides

Inside the post or product editor, a **Related Content** metabox can override the
global behaviour for that item: use global settings, automatic, custom only, custom
first then automatic, or disabled entirely — plus its own always-recommend and never-
recommend lists with an AJAX search picker.

#### Layouts, templates and responsive columns

Layout controls the structure, the template controls the visual DNA, and the two
are independent.

 * **8 layouts** — grid, list, inline, carousel, masonry, compact, single recommendation,
   horizontal cards.
 * **12 templates** — 01 Minimal, 02 Editorial, 03 Image Card, 04 Horizontal, 05
   Magazine Grid, 06 Numbered, 07 Glass Cards, 08 Featured Recommendation, 09 Compact
   Pills, 10 Product Cards, 11 Product Minimal, 12 Carousel.
 * Desktop / tablet / mobile **columns are core settings**, not advanced ones, and
   the item count is separate from the column count.
 * Adjustable grid gap.

#### Design controls

 * Heading text, tag (H2–H5, div, span) and alignment.
 * Fields to show: image, title, excerpt, category or term, date, author, reading
   time, read-more button — plus price, rating, Add to Cart and sale badge when 
   WooCommerce is active. Fields a template does not support are ignored.
 * Excerpt length in words, image ratio (16:9, 4:3, 3:2, 1:1, 3:4, 2:3 or original),
   link target and button text.
 * **Customize template**: accent, card background, title, text, meta and border
   colours; corner radius, image radius, card padding, title size, text size; and
   shadow depth. Everything is emitted as CSS custom properties on the block wrapper,
   so nothing leaks into the rest of the page.

#### Live preview

The editor renders a real preview from real content on your site while you work,
with desktop, tablet and mobile device toggles, a full-screen preview overlay and
a template navigator for stepping through all 12 templates without leaving the screen.

#### Performance

 * Resolved recommendation IDs are cached per post and regenerated automatically
   when the post, its terms or the display change. Cache lifetime is selectable 
   per display: disabled, 1 hour, 1 day, 1 week, 1 month.
 * Scoring happens in one grouped SQL query, not one query per candidate.
 * Nothing is enqueued globally. The stylesheet loads only when a display will actually
   render, and the carousel script only when a carousel is really on the page.
 * Optional lazy loading for recommendation images.

#### Analytics

Impressions and clicks are aggregated per day, so you can see click-through rate
per template, per placement, per display and per recommended item — which recommendation
strategy actually works, not just which one looks nice. Aggregated counters only:
no cookies and no personal data. A retention window (0–1825 days) prunes old rows
automatically.

#### Manual placement

 * Shortcode: `[smart_related id="5"]`
 * Gutenberg block: **Related Content**
 * Widget: **Related Content (Stunning Related)**
 * PHP: `<?php srpp_the_related_content( 5 ); ?>` (the older `smart_related_content()`
   still works)

#### Tools

Clear the recommendation cache, reset statistics, and export or import displays 
as JSON to move a configuration between staging and production.

#### Exclusions

Never recommend the current item, password-protected content, private content, content
marked noindex by Yoast SEO or Rank Math, or out-of-stock products — plus excluded
terms, excluded authors, excluded item IDs, and a guard against showing the same
item twice on one page.

#### Privacy

The plugin sends nothing to any external service. Analytics rows contain a display
ID, a source post ID, a target post ID, a template key, a placement key, a date 
and two counters — no IP addresses, no cookies, no visitor identifiers.

## Screenshots

[⌊The template library.⌉⌊The template library.⌉[

The template library.

[⌊The editor with live preview and device toggles.⌉⌊The editor with live preview
and device toggles.⌉[

The editor with live preview and device toggles.

[⌊The collabsed tabs contains every control for a display.⌉⌊The collabsed tabs contains
every control for a display.⌉[

The collabsed tabs contains every control for a display.

[⌊The first admin page.⌉⌊The first admin page.⌉[

The first admin page.

## Blocks

This plugin provides 1 block.

 *   Stunning Related Related Content

## Installation

 1. Upload the plugin folder to `/wp-content/plugins/`, or install the ZIP from **Plugins
    Add New  Upload Plugin**.
 2. Activate it. A starter display, “Blog recommendations”, is created for you.
 3. Go to **Related Content  Displays** and click **+ Add Related Content**.
 4. Answer the four questions — how it looks, what to show, where it appears, how many
    items — and save.

Optional: **Related Content  Settings** holds the global switches (cache, stylesheet,
lazy images, analytics, retention, delete-on-uninstall), and **Related Content  
Tools** holds cache clearing, statistics reset and JSON export/import.

## FAQ

### Does it work with custom post types?

Yes. Every public post type registered on the site is detected automatically — courses,
documentation, portfolio, downloads, jobs, events and so on. The same applies to
public taxonomies, which can all be used for relatedness.

### Does it need WooCommerce?

No. WooCommerce is optional. When it is active, the product placements, the product
fields (price, rating, Add to Cart, sale badge), the product templates and the price-
range condition appear automatically.

### Will it break my article markup?

No. In-content insertion uses a DOM pass and only places blocks between top-level
elements. Lists, tables, blockquotes, galleries and shortcodes are never split.

### Can several displays run on the same article?

Yes, that is the point. Each one has its own priority, and the duplicate guard stops
the same item appearing in two blocks on one page.

### Can I change the templates?

Yes. Copy any file from `advanced-css3-related-posts-widget/templates/` into `your-
theme/advanced-css3-related-posts-widget/` and it will be used instead. The template
helper functions (`srpp_tpl_image()`, `srpp_tpl_title()`, `srpp_tpl_meta()`, …) 
are available there, and `$context`, `$display` and `$items` are in scope. Custom
templates can also be registered with the `srpp_templates` filter.

### Which shortcode attributes are supported?

id, `post_id`, `items`, `template`, `layout`, `columns`, `tablet`, `mobile` and `
heading`. For example: `[smart_related id="5" items="4" columns="4" template="tpl-
07"]`.

### Which hooks are available for developers?

srpp_related_ids, `srpp_item_data`, `srpp_render`, `srpp_templates`, `srpp_conditions_pass`,`
srpp_post_types`, `srpp_taxonomies`, `srpp_fields`, `srpp_image_size`, `srpp_placeholder_image`
and `srpp_words_per_minute`.

### Is it slow on large sites?

Relationship resolution is the expensive part of any related-content plugin, so 
it is done once per post and cached, and scoring runs as a single grouped SQL query.
Front-end assets are conditional, so pages without recommendations load nothing 
at all.

### What happens when I uninstall it?

Nothing is deleted unless you first enable **Delete all plugin data on uninstall**
in Settings. With that switch on, displays, cached recommendation lists, per-post
overrides, the statistics table and the plugin options are removed.

## Reviews

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

### 󠀁[dont't work](https://wordpress.org/support/topic/dontt-work-1/)󠁿

 [eeeMan](https://profiles.wordpress.org/eeeman/) September 3, 2016

it is not related to the posts and random

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

### 󠀁[It doesn't work!](https://wordpress.org/support/topic/it-doesnt-work-105/)󠁿

 [seppp](https://profiles.wordpress.org/seppp/) September 3, 2016

It doesn't work at all! don't waste time to download it.

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

### 󠀁[very great plugin](https://wordpress.org/support/topic/very-great-plugin-7/)󠁿

 [ashrafweb](https://profiles.wordpress.org/ashrafweb/) February 8, 2017

its a very great plugin and awesome

 [ Read all 6 reviews ](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/reviews/)

## Contributors & Developers

“Stunning Related for Posts, Products, Pages and widgets” is open source software.
The following people have contributed to this plugin.

Contributors

 *   [ wp-buy ](https://profiles.wordpress.org/wp-buy/)

[Translate “Stunning Related for Posts, Products, Pages and widgets” into your language.](https://translate.wordpress.org/projects/wp-plugins/advanced-css3-related-posts-widget)

### Interested in development?

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

## Changelog

#### 2.1

 * Display-based architecture: unlimited independent recommendation rules, each 
   with its own content, placement, layout and design, ordered by priority.
 * Weighted relation engine with adjustable weights, primary-term detection for 
   Yoast SEO and Rank Math, and a Basic term-matching mode.
 * Selection modes: automatic, manual, and manual first with automatic fill.
 * Cross-content recommendations between post types by matching term slugs.
 * HTML-aware in-content placement with 13 positions, repeat-every-X-paragraphs/
   words and a maximum block count.
 * 24 WooCommerce placements, with cart, checkout and order-received recommendations
   derived from the actual cart or order contents.
 * Display conditions: post types, taxonomy include/exclude with AND/OR logic, specific
   items, product price range and visitor login state.
 * Per-post and per-product override metabox with its own always/never recommend
   lists.
 * 8 layouts and 12 templates, with independent desktop/tablet/mobile columns, image
   ratios and a full colour, radius, spacing, typography and shadow customiser emitted
   as CSS custom properties.
 * Live preview with device toggles, a full-screen overlay and a template navigator.
 * Per-post recommendation cache with automatic invalidation and a selectable lifetime,
   single-query scoring, and conditional asset loading.
 * Daily-aggregated impression and click analytics with CTR per template, placement,
   display and item, plus a retention window.
 * Output anywhere: `[smart_related]` shortcode, Related Content block, widget and`
   srpp_the_related_content()`.
 * Tools: cache clearing, statistics reset, and JSON export/import of displays.
 * Text domain is now `advanced-css3-related-posts-widget`. Theme template overrides
   load from `your-theme/advanced-css3-related-posts-widget/`; the previous folder
   keeps working.

#### 1.2

 * Fixed Error in activation
 * Added Default Image For non thumbnail posts
 * Made the Plugin work in wordpress latest version

#### 1.0

 * CSS table and td fixed
 * 3.3.1 compatibility fix
 * Added hooks and filters for displaying posts in the side bar
 * Added new 12 modern styles with easy control panel
 * More advanced control on css3 functions
 * Minor bug fixes

#### 0.8

 * changing priority of results order
 * css style more compatibility fix with most themes
 * Update sql code to get more equivalent results
 * abbility to extract images from post content if there is no featured image set!

#### 0.7

 * CSS Style fixing
 * Image display Fix
 * New way of calculating image views

#### 0.5

 * CSS Style fixing
 * New listing views

## Meta

 *  Version **2.1**
 *  Last updated **4 weeks ago**
 *  Active installations **80+**
 *  WordPress version ** 5.4 or higher **
 *  Tested up to **7.1.2**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/advanced-css3-related-posts-widget/)
 * Tags
 * [recommendations](https://sa.wordpress.org/plugins/tags/recommendations/)[related posts](https://sa.wordpress.org/plugins/tags/related-posts/)
   [related products](https://sa.wordpress.org/plugins/tags/related-products/)[relevant](https://sa.wordpress.org/plugins/tags/relevant/)
   [similar](https://sa.wordpress.org/plugins/tags/similar/)
 *  [Advanced View](https://sa.wordpress.org/plugins/advanced-css3-related-posts-widget/advanced/)

## Ratings

 3.4 out of 5 stars.

 *  [  3 5-star reviews     ](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/reviews/?filter=2)
 *  [  2 1-star reviews     ](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/reviews/)

## Contributors

 *   [ wp-buy ](https://profiles.wordpress.org/wp-buy/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/advanced-css3-related-posts-widget/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://www.wp-buy.com/)