Dynamic Post Grid Elementor Addon

plugin banner

Post Grid Elementor Addon offers various options such as grid, list & slider. Create any kind of News, Magazine, and Blogging sites with Dynamic P …

Author:Maidul (profile at wordpress.org)
WordPress version required:5.0
WordPress version tested:7.0.2
Plugin version:1.9.0
Added to WordPress repository:13-05-2024
Last updated:19-07-2026
Rating, %:0
Rated by:0
Plugin URI:
Total downloads:2 876
Active installs:20+
plugin download
Click to start download

Dynamic Post Grid is a lightweight, SEO-friendly plugin for displaying posts, pages, custom post types, and WooCommerce products in beautiful grid, masonry, list, and slider layouts. It works three ways: as a Gutenberg block, a standalone Shortcode Builder (no page builder needed), and an Elementor widget.

What makes this plugin different? Unlike other grid plugins that lock you into fixed templates, Dynamic Post Grid uses a block-based layout builder. Each grid is a JSON document describing individual blocks — making layouts serializable, exportable, shareable, and composable. Combined with transient caching, REST API, and Abilities API, it’s built for performance and developer flexibility.

Core Features

  • Elementor Widget — Drag-and-drop post/product grids directly inside Elementor with 7 layout styles and full styling controls.
  • Gutenberg Block — Native Block Editor integration with layout selector and attribute overrides.
  • Standalone Shortcode Builder — Build custom post grids with a visual drag-and-drop block editor. No Elementor required.
  • 4 Layout Modes — Grid, Masonry, List, and Slider layouts with responsive columns.
  • 14 Block Types — Thumbnail, title, meta, excerpt, read more, terms, divider, spacer, custom HTML, button, price, rating, custom field, and slider.
  • 10 Hover Effects — Zoom In, Zoom Out, Grayscale to Color, Blur, Brightness, Overlay Fade, Overlay Slide Up, Overlay Slide Left, Overlay Scale, and Border Draw.
  • AJAX Category Filtering — Category filter buttons that reload the grid without page refresh.
  • Load More Pagination — AJAX-powered load more button for paginated grids.
  • Infinite Scroll — Automatic loading via Intersection Observer when scrolling near the bottom.
  • 8 Style Presets — Built-in layout presets plus save and reuse your own custom presets.
  • WooCommerce Ready — Display products with price, ratings, add-to-cart buttons, and sale badges.
  • Transient Caching — Server-side caching for grid output with automatic invalidation.
  • REST API — Full API access to grid data for headless/decoupled usage.
  • Abilities API — WordPress 6.9+ AI-agent-ready abilities for programmatic grid operations.

Shortcode Reference

Basic Usage

[depg_grid id="123"]

All Attributes

[depg_grid id="123" layout_mode="grid" columns="3" per_page="6" orderby="date" order="DESC" filter="yes" filter_tax="category" load_more="yes" infinite_scroll="yes"]

Attribute
Type
Default
Description

id
integer
(required)
Shortcode post ID

layout_mode
string
grid
Layout mode: grid, masonry, list, or slider

columns
integer
3
Number of columns (1-4)

per_page
integer
6
Posts per page (-1 for all)

orderby
string
date
Sort by: date, title, ID, modified, rand, menu_order

order
string
DESC
Sort direction: ASC or DESC

filter
string
no
Show filter buttons: yes, 1, or true

filter_tax
string
auto
Taxonomy for filter buttons

load_more
string
no
Show Load More button: yes, 1, or true

infinite_scroll
string
no
Enable infinite scroll: yes, 1, or true

REST API

Endpoint: GET /wp-json/depg/v1/grid/{id}

Parameters: page, per_page, filter (term ID), taxonomy, layout_mode

Response:
json
{
"settings": {
"post_type": "post",
"layout_mode": "grid",
"columns": 3,
"per_page": 6,
"orderby": "date",
"order": "DESC"
},
"blocks": [...],
"posts": [
{
"id": 123,
"title": "Hello World",
"permalink": "https://example.com/hello-world/",
"excerpt": "This is a sample post...",
"date": "2026-07-18T10:00:00+00:00",
"author": { "id": 1, "name": "Admin" },
"featured_image": { "src": "...", "alt": "..." },
"terms": [{ "taxonomy": "category", "name": "Uncategorized" }]
}
],
"paging": {
"current_page": 1,
"max_num_pages": 5,
"total_posts": 48,
"remaining": 42
}
}

Abilities API (WordPress 6.9+)

Ability
Type
Description

dynamic-post-grid/render-grid
Read-only
Render a grid as HTML

dynamic-post-grid/get-grid-data
Read-only
Get structured post data as JSON

dynamic-post-grid/create-shortcode
Write
Create a new grid programmatically

dynamic-post-grid/export-layout
Read-only
Export layout as portable JSON

dynamic-post-grid/import-layout
Write
Import a layout JSON

Execute via: POST /wp-json/wp-abilities/v1/execute/{ability-name}


Screenshots
FAQ
ChangeLog