Мне удалось создать пользовательский блок Гутенберга в WordPress, и я создал секцию панели для хранения всех опций моих блоков.
Тем не менее, я очень новичок, чтобы отреагировать, и мне удалось собрать все вместе. Я пытаюсь дать этому выбрать исходное состояние, а также сохранить состояние при изменении.
Я знаю, что мне нужно что-то сделать с помощью State, но я не уверен, что вижу, что мое обещание не выполняется, но я не знаю, почему.
// Block Options
const withInspectorControls = createHigherOrderComponent( ( BlockEdit ) => {
return (props) => {
const size = {size:"display-2"};
return (
<Fragment>
<BlockEdit { ...props } />
<InspectorControls>
<PanelBody title="Display Block Settings"
icon="welcome-widgets-menus"
initialOpen={ true }
>
<SelectControl
label="Display Size"
value={size}
options={[
{ label: 'Display 1', value: 'display-1' },
{ label: 'Display 2', value: 'display-2' },
{ label: 'Display 3', value: 'display-3' },
{ label: 'Display 4', value: 'display-4' },
]}
onChange={ ( size ) => { setState( { size:size } ) } }
/>
</PanelBody>
</InspectorControls>
</Fragment>
);
};
}, "withInspectorControl" );
wp.hooks.addFilter( 'editor.BlockEdit', 'display-heading/with-inspector-controls', withInspectorControls );