hametuha / wp-block-creator
Gutenberg Block Creator for WordPress themes.
Installs: 9 229
Dependents: 1
Suggesters: 0
Security: 0
Stars: 5
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- php: >=7.2
- hametuha/singleton-pattern: ^1.2
- hametuha/string-utility: ^1.2
- hametuha/wp-enqueue-manager: ^1.2
Requires (Dev)
README
Gutenberg Block Creator for themes.
Installation
composer require hametuha/wp-block-creator
How to Use
Suppose your theme:
- Use [wp-enqueue-manager] ready headers.
- Your theme's PHP is ready for PSR-0.
- Every block inherits
Hametuha\WpBlockCreator\Patter\AbstractBlock
. - Directory structure is like below.
your-theme
├src/YourTeam/YourTheme/Blocks
│├ExampleBlock.php
│└AnotherBlock.php
└dist
├css/blocks
│├example-block.css
│└another-block.css
└js/blocks
├example-block.js
└another-block.js
Then, call static method in your functions.php
.
<?php // Register blocks assets. \Hametuha\WpBlockCreator::register( [ 'namespace' => "YourTeam\\YourTheme\\Blocks", 'dir' => get_template_directory() . '/src/YourTeam/YourTheme/Blocks', 'scripts' => get_template_directory() . '/dist/js/blocks', 'styles' => get_template_directory() . '/dist/css/blocks', 'prefix' => 'your-theme-', ] );
Now all block will be automatically included. You don't have to load 1 by 1. Add new block anytime you want.
Every JavaScripts and Stylesheets will be resgistered with the power of wp-enqueue-manager. Write proper header like below:
/*! * Header description here. * * deps=jquery,wp-element,wp-api-fetch */
/** * Header comment. * * deps=bootstrap */
For more details, see README.md of wp-enqueue-manager
.
License
GPL 3.0 or later. Compatible with WordPress.