хук-фильтр since 6.9.0

wp_template_enhancement_output_buffer

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

apply_filters( 'wp_template_enhancement_output_buffer', string $filtered_output, string $output )

Описание

Этот фильтр применяется только к HTML-выводу подключённого шаблона. Он представляет собой прогрессивное улучшение, предназначенное для таких задач, как оптимизация разметки для повышения производительности загрузки страниц публичной части. Сайты не должны полагаться на применение этого фильтра, поскольку вместо этого может быть выбрана потоковая передача ответов. Функциям обратного вызова этого фильтра настоятельно не рекомендуется использовать регулярные выражения для какой-либо замены в выводе. Используйте HTML API (либо WP_HTML_Tag_Processor, либо WP_HTML_Processor) или же DOM\HtmlDocument начиная с PHP 8.4, который полностью поддерживает HTML5.
Не выводите ничего во время работы этого фильтра. Хотя фильтры обычно ничего не выводят, здесь это особенно важно, поскольку фильтр применяется во время работы функции обратного вызова буфера вывода. До PHP 8.5 вывод будет молча опущен, а начиная с этой версии будет выдано уведомление об устаревании.
Важно: поскольку этот фильтр применяется внутри функции обратного вызова буфера вывода (то есть обработчика вывода), любые добавленные к фильтру функции обратного вызова не должны пытаться запускать собственные буферы вывода. В противном случае PHP выдаст фатальную ошибку: «Cannot use output buffering in output buffering display handlers.»

Оригинал (английский)

This filter only applies the HTML output of an included template. This filter is a progressive enhancement intended for applications such as optimizing markup to improve frontend page load performance. Sites must not depend on this filter applying since they may opt to stream the responses instead. Callbacks for this filter are highly discouraged from using regular expressions to do any kind of replacement on the output. Use the HTML API (either WP_HTML_Tag_Processor or WP_HTML_Processor), or else use DOM\HtmlDocument as of PHP 8.4 which fully supports HTML5.

Do not print any output during this filter. While filters normally don’t print anything, this is especially important since this applies during an output buffer callback. Prior to PHP 8.5, the output will be silently omitted, whereas afterward a deprecation notice will be emitted.

Important: Because this filter is applied inside an output buffer callback (i.e. display handler), any callbacks added to the filter must not attempt to start their own output buffers. Otherwise, PHP will raise a fatal error: “Cannot use output buffering in output buffering display handlers.”

Фильтруемое значение

Буфер вывода улучшения HTML-шаблона.

Параметры

$filtered_output string обязательный
Буфер вывода улучшения HTML-шаблона.
$output string обязательный
Исходный буфер вывода HTML-шаблона.

Исходный код

wp-includes/template.php:1019

$filtered_output = (string) apply_filters( 'wp_template_enhancement_output_buffer', $filtered_output, $output );

История изменений

ВерсияОписание
6.9.0 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.