Я видел, wp_headersи send_headersоба использовали раньше для одного и того же, и мне интересно, как вы думаете, какой из них использовать и когда ...
На send_headersстранице кодекса есть пример добавления X-UA-Compatible: IE=edge,chrome=1обратной совместимости для Internet Explorer, так как метатег часто дает сбой на сайтах интрасети, если загружается слишком поздно .
Вот как send_headersвыглядит пример:
add_action( 'send_headers', 'add_header_xua' );
function add_header_xua() {
header( 'X-UA-Compatible: IE=edge,chrome=1' );
}
Однако wp_headersтакже может сделать это:
apply_filters ( 'wp_headers', array $headers, WP $this )
add_filter( 'wp_headers', 'wpieeam_headers' );
function wpieeam_headers($headers) {
if (!is_admin()) {
$headers['X-UA-Compatible'] = 'IE=edge,chrome=1';
}
return $headers;
}
Обновление: я только что заметил, что разговор об этом более или менее начался по похожему вопросу пару лет назад ...
Кроме того, send_headers имеет отношение только к внешнему интерфейсу? Я видел, как wp_headers делает такие проверки:
if ( isset($_SERVER['HTTP_USER_AGENT']) && (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false) )
а также
if (!is_admin())
так что я думаю, что, возможно send_headers, не нужно делать эти проверки ...