Действие Wordpress "wp": невозможно изменить информацию заголовка
Я бы хотел показать HTML-код на моей странице WordPress. Итак, в моей дочерней теме
functions.php
, Я написал такое действие:
add_action('wp', function() {
if(is_admin()) {
return;
}
$html = '<div class="home_immodvisor">';
echo $html;
});
Однако, когда я перехожу на страницу входа в бэк-офис (администратор), отображается предупреждение:
Предупреждение: невозможно изменить информацию заголовка - заголовки уже отправлены (вывод начался с /var/www/html/wp-content/themes/hello-elementor-child/functions.php:88) в / var / www / html / wp- включает /pluggable.php в строке 1296
Предупреждение: невозможно изменить информацию заголовка - заголовки уже отправлены (вывод начался с /var/www/html/wp-content/themes/hello-elementor-child/functions.php:88) в / var / www / html / wp- включает /pluggable.php в строке 1299
У меня вопрос: это хорошее действие, чтобы зацепить? Или я должен использовать другой, чем
wp
?
3 ответа
Насколько я понимаю, wordpress отправляет заголовки после wp, поэтому это неправильное место, так как вы не можете эхо раньше.
Не существует стандартизированной ловушки / действия для вставки html в тему. Каждая тема могла бы справиться с этим по-своему, у некоторых даже не было крючка.
Но если вы должны
wp_head
хук будет работать, но это не будет действительный HTML.
Лучше всего проверить документацию вашей темы. Или сделайте дочернюю тему и настройте темпальты) вам нужно
Предупреждение: невозможно изменить информацию заголовка - заголовки уже отправлены
Чтобы решить эту проблему, добавьте приведенный ниже код в файл темы function.php.
ob_start();
Это устранит вашу ошибку.