Skip to content

Convert to Blocks is a WordPress plugin that transforms classic editor content to blocks on the fly.

License

Notifications You must be signed in to change notification settings

10up/convert-to-blocks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

33e93ab · Aug 20, 2024
Jul 19, 2024
Dec 15, 2023
Jul 2, 2024
Sep 15, 2020
Jul 12, 2024
May 10, 2024
Jun 8, 2023
Sep 15, 2020
Mar 10, 2023
Sep 15, 2020
May 14, 2024
Sep 15, 2020
Mar 29, 2024
Aug 4, 2023
Oct 5, 2023
Aug 20, 2024
Sep 23, 2020
Dec 16, 2022
Aug 19, 2024
Sep 15, 2020
Aug 14, 2024
Sep 15, 2020
May 13, 2024
Jan 11, 2024
Aug 19, 2024
Aug 19, 2024
Aug 19, 2024
Aug 19, 2024
Jul 9, 2024
Sep 15, 2020
Oct 9, 2020
Aug 20, 2024
May 14, 2024

Repository files navigation

Convert to Blocks

Transforms classic editor content to blocks on-the-fly.

Support Level WordPress Plugin Required PHP Version WordPress Plugin: Required WP Version WordPress Plugin: Tested WP Version GPL-2.0-or-later License WordPress Plugin Version

E2E test Linting Dependency Review

Overview

Convert to Blocks is a WordPress plugin that transforms classic editor content to blocks on-the-fly. After installing Gutenberg or upgrading to WordPress 5.0+, your content will be displayed in "Classic Editor Blocks". While these blocks are completely functional and will display fine on the frontend of your website, they do not empower editors to fully make use of the block editing experience. In order to do so, your classic editor posts need to be converted to blocks. This plugin does that for you "on the fly". When an editor goes to edit a classic post, the content will be parsed into blocks. When the editor saves the post, the new structure will be saved into the database. This strategy reduces risk as you are only altering database values for content that needs to be changed.

When combined with the Block Catalog Plugin, Convert to Blocks can be used to bulk convert only classic editor content to blocks. This is especially useful for sites with a combination of classic and block editor content.

Bulk migration of Classic Editor items to the Block Editor

The wp convert-to-blocks start WP-CLI command that converts posts iteratively in the browser without requiring any manual input. One caveat worth mentioning is that Gutenberg is a CPU intensive application. You will want to keep your computer plugged in before doing this!

Demo of WP-CLI command

Requirements

  • Inner Blocks Transforms is only supported with the Gutenberg Plugin 10.9.0+

Installation

  1. Clone the repository into your /plugins directory.
  2. Inside the repository directory, run npm install and then npm run build.
  3. Inside the repository directory, run composer install.

Command Line Options

NAME

  wp convert-to-blocks start

DESCRIPTION

  Starts a new Migration. The command prints the URL that must be opened in a browser to connect it to the WP CLI.

SYNOPSIS

  wp convert-to-blocks start [--post_type=<post_type>] [--per_page=<per_page>] [--page=<page>] [--only=<only>] [--catalog] [--reset]

OPTIONS

  [--post_type=<post_type>]
    Optional comma delimited list of post types to migrate. Defaults to post,page

  [--per_page=<per_page>]
    Optional number of posts to migrate per batch. Defaults to no limit. Combine with --page to paginate.

  [--page=<page>]
    Optional page number to start migration from. Defaults to 1.

  [--only=<only>]
    Optional comma delimited list of post ids to migrate.

  [--catalog]
    Optional flag to only migrate classic editor tagged posts. Requires that Block
    Catalog plugin is present and has been indexed.

  [--reset]
    Stops any currently running migration and resets the migration state.

NAME

  wp convert-to-blocks stop

DESCRIPTION

  Stops the currently running migration if active.

NAME

  wp convert-to-blocks status

DESCRIPTION

  Prints the status of the currently running migration.

Frequently Asked Questions

How Do I Know It's Working?

Find a classic editor in the post, try to navigate away from the page. You will get an error saying your changes will be discarded. This is because Convert to Blocks converted your content to blocks on the fly and those changes will be saved when you update the post.

Will Convert to Blocks Handle My Custom Blocks?

By default it will not.

Will Convert to Blocks Handle Nested Blocks?

Nested / Inner Block support does not work with Gutenberg bundled with WordPress Core <=5.7.2. This feature needs the Gutenberg Plugin >=10.9.0.

Support Level

Stable: 10up is not planning to develop any new features for this, but will still respond to bug reports and security concerns. We welcome PRs, but any that include new features should be small and easy to integrate and should not include breaking changes. We otherwise intend to keep this tested up to the most recent version of WordPress.

Changelog

A complete listing of all notable changes to Convert to Blocks are documented in CHANGELOG.md.

Contributing

Please read CODE_OF_CONDUCT.md for details on our code of conduct, CONTRIBUTING.md for details on the process for submitting pull requests to us, and CREDITS.md for a listing of maintainers of, contributors to, and libraries used by Convert to Blocks.

Like what you see?