Удаление кавычек из шорткода Wordpress, вставленного в текстовую область

Я добавил шорткод на страницу через настраиваемое текстовое поле в моем админке Wordpress, но шорткод отображается как текст и заключен в кавычки, поэтому он не работает.

введите описание изображения здесь

Вот как я дезинфицирую свой ввод:

if( isset( $input['textarea_input'] ) )
        $new_input['textarea_input'] = sanitize_text_field( $input['textarea_input'] );

Вот как я вывожу его на страницу:

<?php echo $options['textarea_input']; ?>

do_shortcode ничего не меняет

<?php echo do_shortcode($options['textarea_input']); ?>

Я предполагаю, что редактор Wordpress TinyMCE распознает шорткод и поэтому работает. Поскольку мой добавляется через скрытую текстовую область, он отображается как обычный текст. Что делает редактор TinyMCE, чем я не занимаюсь? Я хочу


person piggypig    schedule 17.10.2014    source источник
comment
Вы повторяете строку. Я думаю, вы ищете do_shortcode ()   -  person rnevius    schedule 17.10.2014
comment
Спасибо @rnevius, do_shortcode () не работает. Я обновил свой ответ.   -  person piggypig    schedule 17.10.2014


Ответы (1)


Правильно, редактор Wordpress сохраняет контент через фильтр the_content. Этот фильтр используется для фильтрации содержимого сообщения после его извлечения из базы данных и перед выводом на экран. Примените этот фильтр для имитации форматирования TinyMCE.

<?php echo apply_filters( 'the_content', $options['textarea_input']); ?>
person Tim    schedule 08.11.2014