BLACK FRIDAY
Save 59% on PageForge Annual $191/year $485/year
Claim 59% Off →
Zen Blogger icon
Actively maintained Tested with WP 7.1

Zen Blogger

Accessible blog carousel and post grid widgets for Elementor, with six skins, a deep query builder and a search-and-filter bar.

Active installs<10New
Downloads · 30d122▼ -20.3% vs prev. 30d
Rating—0 reviews
Health score64/100Good
All-time downloads255Since Aug 2026
Support resolved—No recent threads
RequiresWP 6.5PHP 7.4+
Downloads · 7d12▼ -33.3% week over week
Our verdict

Solid choice

Zen Blogger is a solid plugin choice in 2026, with a few things worth checking first. Was last updated 3 weeks ago, and scores 64/100 on our health check.

  • Actively developed — last update 3 weeks ago
  • Tested with the latest WordPress (7.1)
  • Small user base (<10 active installs)
  • Very few reviews so far

How does it stack up?

Side-by-side on installs, updates, ratings & support

Daily downloads

102030Aug 22Sep 17Oct 14
Yesterday3
Daily average (1y)5
Peak day40Aug 22, 2026
Last 12 months260

Download spikes usually follow a new release — each site that auto-updates counts as a download.

Rankings

Where Zen Blogger stands today

WordPress.org search rankings

Live position in the plugin search, top 100
KeywordPositionCompeting pluginsCategory
blog >100 10,000 Best blog plugins →
carousel >100 1,897 Best carousel plugins →
elementor >100 6,950 Best elementor plugins →
posts >100 10,000 Best posts plugins →
slider >100 3,857 Best slider plugins →

About Zen Blogger

From the official readme · v1.9.1

Description

Zen Blogger adds two widgets to Elementor: Blog Carousel and Posts. Both draw the same card and share the same query builder, so a layout you design once works either way.

Accessibility

Turning autoplay on adds a play/pause button — you can move it or make it appear on hover, but you cannot delete it, because moving content with no way to stop it fails WCAG 2.2.2. Arrows and the play/pause control are real buttons at a 44px target. Slides carry proper carousel semantics, keyboard control is on by default, and visitors whose system asks for reduced motion get no autoplay and instant transitions.

Performance

The carousel runs on the Swiper library Elementor already loads, so no additional slider script is added to the page. Nothing is enqueued on pages that do not use the widget. Images in the first visible row load eagerly with high fetch priority and everything after them loads lazily, and the image box reserves its aspect ratio up front so the carousel does not shift your layout while it loads. If the script never runs, the markup stays a scroll-snapping row instead of collapsing.

Query builder

Filter by post type, taxonomy (include and exclude, combined with AND or OR), author, date range, and custom field ordering. Show posts related to the post being viewed, hand-pick them, or reuse the archive’s own query. Exclude the current post, skip posts already shown by another carousel on the page, or require a featured image.

The Posts widget

Grid, masonry, list, or a feature layout where the first post spans wider. Pagination is page numbers, previous/next, a Load More button, or infinite scroll — and every one of them starts life as a real link, so the widget works with JavaScript disabled and every page stays crawlable.

When a page of results is fetched in the background:

  • The new result count is announced politely — “Showing 6 of 8 posts”.
  • The grid is marked aria-busy while it loads.
  • Focus moves to the first newly loaded post, so keyboard users continue from the new content. On an automatic infinite-scroll load, focus is deliberately left alone.
  • Infinite scroll loads a set number of pages automatically before the button must be pressed again, so the footer stays reachable.
  • The address bar keeps up with filters, so Back works and a filtered view can be shared.

The optional search-and-filter bar is a real form. It offers only the terms present in the posts the widget is showing, and reflects the current selection with aria-current.

Setting up a widget

  1. Edit a page, or a Theme Builder template, with Elementor.
  2. Search the widget panel for “Zen” and drag Blog Carousel or Posts onto the canvas.
  3. Content -> Query picks what to show: the Source (latest posts, related to the post being viewed, hand-picked, or the current page’s own query), then post type, taxonomy include and exclude, author, date range and ordering.
  4. Content -> Layout picks how a card looks: the Skin, and for the Posts widget the layout (grid, masonry, list or feature) and the number of columns per device.
  5. Content -> Pagination, on the Posts widget, offers page numbers, previous/next, a Load More button, infinite scroll, or none.
  6. Content -> Search & Filter, on the Posts widget, switches on the filter bar. Choose which taxonomies it offers, and whether to include a search box and a sort control.
  7. Content -> Accessibility, on the carousel, controls autoplay, where the play/pause button sits and when it is visible, and whether reduced-motion settings are respected.
  8. The Style tab has its own section for the card, image, terms, title, meta, excerpt, read more, filter bar and pagination.

