=== Content Blocks Builder - Create blocks, repeater blocks with carousel, grid, popup layouts ===
Contributors: Mr2P, freemius
Donate link:       https://contentblocksbuilder.com?utm_source=wp.org&utm_campaign=readme&utm_medium=link&utm_content=CBB+Donate
Tags:              blocks, Gutenberg, carousel, grid, popup
Requires PHP:      7.4
Requires at least: 6.6
Tested up to:      7.0
Stable tag:        2.8.10
License:           GPL-3.0
License URI:       https://www.gnu.org/licenses/gpl-3.0.html

Group core blocks into containers or repeaters to create layouts like grid, carousel, popup, accordion all in the Block Editor. Fast. Easy.

== Description ==

Content Blocks Builder (CBB) helps you create **custom blocks**, **variations**, **styles**, and **patterns** — directly in the **Block Editor** without touching a **code editor**.

The WordPress Block Editor (Gutenberg) is a solid foundation for building websites. But when you need more specific layouts or custom functionality not available in default blocks, you're often forced to write custom code or rely on bloated third-party plugins.

CBB solves this by letting you visually group core or third-party blocks into flexible container blocks — right inside the native Block Editor. These container blocks support native features like typography, spacing, colors, borders, plus advanced features from CBB that help you build layouts like **responsive grid**, **slider/carousel**, **toggle/accordion**, **modal/off-canvas/popover**, **background effects** all without writing a single line of code.

You can also build repeater blocks to display repeatable content — similar to ACF repeater field type, but entirely block-based and visual.

