Как редактировать разметку / добавлять классы в блоки WordPress по умолчанию?

Я создал серию пользовательских блоков для WordPress 5.0.0 и до сих пор наслаждаюсь опытом Гутенберга. Тем не менее, я изо всех сил пытаюсь найти что-нибудь в Интернете, что позволит мне изменить вывод блоков по умолчанию, таких как блок абзаца?

Например, вывод по умолчанию блока абзаца:

<p>Text content</p>

Но я хотел бы изменить это на что-то вроде следующего:

<div class="wrapper">
<p class="my-class">Text Content</p>
</div>

Если я не смогу достичь вышеуказанного, то мне нужно будет заменить блоки по умолчанию на пользовательские, что кажется сумасшедшим, учитывая блоки, которые у них есть.

Благодарю.

1

Решение

Вам нужно использовать editor.BlockEdit крюк изменить компонент редактирования блока.

const { createHigherOrderComponent } = wp.compose;
const { Fragment } = wp.element;
const { InspectorControls } = wp.editor;
const { PanelBody } = wp.components;

const withInspectorControls =  createHigherOrderComponent( ( BlockEdit ) => {
return ( props ) => {
return (
<Fragment>
<BlockEdit { ...props } />
<InspectorControls>
<PanelBody>
My custom control
</PanelBody>
</InspectorControls>
</Fragment>
);
};
}, "withInspectorControl" );

wp.hooks.addFilter( 'editor.BlockEdit', 'my-plugin/with-inspector-controls', withInspectorControls );
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]