Every text label the widget renders is an editable field, and every colour, font, size, spacing, border, radius and shadow is an Elementor control.

Skins

  • Classic — image above the text
  • Overlay — text over the image
  • Overlap — the text block lifted over the image
  • Side by side — image left or right
  • Minimal — no image
  • Editorial — oversized running numbers

Motion

Slide, fade, coverflow, cards and creative effects; free scroll and a continuous ticker mode; multiple rows; centred slides; dots, dynamic dots, a fraction counter, a progress bar or a draggable scrollbar.

Styling

Every colour, font, size, spacing, border, radius and shadow is an Elementor control — including hover and focus states. Nothing is hard-coded, and no colour is applied as a default you cannot switch off.

SEO and AI (GEO)

Every slide is rendered server-side as a real <a href> inside an <article>, with a selectable heading tag and a machine-readable <time datetime>. Search engines and AI crawlers read the entire list from the page source — nothing is fetched by JavaScript, and nothing is hidden behind an interaction.

The carousel also describes itself as a schema.org ItemList in JSON-LD, either as positions and URLs or with full post details (headline, image, dates, author) under BlogPosting, Article, NewsArticle, CreativeWork or Product. That is what lets a search engine treat the section as an ordered list of articles rather than a cluster of links, and gives generative engines an unambiguous reading of what the section contains and in what order. Set it to None if your SEO plugin already outputs an ItemList for the same section.

Works with Zen GEO

