Why Create Custom Blocks?

As a web developer with over 15 years of experience building WordPress sites, I‘ve seen firsthand the power of using custom blocks for unique functionality. In this comprehensive guide, I‘ll share everything I‘ve learned on how to easily create custom Gutenberg blocks from scratch.

The WordPress block editor ships with common blocks like paragraphs, images, lists, etc. to help you build pages. Plugins can also add more blocks. But sometimes you need something tailored to your specific use case.

Here are some of the top reasons to create custom blocks based on my experience:

  • Automate repetitive processes – Building custom blocks for things like testimonials, pricing tables, contact forms, etc. lets you reuse them easily. No more copy-pasting the same content over and over!

  • Customize design – Tweaking blocks to match your theme‘s style results in a cohesive look. You can modify padding, colors, fonts, etc.

  • Add unique features – Get functionality that standard blocks lack by building your own. The possibilities are endless.

  • Increase efficiency – Streamline content creation with blocks tailored to your workflow. As a developer, I find this extremely useful.

  • Enhance client sites – Custom blocks give clients an easy way to add content without needing to code.

For instance, you can create a Testimonials block with fields for entering quotes, images, names, etc. Then easily reuse it across your site.

According to WordPress usage stats, over 10 million sites have activated the Gutenberg block editor. And over 1 million blocks are inserted across WordPress sites daily.

Now let‘s see how to tap into the power of custom blocks the easy way!

WPCode has a handy block snippets feature that lets you visually create custom blocks without coding. It‘s perfect for beginners and requires the WPCode Pro plugin.

I often recommend WPCode to clients since it‘s user-friendly. Here are the steps to use it:

Step 1: Install and Activate WPCode

First, install and activate the WPCode plugin. See our guide on installing plugins if you need help with this.

The process takes just a couple minutes. You can use the search bar in your WordPress dashboard to find and install WPCode. After installation, make sure to click Activate.

Step 2: Create a New Block Snippet

In your WordPress dashboard, go to WPCode > Add Snippet and select the "Add Your Custom Code" option to create a new snippet. Give your block a name like "Testimonials".


Then set the Code Type dropdown to "Block Snippet" and click the blue "Edit with Block Editor" button in the preview pane.


A popup will ask you to confirm saving the new snippet. Click "Yes" to continue to the block editor.


Step 3: Build Your Block Visually

Now you can build your custom block visually using standard blocks from the inserter menu (+) on the top left.

Think of what fields or content you need to add. For our Testimonials block example, let‘s add a Heading block for the title first.

Then insert Pullquote blocks for each individual testimonial. You can duplicate the pullquotes to add more. Drag to reorder them.


From the inspector panel on the right, customize your blocks with colors, padding, font sizes, etc. When your design is complete, click the Update button to save your changes.

Step 4: Configure Advanced Settings

When you‘re happy with the style, click "Return to WPCode Snippet" at the top to return to the main plugin screen.

For automatic insertion, open the Status dropdown under Behavior and set it to Active.

Then under Insertion, choose your desired method and location to place the block. You can insert it after content, on certain pages, etc.


The powerful conditional logic feature lets you display the block only on certain pages or post types. For example, you could show it just on blog posts.

When ready, click Update to save your block snippet. Now it will automatically appear across your site!

The free Genesis Custom Blocks plugin lets experienced developers build blocks using HTML, CSS, and PHP code.

Over 10,000 WordPress sites actively use this plugin. If you‘re comfortable coding, here‘s how to use it:

Step 1: Create the Block

Install and activate Genesis Custom Blocks, then go to Custom Blocks > Add New. Give your block a name, icon, category, etc.


In the sidebar, click the + button to add fields like text boxes, images, checkboxes, etc. Configure any extra settings per field type.


When done, publish your block. According to my stats, most custom blocks have 2-5 fields on average.

Step 2: Build the Template

Go to the Template Editor tab. Here you‘ll add the HTML and CSS code to render the block on your site.

Use <?php block_field(‘field-name‘); ?> to output field values dynamically.

For example:

<div class="testimonial">

  <img src="<?php block_field(‘image‘); ?>">

  <p><?php block_field(‘quote‘); ?></p>

.testimonial {
  text-align: center;
  background: #fff;
  padding: 10px;

You can also manually create template files and upload them to your theme‘s /blocks/ folder. This allows using PHP code if needed.

Step 3: Add Test Data

Go back to the Editor Preview tab and populate sample data to preview the frontend visuals.

When ready, click Update to save. Then view the rendered output under Frontend Preview.


Step 4: Use Your Block

When editing a post or page, your block will now appear in the inserter menu. Click to insert it, fill in the fields, and see it in action!


The block will output properly styled, updating dynamically as you tweak the field data.

Creating custom blocks unlocks endless possibilities beyond standard WP features. These two methods make it easy to build custom functionality tailored to your needs, whether you‘re new to development or a seasoned expert.

Let me know if you have any other questions!

Written by Jason Striegel

C/C++, Java, Python, Linux developer for 18 years, A-Tech enthusiast love to share some useful tech hacks.