WordPress Q&As Logo
WordPress Q&As Part of the Q&A Network
Real Questions. Clear Answers.
Ask any question about WordPress here... and get an instant response.
Q&A Logo Q&A Logo

How can I create a custom Gutenberg block for my theme?

Asked on Oct 22, 2025

Answer

Creating a custom Gutenberg block involves using JavaScript and WordPress's block editor API to define the block's functionality and appearance. This process typically requires setting up a development environment with Node.js and npm.
<!-- BEGIN COPY / PASTE -->
    // Step 1: Set up your environment
    // Run these commands in your theme's directory
    npm init -y
    npm install @wordpress/scripts --save-dev

    // Step 2: Create a block
    // Create a new file in your theme, e.g., my-block.js
    import { registerBlockType } from '@wordpress/blocks';
    import { RichText } from '@wordpress/block-editor';

    registerBlockType('mytheme/my-block', {
      title: 'My Custom Block',
      icon: 'smiley',
      category: 'common',
      attributes: {
        content: {
          type: 'string',
          source: 'html',
          selector: 'p',
        },
      },
      edit: ({ attributes, setAttributes }) => {
        const onChangeContent = (content) => {
          setAttributes({ content });
        };

        return (
          <RichText
            tagName="p"
            onChange={onChangeContent}
            value={attributes.content}
          />
        );
      },
      save: ({ attributes }) => {
        return <RichText.Content tagName="p" value={attributes.content} />;
      },
    });

    // Step 3: Build the block
    // Add a script in package.json to build your block
    // "scripts": {
    //   "build": "wp-scripts build my-block.js"
    // }
    // Run npm run build to compile your block
    <!-- END COPY / PASTE -->
Additional Comment:
  • Ensure you have Node.js and npm installed on your system to manage dependencies and build processes.
  • Use the WordPress block editor's documentation to explore additional block features and customization options.
  • Register your block's script and style in WordPress using the "enqueue_block_editor_assets" action hook.
  • Consider using the WordPress Block Editor Handbook for more detailed guidance on block development.
✅ Answered with WordPress best practices.

← Back to All Questions

Q&A Network
The Q&A Network
WordPress
Ask Questions / Get Answers about WordPress!
CSS
Ask Questions / Get Answers about CSS!
IoT
Ask Questions / Get Answers about IoT!
AI Ethics
Ask Questions / Get Answers about AI Ethics!
Creative Writing
Ask Questions / Get Answers about Creative Writing!
Tailwind
Ask Questions / Get Answers about Tailwind!
Cloud Computing
Ask Questions / Get Answers about Cloud Computing!
Analytics
Ask Questions / Get Answers about Analytics!
AI Education
Ask Questions / Get Answers about AI Education!
Networking
Ask Questions / Get Answers about Networking!
AI Coding
Ask Questions / Get Answers about AI Coding!
Video Editing
Ask Questions / Get Answers about Video Editing!
HTML
Ask Questions / Get Answers about HTML!
AI Video
Ask Questions / Get Answers about AI Video!
AI Writing
Ask Questions / Get Answers about AI Writing!
DevOps
Ask Questions / Get Answers about DevOps!
Data Science
Ask Questions / Get Answers about Data Science!
AI
Ask Questions / Get Answers about AI!
Performance
Ask Questions / Get Answers about Web Vitals!
JavaScript
Ask Questions / Get Answers about JavaScript!
AI Design
Ask Questions / Get Answers about AI Design!
AI Marketing
Ask Questions / Get Answers about AI Marketing!
Web Languages
Ask Questions / Get Answers about Web Languages!
Web Development
Ask Questions / Get Answers about Web Development!
Photography
Ask Questions / Get Answers about Photography!
Security
Ask Questions / Get Answers about Website Security!
AI Images
Ask Questions / Get Answers about AI Images!
Chatbots
Ask Questions / Get Answers about Chatbots!
AI Business
Ask Questions / Get Answers about AI Business!
UI/UX Design
Ask Questions / Get Answers about UI/UX Design!
Quantum
Ask Questions / Get Answers about Quantum Computing!
Monetization
Ask Questions / Get Answers about Ad & Monetization!
MobileDev
Ask Questions / Get Answers about Mobile Developement!
AI Audio
Ask Questions / Get Answers about AI Audio!
Film Production
Ask Questions / Get Answers about Film Production!
VR & AR
Ask Questions / Get Answers about VR & AR!
Robotics
Ask Questions / Get Answers about Robotics!
Web Hosting
Ask Questions / Get Answers about Hosting!
SEO
Ask Questions / Get Answers about SEO!
Bootstrap
Ask Questions / Get Answers about Bootstrap!
Graphic Design
Ask Questions / Get Answers about Graphic Design!
Cybersecurity
Ask Questions / Get Answers about Cybersecurity!