If Zen GEO is installed, the two plugins share their structured data:

  • Zen GEO prints its page graph in <head>; Zen Blogger prints its list where the widget renders. They never overwrite each other.
  • Zen Blogger uses Zen GEO’s own node identity (permalink#article), so a post described in a carousel and the same post described by Zen GEO on its own page resolve to one node instead of two competing descriptions of the same URL.
  • The carousel’s list attaches to Zen GEO’s page node with isPartOf, so the output reads as one connected graph.
  • Detection is at runtime, so load order never matters. Turn the integration off with the zenblog_zengeo_integration filter.

Neither plugin requires the other.

Developer notes

  • zenblog_query_args — modify the WP_Query arguments before the query runs.
  • zenblog_schema_graph — alter the JSON-LD graph, or return an empty array to suppress it.
  • zenblog_zengeo_integration — disable the Zen GEO linkage.
  • zenblog_reading_speed — words per minute for the reading-time estimate (default 200).
  • zenblog_filter_scope_limit — how many posts the filter bar inspects to decide which terms to offer (default 1000).
  • zenblog_term_choices_limit / zenblog_post_choices_limit — how many terms and posts the panel offers.

Installation

  1. Install and activate Elementor.
  2. Upload the zen-blogger folder to /wp-content/plugins/, or install the zip through Plugins → Add New.
  3. Activate Zen Blogger.
  4. Edit a page with Elementor, search the widget panel for “Zen”, and drag Blog Carousel or Posts from the Zen Blogger category onto the canvas.
  5. See “Setting up a widget” above for what each panel does.

Frequently asked questions

Does it need Elementor Pro?

No. Zen Blogger works with free Elementor.

Why can’t I remove the play/pause button?

Because autoplay is on. WCAG 2.2.2 requires a way to stop content that moves automatically, so the button is rendered whenever autoplay is enabled. You can position it in any corner and set it to appear on hover and keyboard focus. Turning autoplay off removes it.

Does it work with custom post types?

Yes. Any public post type with a UI can be used as the source, and its public taxonomies appear as filters.

Will it slow my site down?

The CSS and JS are only enqueued on pages that actually contain the widget, and the carousel reuses the Swiper library Elementor already loads rather than adding another one.

Does it support RTL?

Yes. The layout uses logical properties throughout and the carousel direction follows the site’s text direction.

Changelog

Fixes infinite scroll, which stopped after one automatic load.

1.9.1

  • Fixed: a carousel that was hidden when the page loaded — inside a tab, an accordion or an off-canvas panel — never started autoplaying if it was revealed more than about five seconds later. The recovery that re-arms autoplay gave up after five seconds of polling and tore down the size observer with it, so nothing was left watching. The polling still stops; the observer now stays until it is needed.

1.9.0

  • Added a Focal Point control. Cropped photographs were always cropped from the middle, which is what cuts the heads off portraits in a wide card. Nine presets, or Custom for a precise point.
  • Added a Shape control: circle, oval, diamond, hexagon, pentagon, octagon, triangle, trapezoid, parallelogram, or your own mask image. The shape is cut on the image box, so a hover zoom moves the photograph inside a shape that stays still.
  • Added Scale Down and None to Fit, and an Empty Space colour for the bars the letterboxing fits leave behind.
  • Fixed: the Image Resolution select never did anything. It was read under the wrong name, so every card was served the large size whatever was picked, and the custom-size option could not be reached at all.
  • Added a Quality slider for the custom size, since that is the only size this widget generates itself and therefore the only one it can honestly compress.
  • Fixed: the Aspect Ratio control shipped a default that was written into every page whether or not anyone chose it, silently overriding the ratio each skin sets for itself. The overlay skin’s taller crop, the side skin’s full-height image and the feature card’s wide crop were all unreachable.
  • Custom-size images now carry width and height, so the page stops shifting as each photograph arrives.
  • Fixed: the structured data linked itself to a Zen GEO page node even on sites where Zen GEO prints no graph at all, because it stands down whenever another SEO plugin is present. That left the ItemList pointing at a node that was not on the page, which validators report as an unresolved reference. It now links only when the node is really there.

1.8.6

  • Tested against WordPress 7.1.
  • Fixed: on a hierarchical taxonomy, the count beside a parent term ignored everything filed under its children. Selecting the term returns those posts, so a parent could read “1” next to a button that produced ten results.
  • Fixed: a term matching every post the widget is showing is no longer offered. Selecting it returned exactly what “All” already showed, which on a category archive meant a button that could not change anything.
  • Fixed: two strings carried a different translator comment in each place they were used. Gettext merges those into a single entry, so translators were shown two contradictory notes for the same string.

1.8.5

  • Corrected the Contributors username and the author profile link, which were both missing a letter.
  • Rewrote the description to describe this plugin on its own terms, without comparisons to other post widgets, and added a step-by-step guide to configuring a widget.

1.8.4

  • Fixed: a widget nested inside a container that does not keep its children in a plain list could not be found by the background request, so pagination and filtering failed on exactly those layouts. Elementor’s own recursive search is now used, which descends through the filter such containers use to expose their children.

1.8.3

  • Fixed: “Avoid duplicates” stopped working past the first page. It reads a list of what the page has already shown, and that list lives for one request — a Load More or infinite-scroll fetch is a new request, where it starts empty. So page two was drawn from a different result set than page one, and posts could repeat or be skipped between them. The set is now carried across.

Full changelog on WordPress.org →

Screenshots

The Posts widget in a grid, with the search-and-filter bar, the result count and a Load More button.
The Posts widget in a grid, with the search-and-filter bar, the result count and a Load…
The Blog Carousel using the Classic skin, with dots and the arrows outside the track.
The Blog Carousel using the Classic skin, with dots and the arrows outside the track.
The Blog Carousel using the Overlay skin, where the text sits over the image.
The Blog Carousel using the Overlay skin, where the text sits over the image.
The Posts widget in the Feature layout, where the first post spans wider than the rest.
The Posts widget in the Feature layout, where the first post spans wider than the rest.
The Posts widget in the List layout with the Side-by-side skin and numbered pagination.
The Posts widget in the List layout with the Side-by-side skin and numbered pagination.
The Content panel: query, layout, search and filter, pagination and accessibility controls.
The Content panel: query, layout, search and filter, pagination and accessibility…
The Style panel: card, image, badge and term controls, each with Normal and Hover states.
The Style panel: card, image, badge and term controls, each with Normal and Hover states.
Circular thumbnails, cut per card by the Shape control.
Circular thumbnails, cut per card by the Shape control.
The Image section of the Style panel: fit, focal point and shape, with the result behind it.
The Image section of the Style panel: fit, focal point and shape, with the result behind…

For developers

Is this your plugin? Show off the numbers.

Add a live badge to your site, docs or GitHub README. It updates on its own — no account needed.

Active installs badge Rating badge Health score badge

Best Zen Blogger alternatives

All blog plugins →
Alternatives
Rank Plugin Active installs Rating Updated Health
1 SiteOrigin Widgets Bundle SiteOrigin Widgets Bundle Essential elements for modern websites. Add buttons, sliders, heroes, maps, images… by Greg - SiteOrigin 400K+ ★★★★★★★★★★ 4.9 (134) 2 weeks ago 97
2 All In One Favicon All In One Favicon Easily add a Favicon to your site and the WordPress admin pages. Complete with upload… by Garrett Grimm 60K+ ★★★★★★★★★★ 4.5 (82) 3 years ago 46
3 Gum Addon for Elementor Gum Addon for Elementor Offers inbuilt widgets for elementor that help to create design more attractive by Atawai 50K+ ★★★★★★★★★★ No reviews 2 months ago 70
4 Blog Designer Pack – Blog, Post Grid, Post Slider, Post Carousel, Category Post, News Blog Designer Pack News & Blog plugin for post grid, post slider, post carousel, post filter, masonry, ticker… by InfornWeb 30K+ ★★★★★★★★★★ 4.7 (79) 4 days ago 90
5 Post Slider and Post Carousel with Post Vertical Scrolling Widget – A Responsive Post Slider Post Slider and Post Carousel with Post Vertical Scrolling… Post Slider and Post Carousel display WordPress post in slider and carousel layouts with… by pluginandplay 10K+ ★★★★★★★★★★ 4.7 (31) 4 days ago 86
6 Latest Posts Block – Dynamic Posts Grid, Posts List, Posts Tile with Stunning Layouts for WordPress Blogs & Pages Latest Posts Block Dynamic Posts Grid, Posts List, Posts Tile with Stunning Layouts for WordPress Blogs & Pages by AF themes 6K+ ★★★★★★★★★★ 4 (1) 10 months ago 48
7 Simple Blog Stats Simple Blog Stats Displays a wealth of useful statistics about your site. Display total number of posts… by Jeff Starr 4K+ ★★★★★★★★★★ 4.9 (38) 2 months ago 85
8 Classic Blog Grid Classic Blog Grid Classic Blog Grid : A plugin to display blog posts in various grid formats: list, masonry… by classictemplate 3K+ ★★★★★★★★★★ 3 (2) 1 month ago 68
9 WP Image Borders WP Image Borders WP Image Borders makes it easy to add decorative image borders to pictures in your blog… by Ben Sibley 2K+ ★★★★★★★★★★ 4.2 (45) 9 years ago 41
10 Blog-in-Blog Blog-in-Blog This plugin shows posts from a category on any page you like using shortcodes. Create… by timhodson 800+ ★★★★★★★★★★ 5 (16) 9 months ago 48

FAQ

Zen Blogger: quick answers

Straight answers, pulled from live WordPress.org data.

Live data from WordPress.org · checked Oct 15, 2026

Is Zen Blogger free?

Yes. Zen Blogger is free to download and use from the official WordPress.org plugin directory.

Is Zen Blogger safe to use in 2026?

Zen Blogger is a solid plugin choice in 2026, with a few things worth checking first. Was last updated 3 weeks ago, and scores 64/100 on our health check.

How many websites use Zen Blogger?

Zen Blogger is active on <10 WordPress websites and has been downloaded 255 times since it launched in August 2026. It was downloaded 122 times in the last 30 days.

Does Zen Blogger work with WordPress 7.1?

Yes. The developer has tested Zen Blogger up to WordPress 7.1.3, the latest release. It requires WordPress 6.5 or newer.

What PHP version does Zen Blogger need?

Zen Blogger requires PHP 7.4 or higher. Most hosts run PHP 8.x today, so it works on any modern WordPress hosting.

When was Zen Blogger last updated?

The latest version, 1.9.1, was released on September 21, 2026 (3 weeks ago).

Who makes Zen Blogger?

Zen Blogger is developed and maintained by Guram Zhgamadze.

What are the best alternatives to Zen Blogger?

The most popular alternatives to Zen Blogger are SiteOrigin Widgets Bundle (400K+ installs), All In One Favicon (60K+ installs) and Gum Addon for Elementor (50K+ installs).

Powered by PageForge

Want thousands of pages that rank like these? Build them in an afternoon.

This directory runs on the same engine as PageForge. Turn any spreadsheet, CSV or API into thousands of fast, SEO-ready WordPress pages — with schema, internal links and AI-written copy baked in.

  • CSV, Google Sheets & API data sources
  • AI content, schema & internal links per page
  • Works with Elementor, Gutenberg, Yoast & Rank Math
  • Free on WordPress.org — no credit card
Sarah is here to help!
Hi there! 👋 Need help finding what you're looking for?
Sarah
Sarah
Online & Ready to Help
Hi there! 👋 Need help finding what you're looking for?

We'll use this to continue our conversation

Just now ✓ Verified

Join 500+ SEO Pros Scaling Their Strategy

Get exclusive programmatic SEO tactics, AI content workflows, and the latest PageForge updates delivered straight to your inbox. Stay ahead of the algorithm.

We care about your data in our privacy policy.