Intereting Posts
Пользовательская постоянная ссылка Разрывы тегов Pagination Настройка сети wordpress с доменами третьего уровня Как настроить страницу по умолчанию на плагине? Как отобразить значение настраиваемых полей на странице Как продлить один плагин, который я пишу другим, я пишу, используя классы? Импорт пользовательских сообщений WordPress в RSS WP-CLI методы для get_current_blog_id, get_blog_details или $ wpdb-> prefix Где WordPress регистрирует сценарии по умолчанию, такие как jQuery? wp_create_category устарела? Расширить класс Walker Class для выбора таксономии флажка? Как создать плейлист для звука, связанного с сообщениями по категориям Последние сообщения и последние сообщения отображаются по-разному Получить имя и адрес электронной почты текущего незарегистрированного пользователя, который недавно отправил имя и адрес электронной почты в форме комментариев? как создать статическую главную страницу для моего блога в wordpress WP_Query Сортировка сообщений, основанных на количестве соответствующих пользовательских таксономий.

preg_replace на все содержимое HTML в WordPress

Я хотел бы иметь возможность удалить материал из HTML страницы, например. заменяя все комментарии в теге body или удаляя som ненужный код.

Есть ли способ создать такой фильтр, чтобы получить все содержимое страницы? не только содержимое сообщения, все содержимое с нижним колонтитулом, главной, боковой панелью, заголовком и т. д.

WordPress не имеет фильтра «окончательного вывода».

Просто google search Я нашел интересный ответ от Stack Overflow.

Все кредиты идут в @kfriend

Подробнее (ссылка вопроса SO): фильтр WordPress для изменения окончательного вывода html

<?php /** * Output Buffering * * Buffers the entire WP process, capturing the final output for manipulation. */ ob_start(); add_action('shutdown', function() { $final = ''; // We'll need to get the number of ob levels we're in, so that we can iterate over each, collecting // that buffer's output into the final output. $levels = ob_get_level(); for ($i = 0; $i < $levels; $i++) { $final .= ob_get_clean(); } // Apply any filters to the final output echo apply_filters('final_output', $final); }, 0); 

Пример подключения к фильтру final_output:

 <?php add_filter('final_output', function($output) { return str_replace('foo', 'bar', $output); }); ?>