Удаление всех шорткодов в WordPress с помощью функции REMOVE_ALL_SHORTCODES()
Функция REMOVE_ALL_SHORTCODES() предназначена для очистки всех шорткодов в содержимом вашей страницы или поста. Давайте разберем, как она работает, и как ее можно использовать.
Что такое шорткоды?
Шорткоды — это специальные теги, которые позволяют добавлять различные функции и элементы в контент WordPress. Например, с помощью шорткода можно встроить галерею изображений или видеоплеер.
Функция REMOVE_ALL_SHORTCODES()
Эта функция удаляет все шорткоды, заменяя глобальный массив шорткодов на пустой. Это эффективный способ полностью очистить ваш контент от шорткодов.
Возвращаемое значение
null— функция ничего не возвращает.
Синтаксис
remove_all_shortcodes();
Примеры использования
Пример 1: Отключение всех шорткодов в WordPress
Предположим, вы хотите, чтобы ни один шорткод не работал в вашем контенте. Для этого добавьте следующий код в файл вашей темы functions.php:
// отключить все шорткоды
add_action( 'wp_loaded', function(){
    remove_all_shortcodes();
} );
Пример 2: Применение только одного пользовательского шорткода
Если вам нужно оставить только один шорткод в тексте, вы можете сделать следующее:
- Сохраните все текущие шорткоды.
 - Удалите все шорткоды.
 - Зарегистрируйте свой собственный шорткод.
 - Примените шорткоды к тексту.
 - Восстановите оригинальные шорткоды.
 
Вот пример кода:
function shortcode_hack( $text ) {
    global $shortcode_tags;
    // сохранить текущие шорткоды
    $save = $shortcode_tags;
    remove_all_shortcodes();
    add_my_shortcode(); // ваша функция для добавления шорткода
    $text = apply_shortcodes( $text );
    // восстановить шорткоды
    $shortcode_tags = $save;
    return $text;
}
Важные заметки
- Глобальный массив: 
$shortcode_tags— это глобальный массив, содержащий все шорткоды, которые зарегистрированы в WordPress. 
Изменения
- С версии 2.5.0: функция была введена в систему.
 
Связанные функции
- add_shortcode() — для добавления нового шорткода.
 - apply_shortcodes() — для применения всех шорткодов к тексту.
 - do_shortcode() — для выполнения одного конкретного шорткода.
 - has_shortcode() — для проверки наличия шорткода в тексте.
 
Эта функция полезна, когда вам нужно полностью избавиться от шорткодов или оставить только один. Вы можете использовать ее для упрощения контента или для создания специфических визуальных эффектов.