Convert Blocks to JSON
This plugin offers a powerful solution for importing and exporting WordPress blocks in JSON format, making it easy to move posts across different WP websites. It is also beneficial for WP engineers who are adopting a Headless CMS approach and would like a way to be able to fetch data from the front-end using tools like React, Vue & so on. It’s simple, yet very powerful! ✔️ Features Our plugin comes with everything you need for your WP blocks. ✔️ Import & Export WP blocks across multiple WordPress websites. ✔️ Convert WP blocks to JSON easily & quickly. ✔️ Useful for Headless CMS websites or front-end projects working with React, Vue & so on. ✔️ Available in mutiple langauges such as Arabic, Chinese, Hebrew, Hindi, Russian, German, Italian, Croatian, Spanish, French, Japanese, Indonesia, Turkish, Polish, Dutch, Danish, Brazil & Portuguese languages. ✔️ Multiple custom hooks to enable you customize plugin to your heart’s delight. ✔️ Backward compatible, works with most WP versions. ✨ Getting Started Create a new Post or open an existing Post. Locate the Convert Blocks to JSON icon at the top right corner of the Block Editor and click on it. From here you can do the following actions: View JSON – Generate JSON data of the post you are working on. Import JSON – Import JSON data from a JSON file to the post you are working on. Export JSON – Export JSON data of the post to a JSON file. You can get a taste of how this works, by using the demo link. ✨ Why can’t I upload JSON files? You might need to configure the ALLOW_UNFILTERED_UPLOADS option in your wp-config.php file like so: define( 'ALLOW_UNFILTERED_UPLOADS', true ); ⚡ Why Convert Blocks to JSON This plugin is useful for users who want to be able to import and export articles or posts between different WordPress sites easily. This plugin is beneficial for WP engineers who are adopting a Headless CMS approach and would like a way to be able to fetch data from the front-end using tools like React, Vue & so on. 🔌🎨 Plug and Play or Customize The Convert Blocks to JSON plugin is built to work right out of the box. Simply install, activate and start using in your Block Editor. Want to add your personal touch? All of our documentation can be found here. You can override the plugin’s behaviour with custom logic of your own using hooks. Contribute If you’d like to contribute to the development of this plugin, you can find it on GitHub. To build, clone repo and run yarn install && yarn build
Top keywords
- json14×3.29%
- blocks7×1.65%
- wp7×1.65%
- data5×1.18%
- post5×1.18%
- blocks to json4×0.94%
- convert4×0.94%
- export4×0.94%
- import4×0.94%
- able3×0.71%
- cms3×0.71%
- convert blocks3×0.71%
No Gutenberg? – Choose Where to Use the Block Editor or the Classic Editor
The most configurable way to leave the block editor behind. Activate it and everything block related is gone: the block editor, Global Styles, patterns, block widgets, the Site Editor and the block CSS and JavaScript that every page loads. From there you decide the scope: everywhere, or only for the post types, roles, templates and entries you choose. What this plugin removes: Core Gutenberg Features Gutenberg Block Editor (completely disabled) Full Site Editing (FSE) Global Styles and inline CSS Block-based Widget Editor (reverts to Classic Widgets) Block Patterns and Pattern Directory Theme.json support and processing Block Directory integration Site Editor functionality Performance Optimizations The block library CSS and JavaScript that every page loads The Global Styles inline CSS, which dequeuing the handle never reaches The block assets of any other plugin that registers blocks, on pages where no block appears The block editor assets in the admin, wherever the Classic Editor is the one opening WooCommerce Integration The block based product editor, which follows the same rules as any other post type The WooCommerce block styles and scripts, removed along with the rest of the block assets Nothing else: leave blocks on for products and the block product editor keeps working Admin Experience Removes the welcome panel that promotes the block editor Removes the Patterns submenu from the Appearance menu (WP 6.5+) Removes the Fonts submenu from the Appearance menu (WP 7.0+) Blocks access to Site Editor pages Shows activation success notice Warns you when a block theme is active Adds settings and support links to plugin actions A default that asks nothing, and a settings page for everything else – Activating the plugin disables the block editor and every block feature across the site, which is what most people install it for. The rest of this page is about wanting less than that. Full control when you need it – The settings page lives under Settings > No Gutenberg?, built around one master switch. Leave it on and the whole site keeps the complete disable. Turn it off and you decide where the block editor goes away: by post type, by user role, by page template or by individual entry. The site wide pieces (classic widgets, block patterns, frontend block assets, theme.json and the Site Editor) are then yours to keep or remove one by one. Every checkbox means the same thing, so no setting ever undoes another one. Switch editors entry by entry, where it makes sense – Editor switching is chosen per post type, right next to the rule that disables the block editor. Enable it for pages, for instance, and every page gets “Edit (Classic)” and “Edit (Blocks)” links in the list plus a switch inside both editors, while your posts stay untouched. Each entry remembers the editor chosen for it, and that choice beats the rules in both directions: one landing page can stay on the Classic Editor while the rest keep blocks, or the other way around. It tells you what it is doing – The settings screen opens with a status panel for your particular site: how many block patterns are being blocked, how much weight is off every page, whether your theme is a block theme, and how much of your published content is really built with blocks. That last number is the one that should decide whether you strip the block styles from the frontend or not, and no other plugin tells you. Built for agencies and managed sites – The whole configuration can be fixed from wp-config.php, and the settings screen locked as read only or hidden altogether, so a site you deliver keeps the setup you left behind. A whole network configured in one file – This is where the plugin stands alone. Every single setting it has, and not just which editor opens, can be written in wp-config.php, the same file every site of a multisite network reads. A network of a hundred sites is set up once, all of them with the same rules, all of them with the same block CSS gone, and none of them able to drift away from it. The plugin can also be network activated and left alone, because settings are stored per site, so a network can equally let each site decide for itself. Same mechanism as the locking above, and this is how it is written. One configuration for a whole network, or for a site you deliver Everything the settings screen does can also be written in wp-config.php, where nobody changes it by accident, and what you write there wins over whatever is stored in the database. It is the same file for every site of a multisite network, so it is also how you set up a network without repeating the configuration site by site. Add the lines you need above the comment that says “That’s all, stop editing! Happy publishing.” To disable Gutenberg everywhere and leave no settings screen for anyone to touch, which is the usual setup both for a network and for a site you hand over to a client: define( 'NO_GUTENBERG_OPTIONS', array( 'complete' => true ) ); define( 'NO_GUTENBERG_HIDE_SETTINGS', true ); Drop that second line and the settings page is still there, showing the configuration the site is really running, but read only. And if all you want is to lock the screen, leaving the configuration as each site has it stored: define( 'NO_GUTENBERG_LOCK_SETTINGS', true ); NO_GUTENBERG_OPTIONS takes any of the settings on the screen, so a selective setup is written the same way: define( 'NO_GUTENBERG_OPTIONS', array( 'complete' => false, 'disable_post_types' => array( 'post', 'page' ), 'disable_roles' => array( 'editor', 'author' ), 'frontend_css' => false, ) ); The keys are the settings on the screen. complete, widgets, patterns, frontend_css, theme_json, site_editor and fse_notices take true or false, while disable_post_types, disable_roles, disable_templates and switch_post_types take an array of slugs, and disable_ids an array of entry IDs. Any key you leave out keeps the value stored on the site. Note that defining NO_GUTENBERG_OPTIONS already turns the whole screen read only, so NO_GUTENBERG_LOCK_SETTINGS is not needed on top of it. It fits sites that: – Work better in the Classic Editor and want it back – Run classic themes and plugins that were never built around blocks – Are paying for block CSS and JavaScript on pages with no blocks in them – Need the Classic Editor for everyone except a few post types, roles or people – Are a multisite network that wants the same editing experience on every site Support Need private support or custom development? Do you need one-on-one help, priority troubleshooting, or a custom feature, integration, or tweak built specifically for your site? I offer private support and custom development. Just contact me and tell me what you need. Need help or have suggestions? Official website WordPress support forum YouTube channel Documentation and tutorials Love the plugin? Please leave us a 5-star review and help spread the word! About AyudaWP We are specialists in WordPress security, SEO, and performance optimization plugins. We create tools that solve real problems for WordPress site owners while maintaining the highest coding standards and accessibility requirements.