Zen Blogger
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
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.