Gutenberg Blocks for WordPress and React Developers
What you'll learn
- Learn about the block editor design guidelines.
- Discover how the block editor saves your post in the database and how the editor UI is constructed.
- Learn how to use wp-scripts to transpile ES6 and JSX, compile SASS to CSS, bundle and minify your JS and CSS files and more.
- Integrate ESLint, Prettier, Stylelint and Husky in your project to improve your workflow.
- Create a new custom Gutenberg block from scratch.
- Customize the block editor features in your WordPress theme.
- Discover every aspect you need to know to create a complex Gutenberg block.
- Create a nested block (a block that accepts other blocks inside of it).
- Use third party react libraries to create complex features.
- Learn about handling deprecated blocks.
- Learn how to transform your custom block into another block.
- Create a dynamic block.
- Explore how to use the existing data stores in your blocks.
- Learn how to create your own data stores stores in order to share data between blocks.
- Learn different ways to manage meta fields in the block editor.
- Learn how to create a custom sidebar in the block editor and manage your meta fields inside of it.
- Learn how to extend the existing block editor's sidebar.
- Learn about features like patterns, context, formatting API and templates.
- Internationalize blocks by generating and loading translation files.
- You should be familiar with WordPress development.
- You should be familiar with ReactJS Basic Concepts.
- Redux Knowledge is Preferable
- Any code editor you are comfortable with, I will use VS Code in this code.
- A local server like MAMP, WAMP, XAMPP, Laragon or any other software you are familiar with. I will use MAMP through out this course.
- NodeJS and NPM or Yarn installed on your machine.
Recently WordPress decided to change their old WYSIWYG editor into a new ReactJS based block editor known as 'Gutenberg'. Gutenberg also known as the block editor is based on blocks. So your post will be composed of some blocks and each block will have a purpose. You can have a block that displays a button or an image or some text and so on.
In this course you will learn everything you need to know in order to create custom blocks for the block editor. We will start by a simple block and then we will create some more complex blocks.
The course content will go as follows:
First and before any coding we will discuss some design guidelines that you should follow when designing a block.
We will take a look on how your Gutenberg post is saved in your database and what happens behind the scenes in order to construct your ReactJS based UI from the content saved in the database.
In Section 2, we will create a WordPress plugin. Inside this plugin we will register out first Gutenberg block. We will also use a tool provided by WordPress called wp-scripts in order to process JS and CSS files in this plugin. We will also integrate tools like ESLint, Prettier, Stylelint and Husky for an improved development workflow.
In section 3, we will take a quick look on some stuff that you can do in your WordPress theme that will allow you to modify/add some features in the block editor.
In section 4 we will create a simple block. However in this simple block we will learn a lot about what we can do in a block.
In section 5 we will use our knowledge to create a more complex block with some advanced features. These features include how to add blocks inside of other blocks, how to handle images and many more.
Section 6 will be about creating dynamic blocks. So blocks can be static or in other words only generate some static HTML. But also they can be dynamic for example they can fetch something from the database.
Section 7 will discover more about the redux-like data stores in the block editor. We will see how to use the existing data stores and also create our own store.
Section 8 we will see different ways that we can follow in order to manage metadata in Gutenberg. We will manage metadata using a block. And we will also learn how to create a custom sidebar plugin and manage metadata in this sidebar.
In the final section we are going to discuss various topics like: context, patterns, templates, formatting API, filters and internationalization.
Who this course is for:
- WordPress theme/plugin developers who are familiar with ReactJS and want to create Gutenberg blocks from scratch.
- Anybody with some WordPress and ReactJS experience who wants to know everything about the Gutenberg editor.
Hey there! I am Ali Alaa, a front-end web developer. Years ago I discovered my interest in web development, especially the front-end side. I started exploring the field from HTML/CSS/JS to WordPress theming and JS frameworks. I have been working as a front-end developer for more than 8 years. After all these years, I decided to start creating on udemy and share my knowledge with you.