https://github.com/hametuha/wp-block-creator
Gutenberg Block Creator for WordPress themes.
https://github.com/hametuha/wp-block-creator
block-editor wordpress wordpress-library
Last synced: 12 months ago
JSON representation
Gutenberg Block Creator for WordPress themes.
- Host: GitHub
- URL: https://github.com/hametuha/wp-block-creator
- Owner: hametuha
- License: gpl-3.0
- Created: 2019-07-17T12:05:08.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-04-16T05:23:54.000Z (about 2 years ago)
- Last Synced: 2025-06-19T22:04:18.907Z (12 months ago)
- Topics: block-editor, wordpress, wordpress-library
- Language: PHP
- Homepage: https://packagist.org/packages/hametuha/wp-block-creator
- Size: 31.3 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WP Block Creator
Gutenberg Block Creator for themes.
[](https://github.com/hametuha/wp-block-creator/actions/workflows/wordpress.yml)
## Installation
```bash
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](https://www.php-fig.org/psr/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
"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](https://github.com/hametuha/wp-enqueue-manager). Write proper header like below:
```js
/*!
* Header description here.
*
* deps=jquery,wp-element,wp-api-fetch
*/
```
```css
/**
* Header comment.
*
* deps=bootstrap
*/
```
For more details, see [README.md](https://github.com/hametuha/wp-enqueue-manager) of `wp-enqueue-manager`.
## License
GPL 3.0 or later. Compatible with WordPress.