Title: Duplicate Post Exclusion for Query Loop Block
Author: Itamar Silva
Published: <strong>Июль 6, 2026-ж.</strong>
Last modified: Июль 17, 2026-ж.

---

Плагиндерди издөө

![](https://ps.w.org/silvaitamar-duplicate-post-exclusion-query-loop/assets/banner-
772x250.png?rev=3592000)

![](https://ps.w.org/silvaitamar-duplicate-post-exclusion-query-loop/assets/icon-
256x256.png?rev=3592000)

# Duplicate Post Exclusion for Query Loop Block

 Автору [Itamar Silva](https://profiles.wordpress.org/itamarsilvacc/)

[Жүктөө](https://downloads.wordpress.org/plugin/silvaitamar-duplicate-post-exclusion-query-loop.1.0.2.zip)

[Көрүү](https://ky.wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/?preview=1)

 * [Кенен маалымат](https://ky.wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/#description)
 * [Сын-пикирлер](https://ky.wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/#reviews)
 *  [Орнотуу](https://ky.wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/#installation)
 * [Development](https://ky.wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/#developers)

 [Колдоо](https://wordpress.org/support/plugin/silvaitamar-duplicate-post-exclusion-query-loop/)

## Сүрөттөө

**Duplicate Post Exclusion for Query Loop Block** adds a toggle to the native `core/
query` (Query Loop) block so posts already shown by another Query Loop on the same
page are not displayed again.

This is automatic deduplication for the block editor: when you place several Query
Loops on one page (for example a featured list above a recent-posts list), each 
enabled loop skips the posts already rendered above it, keeping every post unique
on the page.

#### How it works

 1. Edit a Query Loop block in the block editor.
 2. In the sidebar, enable **Make posts unique on page**.
 3. Enable the same option on any other Query Loops that should respect prior results.
 4. On the front end, each enabled loop excludes post IDs already rendered by previous
    enabled loops.

#### Features

 * Extends the core Query Loop block — no custom block or variation required.
 * Uses official hooks: `query_loop_block_query_vars` and `render_block`.
 * No extra database queries; only adjusts existing query arguments.
 * Per-request in-memory registry (no transients or options).
 * Compatible with Query Loop variations such as Advanced Query Loop.

#### Requirements

 * WordPress 6.7 or later
 * PHP 7.4 or later

## Скриншоттор

[⌊The "Make posts unique on page" toggle in the Query Loop block sidebar.⌉⌊The "
Make posts unique on page" toggle in the Query Loop block sidebar.⌉[

The “Make posts unique on page” toggle in the Query Loop block sidebar.

## Орнотуу

 1. Upload the `silvaitamar-duplicate-post-exclusion-query-loop` folder to `/wp-content/
    plugins/`.
 2. Activate the plugin through the **Plugins** screen in WordPress.
 3. Edit a Query Loop block and enable **Make posts unique on page** in the block sidebar.

## FAQ.KG

### How do I prevent duplicate posts in Query Loop blocks?

Edit each Query Loop block and enable **Make posts unique on page** in the block
sidebar. On the front end, every enabled loop excludes the posts already shown by
the loops above it, so each post appears only once on the page.

### Do I need a separate block?

No. The plugin extends the native `core/query` block only.

### Will it slow down my site?

No. The plugin adds no extra database queries. It only adjusts the `post__not_in`
argument of the queries your Query Loops already run, using a per-request in-memory
registry.

### Does this affect the editor preview?

No. Cross-loop exclusion runs on the front end only. The editor preview uses the
REST API and does not simulate exclusion between multiple loops on the same page.

### Do Query Loops without the option participate?

No. Only loops with **Make posts unique on page** enabled register and exclude posts.

### Does this work with Advanced Query Loop or other Query Loop variations?

Yes. Variations register on the native `core/query` block. This plugin extends the
same block and uses official render hooks, so it works alongside extensions like
Advanced Query Loop.

### Does it work with “Inherit query from template”?

Partially. A Query Loop set to inherit the template query renders from the global
query and does not pass through the `query_loop_block_query_vars` filter. Such an
inherited loop still registers the posts it shows, so a later custom loop will exclude
them. However, exclusion is not applied to the inherited loop itself (it will not
hide posts shown by an earlier loop). Full support for inherited queries is planned
for a future release.

## Сын-пикирлер

There are no reviews for this plugin.

## Contributors & Developers

“Duplicate Post Exclusion for Query Loop Block” is open source software. The following
people have contributed to this plugin.

Мүчөлөрү

 *   [ Itamar Silva ](https://profiles.wordpress.org/itamarsilvacc/)

“Duplicate Post Exclusion for Query Loop Block” has been translated into 2 locales.
Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/silvaitamar-duplicate-post-exclusion-query-loop/contributors)
for their contributions.

[Translate “Duplicate Post Exclusion for Query Loop Block” into your language.](https://translate.wordpress.org/projects/wp-plugins/silvaitamar-duplicate-post-exclusion-query-loop)

### Interested in development?

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

## Өзгөртүүлөр

#### 1.0.2

 * Documentation only: improved the readme for search discoverability (refined tags,
   short description, and description) and added two FAQ entries. No functional 
   changes.

#### 1.0.1

 * Renamed the plugin display name to “Duplicate Post Exclusion for Query Loop Block”.
   The plugin slug, text domain, and functionality are unchanged.
 * Bundled the Spanish (Spain) translation.

#### 1.0.0

 * Initial release: `uniqueOnPage` attribute, front-end exclusion, and rendered 
   post registry.

## Мета

 *  Нуска **1.0.2**
 *  Акыркы жаңыртуу **4 жума мурун**
 *  Активдүү орнотуулар **Fewer than 10**
 *  WordPress нускасы ** 6.7 же андан жогору **
 *  Tested up to **7.0.3**
 *  PHP нускасы ** 7.4 же андан жогору **
 *  Тилдер
 * [English (US)](https://wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/),
   [Portuguese (Brazil)](https://br.wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/)
   жана [Spanish (Spain)](https://es.wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/silvaitamar-duplicate-post-exclusion-query-loop)
 * Тег:
 * [block-editor](https://ky.wordpress.org/plugins/tags/block-editor/)[duplicate posts](https://ky.wordpress.org/plugins/tags/duplicate-posts/)
   [query loop](https://ky.wordpress.org/plugins/tags/query-loop/)
 *  [Advanced View](https://ky.wordpress.org/plugins/silvaitamar-duplicate-post-exclusion-query-loop/advanced/)

## Рейтинг

Азырынча эч кандай сын-пикир жок.

[Your review](https://wordpress.org/support/plugin/silvaitamar-duplicate-post-exclusion-query-loop/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/silvaitamar-duplicate-post-exclusion-query-loop/reviews/)

## Мүчөлөрү

 *   [ Itamar Silva ](https://profiles.wordpress.org/itamarsilvacc/)

## Колдоо

Комментарийлер барбы? Жардам керекпи?

 [Колдоо форумун көрүү](https://wordpress.org/support/plugin/silvaitamar-duplicate-post-exclusion-query-loop/)