[👉 Read the detailed guide to CBB blocks](https://contentblocksbuilder.com/documentation/custom-blocks/?utm_source=wp.org&utm_campaign=readme&utm_medium=link&utm_content=CBB+Blocks).

The ultimate goal of CBB is to help you build complex layouts — all with core blocks, all visually, and fully compatible with any Gutenberg-ready theme.
**No React. No PHP. No lock-in. No clutter. No bloat. Developer-friendly.**

=== Key technical features ===

 - **Manage custom blocks**: Create, edit, copy, import, and delete custom blocks.
 - **Create repeater blocks** that work similarly to ACF repeater fields. Supports carousel, grid, accordion and vertical stack layouts.
 - **[[CBB Pro](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)] Extenral CSS/JS and Custom CSS/JS**: You can enqueue external CSS or JavaScript files and write your own custom code directly for your blocks. This feature makes CBB feel a bit like **[CodePen.io](https://codepen.io)**—but for Gutenberg blocks. You can create anything you can imagine on the frontend.
 - **Advanced block support features**: Modal, off-canvas, popover, toggle content, sticky, responsive dimensions, spacing, custom attributes, reveal animations, etc.
 - **Manage block variations & block styles**: Create, edit, copy, import, and delete block variations. It works on any block. **[CBB Pro](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)** enables you to input custom CSS for variations.
 - **Manage block patterns**: Create, edit, copy, import, and delete custom block patterns.
 - **Enhance the Query Loop block**: Add grid, carousel layouts, and advanced filter and sorting settings. Works with any post types.
 - **Import/export** custom blocks, variations, and patterns from/to other sites
 - **Pre-built library**: A library of pre-built blocks, variations, styles, and patterns. This library is not bundled with CBB; only items you import appear on your site.
 - CBB are built with vanilla JS and CSS. It only depends on [SwiperJs](https://swiperjs.com/) for the carousel functionality, — and even then, the script and styles are loaded only if the carousel layout is used.

=== Practical features you can build with CBB ===

 - **Carousel layouts**: Ideal for creating banner slider, posts carousel, gallery, carousel of features or other repeating content, etc. CBB provides one of the best way to create a carousel layout in Gutenberg. Built on top of the popular SwiperJs carousel script, it supports extensive customization. **[CBB Pro](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)** enables you to create entrance effects, advanced slide effects with effect builder, and further customization like slides per breakpoint, pagination, navigation, and synced carousels.
 - **Responsive grid layouts**: Perfect for creating equal column grid, mosaic grid, bento grid, posts grid, grid of features or other repeating content, etc. CBB provides the easiest but most flexible and robost grid layout based on CSS Grid layout. You can customize template columns, grid gaps, size, and location for each grid item.
 - **Accordion layouts**: Good for creating FAQ page, navigations, long features or specications.
 - **Blog page design, magazine layout, post grid, post carousel**; Work with any post types.
 - **Modal, off-canvas, popover, toggle content**: Great for creating popups, notification bars, toggle menu, toggle search box, hamburger menu, popover, show/hide content, etc. **[CBB Pro](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)** allows you to add a custom entrance animation effect, control when popups appear with delay options, trigger them on scroll to elements or exit intent, and remember when a popup has been closed.
 - **Sticky content**: Great for fixed/sticky header, footer, floating elements, sticky sidebar. **[CBB Pro](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)** enables you to style blocks based on their stuck state and make blocks sticky only when scrolling up.
 - **[[CBB Pro](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)] Backgound effect**: Add parallax, infinite scrolling, and zooming effect to image easily. Perfect for hero section designs.
 - **[[CBB Pro](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)] Reveal animations**: Add stunning effects to blocks when they appear on the viewport the first time.
 - **[[CBB Pro](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)] Custom layout & style**: With the ability to enqueue external JS/CSS and input custom JS/CSS, you can do anything with your blocks on frontend.

For dynamic data, we recommend using the **[Meta Field Block](https://metafieldblock.com)** plugin. It's the best way to display dynamic data.

=== Why choose CBB? ===

 - It's **fast**, **clean**, **flexible** and **code-free**. It **uses core blocks** to build container blocks.
 - It's **bloat-free**. It doesn’t come bundled with a ton of specific-use blocks like other multiple-feature plugins.
 - It's **easy to use**. It **adheres to Gutenberg** and maintain the primary user experience of Gutenberg, so anyone familiar with the Block Editor is already familiar with CBB.
 - Sites built with CBB are **easier to maintain** as most tasks are accomplished through the Block Editor. You don't need to know React to create complex blocks or maintain a code repository for them. You can also import/export them from/to other sites.

=== How does it help? ===

Below are some video tutorials that demonstrate how you can use this plugin to build your sites:

= Create a grid repeater block to display a grid of repeating content =

[youtube https://youtu.be/QKIPH5pmEWw]

= Create a banner slider for your site directly on the Editor =

[youtube https://youtu.be/EEk-kSa59VE]

= Create a custom blog page =

[youtube https://youtu.be/aHy3spQVBGc]

= Create a featured posts section =

[youtube https://youtu.be/paSXmpHU9K4]

= Create a glow-hover effect button variation =

[youtube https://youtu.be/rAWeQ2XLQJc]

=== More video tutorials ===

= Create custom layouts =

CBB includes five built-in layout blocks: Advanced Group, Grid, Carousel, Stack and Accordion. You can use them or build your custom layout blocks easily.

Watch the video tutorial to create a simple responsive grid using the built-in Grid block.

[youtube https://www.youtube.com/watch?v=awSC09tTnS8]

[Create a similar layout by creating a custom grid block](https://youtu.be/mICLfKkF6tU).

Watch the video tutorial to create a banner slider using the built-in Carousel block.

[youtube https://www.youtube.com/watch?v=Eh3kX-9_mDg]

Watch the video tutorial to create a FAQ section using the built-in Accordion block.

[youtube https://www.youtube.com/watch?v=YA4-duNF_w4]

= Create popup, off-canvas, popover, and toggle content =

With the toggle content feature, you can build a popup, off-canvas, popover, and toggle content easily and you can put anything in there.

Watch the step-by-step video tutorial to create modal, off-canvas content.

[youtube https://youtu.be/y31TAKHZOD0]

[Create a responsive header with hamburger menu and search bar toggle](https://youtu.be/E4usfCydR7U).
[Create a notification bar](https://youtu.be/g_KOCqvU0Ps).
[Create a video popup](https://youtu.be/52jD9eeBJ78).
[Create a cookie popup](https://youtu.be/UEh_Da9Sozs).
[Create an off-canvas content](https://youtu.be/YnUt-zQXnCU).

= Enhance the Query Loop and other blocks =

CBB provides a bunch of advanced features to add style to custom blocks like responsive width, height, spacing, border, box-shadow, transform, alignments etc. And by wrapping around other blocks, you can add those features to other blocks as well.

How to build a magazine layout grid with just one Query Loop block

[youtube https://youtu.be/Q4LP68Dh_Pc]

[Create a banner slider using the Query Loop block](https://youtu.be/bcK_k3IfW8g).
[Create a carousel of posts using the Query Loop block](https://www.youtube.com/watch?v=i8d8Pha921c).
[Create a blog layout with overlay style using the Query Loop block](https://youtu.be/YQHrf4xFctg).

= Create block variations, block styles, and block patterns =

CBB helps you create custom variations, styles, and patterns directly in the Block Editor without using a code editor.

[Create variations and styles for the core image block](https://youtu.be/BAY8_evbyL0).
[Create variations for any block](https://youtu.be/caiY-YZT7ZY).
[Create patterns](https://youtu.be/gfSNwcAb-xc).

= Google Fonts =

This feature does a really simple job, it loads a font for headings text and another for the body text from more than 1000+ Google Fonts easily with a few clicks. If you are worried about GDPR compliance, there is an option to load fonts from [Bunny Fonts](https://fonts.bunny.net/) instead of [Google Fonts](https://fonts.google.com/).

[How to use Google Fonts and be GDPR compliant](https://www.youtube.com/watch?v=rhd4SEKUcHU).

=== Which theme should I use with this plugin? ===
It is compatible with all Gutenberg-ready themes, but our recommended themes are default themes such as [Twenty Twenty Four](https://wordpress.org/themes/twentytwentyfour/), [Twenty Twenty Five](https://wordpress.org/themes/twentytwentyfive/), [Twenty Twenty Three](https://wordpress.org/themes/twentytwentythree/), [Twenty Twenty Two](https://wordpress.org/themes/twentytwentytwo/), or [Astra](https://wordpress.org/themes/astra/) theme.

=== How does it work with other blocks/plugins? ===
This plugin works with all third-party blocks but we recommend using single-block plugins for lightweight and performance. We also develop several single block plugins, that work great with this plugin, please see them in the below section.

=== Design library ===

We have already included a library of block patterns for you to quickly use or customize to fit your design. There is a popup inserter in the block editor for you to find and insert patterns with a few clicks.

[How to use the pattern inserter popup](https://youtu.be/UTrZSBvkzj0).

Browse the **[Design Library](https://boldpatterns.net?utm_source=wp.org&utm_campaign=readme&utm_medium=link&utm_content=CBB)** to see what the plugin can do for you.

=== Block and Variation library ===

Besides the pattern library, we have built an external library of content blocks and common block variations. All of the blocks/variations in this library have been created by CBB directly in the Block Editor. With a few clicks, you can easily import blocks or variations into your site. You use them directly or customize or learn from them.

Watch some video tutorials to learn how to use the library:

[Import the particles background block](https://youtu.be/BVvImhhZma4).
[Import the basic header block](https://youtu.be/hQBItwIu_90).
[Import the Query Loop variations](https://youtu.be/UpN9bdvs7Rs).
[Import the arrow buttons](https://youtu.be/U-e6wbFGiYg).

=== Learn CBB ===

Check out the documentation at [contentblocksbuilder.com](https://contentblocksbuilder.com/documentation?utm_source=wp.org&utm_campaign=readme&utm_medium=link&utm_content=CBB).
[Watch all tutorials on Youtube](https://www.youtube.com/@boldblocks/videos).
We're still recording video tutorials, so please [subscribe to our YouTube channel](https://www.youtube.com/channel/UCB7Y3mlCEKHVM-RCZaTkR1g?sub_confirmation=1) to get a notification when new videos are released.

=== Pro version ===

In short, the professional version adds following advanced features to your content such as:

 - **Custom CSS**: Adjusts layout and style easily right in the inspector settings.
 - **Enqueue external JS/CSS** and **add custom JS/CSS** to blocks. This powerful feature lets you create blocks with any style or interactive effect, just like on CodePen.io. You write the JS/CSS, and CBB takes care of the rest behind the scenes.
 - **Premium background effects**: Includes parallax, infinite scrolling, and zooming effect to background image.
 - **Premium carousel features**: Adds entrance animations, advanced effects, an effect builder, customized pagination, navigation, etc.
 - **Premium toggle content features**: Enhancements for modal, off-canvas, and popover content with custom entrance animations, delay time, trigger on scroll, exit intent, and closed state saving.
 - **Premium sticky content features**: Detects stuck state and adds the ability to make blocks sticky only on scrolling up.
 - **Add custom CSS** to variations.
 - **Reveal/entrance animations**: Adds stunning effects to blocks when they first appear in the viewport.

Check out this video tutorial to learn how to create a Google Map block and see how Content Blocks Builder (CBB Pro) helps you build powerful, custom Gutenberg blocks — without writing any React or PHP code.

[youtube https://youtu.be/hhH3bHrh_4U]

Watch more video tutorials to see how the Pro version can help you build advanced features for your sites:

[Create a sticky header](https://youtu.be/KEryi1y1UZ4).
[Create a custom block for the image zooming effect like Medium using an external script](https://youtu.be/WgHuo6jwyN8).
[Create a page title bar with a parallax background effect](https://youtu.be/0g1SLTq-lQ4).
[How to create an animated heading block](https://youtu.be/RfPPTg93WcQ).
[How to create a Back To Top block](https://youtu.be/0aTKpeTvgUY).
[How to create an image compare block](https://youtu.be/1tmIWXHv4gE).
[Create the infinite scrolling background effect](https://youtu.be/mBleA20caGo)
[Create the parallax background effect](https://youtu.be/nDpeQbpu50s)

**[Go premium](https://contentblocksbuilder.com/pro/?utm_source=wp.org&utm_campaign=CBB+Upgrade&utm_medium=link&utm_content=CBB)** to unlock advanced features with CBB Pro.

If this plugin is useful for you, please do a quick review and [rate it](https://wordpress.org/support/plugin/content-blocks-builder/reviews/#new-post) on WordPress.org to help us spread the word. I would very much appreciate it.

=== Other plugins ===

Please check out my other plugins if you're interested:

 - **[Meta Field Block](https://wordpress.org/plugins/display-a-meta-field-as-block)** - A block to display custom fields as blocks on the front end. It supports custom fields for posts, terms, users, and setting fields. It can also be used in the Query Loop block.
 - **[SVG Block](https://wordpress.org/plugins/svg-block)** - A block to display SVG images as blocks. Useful for images, icons, dividers, and buttons. It allows you to upload SVG images and load them into the icon library.
 - **[Icon separator](https://wordpress.org/plugins/icon-separator)** - A tiny block just like the core/separator block but with the ability to add an icon.
 - **[Breadcrumb Block](https://wordpress.org/plugins/breadcrumb-block)** - A simple breadcrumb trail block that supports JSON-LD structured data and is compatible with WooCommerce.
 - **[Block Enhancements](https://wordpress.org/plugins/block-enhancements)** - Adds practical features to blocks like icons, box shadows, transforms, etc.
 - **[Counting Number Block](https://wordpress.org/plugins/counting-number-block)** - A block to display numbers with a counting effect
 - **[Better YouTube Embed Block](https://wordpress.org/plugins/better-youtube-embed-block)** - A block to solve the performance issue with embedded YouTube videos. It can also embed multiple videos and playlists.

The plugin is developed using @wordpress/scripts. The source code is available in the trunk branch.
The pattern, block, and variation library is hosted at [https://boldpatterns.net](https://boldpatterns.net?utm_source=wp.org&utm_campaign=readme&utm_medium=link&utm_content=CBB).

== Installation ==

= How to install it from wordpress.org =

Please see the video tutorial to install it from your site dashboard:

[youtube https://www.youtube.com/watch?v=wMTN0WpapPw]

= How to install it manually =

1. Upload the plugin files to the `/wp-content/plugins` directory, or install the plugin through the WordPress plugins screen directly.
1. Activate the plugin through the 'Plugins' screen in WordPress

== Frequently Asked Questions ==

= Why do you need this plugin? =

To change the way of creating sites with WordPress from the legacy Classic Editor to the new Gutenberg Block Editor.

= Who needs this plugin? =

This plugin is made for developers or designers but anyone familiar with the Block Editor can use it.

= Is there a built-in design library? =

Yes, there is a library of production-ready block patterns.

= Is this another block library? =

No. It's like a tool to create custom layouts for core or third-party blocks without coding. However, it provides five custom block types: Grid, Carousel, Stack, Accordion and Advanced group.
Besides the five above block types, we have built an external library of content blocks and common block variations. You can easily import and use them in the plugin.

= Which themes does it support? =

It is compatible with all block-based themes and some popular classic themes like Astra, but our recommended themes are default themes such as [Twenty Twenty Four](https://wordpress.org/themes/twentytwentyfour/), [Twenty Twenty Five](https://wordpress.org/themes/twentytwentyfive/), [Twenty Twenty-Three](https://wordpress.org/themes/twentytwentythree/), [Twenty Twenty-Two](https://wordpress.org/themes/twentytwentytwo/), and [Astra](https://wordpress.org/themes/astra/) theme. If you find it doesn't work with your theme, please let us know. We'll work on it.

= What happens if I see the "Unexpected or Invalid Content" error? =

**Gutenberg moves quickly.**
We always do our best to support deprecated features, but sometimes we have to prioritize performance and code quality instead.

If you see the error **Block contains unexpected or invalid content** after upgrading the plugin from an older version, don't worry, your content will still work as expected. Just click the **Attempt Recovery** button to update deprecated blocks to the latest version.

Learn more about this error: [Unexpected or Invalid Content](https://wordpress.org/documentation/article/block-error-unexpected-or-invalid-content/)

== Screenshots ==

1. Block list screen

2. Block edit screen

3. Register block: synced overrides, template lock, description, CSS class, block icon

4. Register block: extended supports, variations

5. Register block: parent, ancestor, allowed, transformable, hidden, hide on frontend, enable repeater, scripts, stylesheets

6. Register repeater block: layout, title, description, CSS class, block icon

7. Register repeater block: extended supports, variations, limit child blocks

8. Carousel layout settings

9. Grid layout settings

10. Accordion layout settings

11. Toggle content settings

12. Sticky content settings

13. Background settings

14. Block library

15. Variation list screen

16. Variation edit screen

17. Register variation

18. Variation library

19. Pattern inserter popup

20. General settings

21. Typography settings

22. Import export settings

23. Developer settings

== Upgrade Notice ==

== Changelog ==

= 2.8.10 =
*Release Date - 09 March 2026*

* Added    - New cbb_get_carousel_settings filter to allow changing the carousel settings on the server
* Added    - [CBB Pro] More controls on the layout of carousel's pagination: position and active bullet style
* Fixed    - Removed the copy item action link on unsupported post types
* Refactor - Updated the settings UI to match WordPress 7.0
* Improved - Adjusted the settings UI on the block edit screen
* Fixed    - [CBB Pro] Entrance animations on carousel layout when both infinite and centeredSlides are enabled

[View all changelog](https://contentblocksbuilder.com/changelog?utm_source=wp.org&utm_campaign=readme&utm_medium=link&utm_content=Changelog)
