Intereting Posts
Сделать Next и Previous на single- $ posttype.php использовать тот же порядок, что и archive- $ posttype.php как иметь только один пост post post post? Archive.php отфильтровано по заранее определенной категории как создать дополнительную кнопку на странице одного продукта Когда WP игнорирует контент, добавленный через внутренний редактор? Лучший способ фильтровать выделенный текст изображения для пользовательского типа сообщения? Сделайте «Опубликован». Посмотреть сообщение "Открыть в новой вкладке Замена для функции gallery_shortcode не принимает все атрибуты Разница между is_user_logged_in и $ _session При отправке более 200 меню я получаю «Услуга временно недоступна», Организовать существующие сообщения из области администрирования в новую категорию Найдите метод, который AJAX GET вызывает IF .. post meta show … Справка условного тега …? Скрыть виджет (и пробел) по конкретному разрешению Показывать Thickbox (tb_show) ничего не делает

Что касается фильтрации текстовых сообщений

Что делает это утверждение на самом деле?

$text = apply_filters('the_content', $text); 

Из этого следует только следующее:

 $text = get_the_content(''); $text = strip_shortcodes( $text ); 

Какие фильтры применяются здесь?

Solutions Collecting From Web of "Что касается фильтрации текстовых сообщений"

Обычный способ показать содержимое сообщения в цикле – использовать:

 the_content(); 

который будет выводить результат, а не возвращать его как get_the_content() .

Но поскольку вы хотите назначить его переменной $text , вы используете:

 $text = get_the_content(''); 

но тогда выходной фильтр the_content не применяется.

Вот почему у вас есть эта строка:

 $text = apply_filters('the_content', $text); 

потому что он будет фильтровать $text через все обратные вызовы, зарегистрированные в фильтре the_content .

Вы всегда можете многому научиться из чтения источника напрямую. Функция the_content() определяется как:

 function the_content( $more_link_text = null, $strip_teaser = false) { $content = get_the_content( $more_link_text, $strip_teaser ); $content = apply_filters( 'the_content', $content ); $content = str_replace( ']]>', ']]>', $content ); echo $content; } 

Вы можете проверить все обратные вызовы, зарегистрированные в фильтре the_content с помощью:

 add_action( 'wp_footer', function(){ printf( '<h3>Debug:</h3><pre>%s</pre>', print_r( $GLOBALS['wp_filter']['the_content'], TRUE ) ); }); 

Это даст вам выход в нижней части вашей страницы, аналогично этому:

 <h3>Debug:</h3> <pre>Array ( [10] => Array ( [wptexturize] => Array ( [function] => wptexturize [accepted_args] => 1 ) [convert_smilies] => Array ( [function] => convert_smilies [accepted_args] => 1 ) [convert_chars] => Array ( [function] => convert_chars [accepted_args] => 1 ) [wpautop] => Array ( [function] => wpautop [accepted_args] => 1 ) [shortcode_unautop] => Array ( [function] => shortcode_unautop [accepted_args] => 1 ) [prepend_attachment] => Array ( [function] => prepend_attachment [accepted_args] => 1 ) ) [11] => Array ( [capital_P_dangit] => Array ( [function] => capital_P_dangit [accepted_args] => 1 ) [do_shortcode] => Array ( [function] => do_shortcode [accepted_args] => 1 ) ) ) 

где номера ключей массива являются приоритетными для фильтра.