В этой записи поговорим о том, как создать простой шорткод в плагине или теме, а так же рассмотрим как его удалить.
Создание шорткода
Вы можете добавить собственный шорткод используя API шорткодов. Процесс добавления включает в себя: название шорткода — первый аругемент, второй — это callback функция, которая будет вызываться при его обработке. Для создания использоуйте функцию add_shortcode().
<?php add_shortcode( string $tag, callable $func );
В теме:
<?php function bologer_shortcode($atts = [], $content = null) { // делайте что-то с $content // и возвращайте return $content; } add_shortcode('bologer', 'bologer_shortcode');
[bologer]
— это ваш новый шорт код. Используя этот шорткод, вы запустите функцию bologer_shortcode()
.
В плагине
Плагин запускается раньше, чем тема, тем самым требуется больше времени, чтобы WordPress обработал шорткод.
В таком случае, лучше всего использовать хук init.
<?php function bologer_shortcodes_init() { function bologer_shortcode($atts = [], $content = null) { // делаем что-то с $content // и возвращаем return $content; } add_shortcode('bologer', 'wporg_shortcode'); } add_action('init', 'bologer_shortcodes_init');
Удаляем шорткод
У вас конечно же есть возможность удалить шорткод, сделать это можно с шорткод API. Процесс включает в себя регистрацию $tag
в remove_shortcode().
<?php remove_shortcode( string $tag );
Самое главное, чтобы шорткод был зарегистрирован раньше, чем вы пытаетесь его удалить.
Проверка на существование шорткода
Проверить существование шорткода можно функцией shortcode_exists().