Функция unregister_block_style()
используется для отмены регистрации стиля, который ранее был зарегистрирован с помощью функции register_block_style()
. Эта функция работает только с серверами на стороне сервера (через PHP). Стиль, зарегистрированный на стороне клиента с помощью JavaScript, не может быть удален этой функцией, и для этого нужно использовать JavaScript API редактора блоков.
unregister_block_style( string $block_name, string $block_style_name ): bool
Параметры
- $block_name (string, обязательный) — Название блока, включая пространство имен. Например,
'core/quote'
. - $block_style_name (string, обязательный) — Имя стиля блока, который нужно отменить. Это значение должно соответствовать имени, заданному при регистрации стиля.
Возвращаемое значение
- bool — Возвращает
true
, если стиль успешно удалён, иfalse
, если не удалось найти или удалить стиль.
Примечания
- Важно: Функция
unregister_block_style()
удаляет только те стили, которые были зарегистрированы на сервере через PHP с использованиемregister_block_style()
. Она не работает для стилей, зарегистрированных через JavaScript на стороне клиента. - Для удаления стилей, зарегистрированных с помощью JavaScript, необходимо использовать API редактора блоков в клиентском коде.
Пример 1: Удаление стиля блока цитаты
Предположим, что у нас есть стиль fancy-quote
, зарегистрированный для блока цитаты. Этот стиль нужно удалить:
if ( function_exists( 'unregister_block_style' ) ) {
unregister_block_style( 'core/quote', 'fancy-quote' );
}
Этот код удаляет стиль fancy-quote
для блока цитаты (core/quote
).
Пример 2: Удаление стиля для таблицы
Если у блока таблицы (core/table
) есть стиль с именем stripes
, его также можно удалить:
if ( function_exists( 'unregister_block_style' ) ) {
unregister_block_style( 'core/table', 'stripes' );
}
Обратите внимание, что стиль должен быть зарегистрирован на сервере через PHP, иначе его удаление через unregister_block_style()
не сработает.
Пример 3: Удаление стиля через JavaScript
Если стиль был зарегистрирован на стороне клиента (например, через JavaScript), его нужно удалить с помощью API блоков на стороне клиента. Пример на JavaScript:
wp.blocks.unregisterBlockStyle( 'core/table', 'stripes' );
Этот код выполняется в браузере и удаляет стиль stripes
для блока таблицы.
Когда использовать
Функция unregister_block_style()
полезна, если:
- Вам не нужны стандартные стили блоков в редакторе, и вы хотите предоставить свои кастомные стили.
- Вы хотите убрать специфические стили, зарегистрированные сторонними плагинами или темами.
Однако, для стилей, зарегистрированных через JavaScript, нужно использовать соответствующие JavaScript API.
Полезные советы
- Регистрируйте и удаляйте стили с умом: Перед удалением стандартных стилей убедитесь, что пользователи действительно в них не нуждаются.
- Убедитесь, что стиль существует: Проверьте, был ли зарегистрирован стиль перед его удалением. Это предотвратит ошибки в коде.
Связанные функции
- register_block_style() — Регистрирует новый стиль для блока.
- wp.blocks.unregisterBlockStyle() — JavaScript функция для удаления стиля на стороне клиента.
Заключение
Функция unregister_block_style()
предоставляет гибкость в управлении стилями блоков, позволяя удалять ненужные или конфликтующие стили. Если стили были зарегистрированы через PHP, их можно легко удалить с помощью этой функции. Если стили зарегистрированы через JavaScript, их нужно удалять через соответствующие JavaScript API.