PHP code example of alleyinteractive / wp-block-converter
1. Go to this page and download the library: Download alleyinteractive/wp-block-converter library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
alleyinteractive / wp-block-converter example snippets
use Alley\WP\Block_Converter\Block_Converter;
$converter = new Block_Converter( '<p>Some HTML</p>' );
$blocks = $converter->convert(); // Returns a string of converted blocks.
use Alley\WP\Block_Converter\Block;
add_filter( 'wp_block_converter_block', function ( Block $block, \DOMElement $node ): ?Block {
// Modify the block before it is serialized.
$block->content = '...';
$block->blockName = '...';
$block->attributes = [ ... ];
return $block;
}, 10, 2 );
$converter = new Block_Converter( '<p>Some HTML <img src="https://example.org/" /></p>' );
$blocks = $converter->convert();
// Get the attachment IDs that were created.
$attachment_ids = $converter->get_created_attachment_ids();
// Attach the images to a post.
$parent_id = 123;
$converter->assign_parent_to_attachments( $parent_id );
use Alley\WP\Block_Converter\Block_Converter;
use Alley\WP\Block_Converter\Block;
Block_Converter::macro( 'special-tag', function ( \DOMNode $node ) {
return new Block( 'core/paragraph', [], $node->textContent );
} );
// You can also use the raw HTML with a helper method from Block Converter:
Block_Converter::macro( 'special-tag', function ( \DOMNode $node ) {
return new Block( 'core/paragraph', [], Block_Converter::get_node_html( $node ) );
} );
use Alley\WP\Block_Converter\Block_Converter;
use Alley\WP\Block_Converter\Block;
Block_Converter::macro( 'p', function ( \DOMNode $node ) {
if ( special_condition() ) {
return new Block( 'core/paragraph', [ 'attribute' => 123 ], 'This is a paragraph' );
}
return Block_Converter::p( $node );
} );
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.