Как установить тег заголовка страницы в настраиваемом шаблоне для нестандартного типа сообщения?

У меня есть этот код в моем настраиваемом файле шаблона:

<?php /* Template Name: custom-template-view */ ob_start(); get_header(); function assignPageTitle(){ return "my page title"; } add_filter('wp_title', 'assignPageTitle');// not working add_filter('the_title', 'assignPageTitle'); // not working ?> <div>MY CONTENT</div> <?php get_footer(); ?> 

Я хочу установить собственный тег заголовка, но он не работает. В этом шаблоне я показываю записи из пользовательской таблицы.

Файлы шаблонов не являются подходящим местом для добавления в такие функции. Файл шаблона не загружается до конца процесса hook / filter. Ваша функция должна быть в functions.php. Таким образом, он может быть добавлен до загрузки файлов tempalte, а функции, которые в них используются, могут быть изменены.

Часто wp_title() используется в header.php, поэтому, возможно, вы используете это, но формируете код, который показывает, что вы не выполняете функции фильтрации. Кроме, возможно, в header.php, но он загружен и выполнен перед этим настраиваемым файлом шаблона. Вы также не показываете использование the_title() поэтому я не могу сказать, как / когда / где это будет фактически фильтровать что-либо, если функция была помещена в нужное место.

Почему бы вам просто не повторить свой собственный заголовок? Например:

 if (some_conditional) { echo 'My custom title'; } else { the_title(); }