Duplicate Post Exclusion for Query Loop Block
·
Prevent duplicate posts across multiple Query Loop blocks on the same page — automatic deduplication, no extra queries.
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
- Edit a Query Loop block in the block editor.
- In the sidebar, enable Make posts unique on page.
- Enable the same option on any other Query Loops that should respect prior results.
- 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_varsandrender_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
