BlockVerticalAlignmentToolbar в WordPress — это мощный React-компонент, позволяющий разработчикам легко задавать вертикальное выравнивание контента в блоках. Будучи дочерним элементом BlockControls
, он предоставляет функциональность для установки выравнивания верхнего, среднего или нижнего уровня, наподобие того, как работает AlignmentToolbar
.
Использование BlockVerticalAlignmentToolbar
Компонент BlockVerticalAlignmentToolbar
позволяет пользователям гибко управлять выравниванием контента. Это делает возможным создание насыщенных и интуитивно понятных интерфейсов, что особенно полезно в компонентах, где требуется точное управление отображением контента.
Пример реализации
Давайте рассмотрим пример, чтобы понять, как можно интегрировать этот компонент в Gutenberg блок:
import { registerBlockType } from '@wordpress/blocks';
import { __ } from '@wordpress/i18n';
import {
useBlockProps,
BlockControls,
BlockVerticalAlignmentToolbar
} from '@wordpress/block-editor';
import './editor.scss';
const BLOCK_ID = 'my-unique-vertical-align-block';
const BLOCK_NAMESPACE = `custom-blocks/${BLOCK_ID}`;
registerBlockType(BLOCK_NAMESPACE, {
apiVersion: 2,
title: __('Vertical Align Block', 'custom-blocks'),
description: __('Block with vertical alignment option', 'custom-blocks'),
category: 'layout',
icon: 'align-center',
attributes: {
verticalAlign: {
type: 'string',
default: 'top'
}
},
edit: ({ attributes, setAttributes }) => {
const blockProps = useBlockProps();
const onChangeAlignment = (newAlignment) => {
setAttributes({ verticalAlign: newAlignment });
};
return (
<div {...blockProps}>
<BlockControls>
<BlockVerticalAlignmentToolbar
value={attributes.verticalAlign}
onChange={onChangeAlignment}
/>
</BlockControls>
<p>{__('This is a vertically aligned block', 'custom-blocks')}</p>
</div>
);
},
save: ({ attributes }) => {
return (
<div style={{ verticalAlign: attributes.verticalAlign }}>
<p>{__('This is a vertically aligned block', 'custom-blocks')}</p>
</div>
);
},
});
Интеграция
BlockVerticalAlignmentToolbar
в блок не только добавляет функциональность, но и улучшает пользовательский интерфейс, делая его более гибким и дружественным.
Применение и стилизация
Для обеспечения визуальной согласованности вашего блока в редакторе используйте CSS стили. Это можно сделать путем импорта собственного файла стилей, например, editor.scss
. Это важно, чтобы компонент выглядел и работал предсказуемо в редакторе и на фронтенде.
Заключение
BlockVerticalAlignmentToolbar — это важный инструмент для гибкой настройки вертикального выравнивания в Gutenberg блоках. Благодаря простоте интеграции и эффективности, он остается необходимым компонентом в арсенале разработчиков WordPress, стремящихся к созданию дружественных к пользователю интерфейсов.