Заголовок Wordpress внутри заголовка

Я использую tyring для изменения того, как заголовок работает в файле header.php на Wordpress. На данный момент у меня есть так, чтобы он отображал название каждой страницы, на которой пользователь включен, что хорошо работает, кроме страниц, загружающих сообщения в блоге.

Я бы хотел, чтобы он был установлен таким образом, чтобы элемент «title» в файле header.php мог справляться с пользовательскими именами, т.е. вместо того, чтобы загружать имя последнего блога в качестве заголовка при посещении страницы блога, я хочу, чтобы он просто сказал «Блог» ,

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

index.php

$header_title = "Blog";
get_header(); ?>

Затем внутри файла header.php у меня есть следующий код.

<title>
April Kelley | 
    <?php if (isset($header_title)) { 
        echo $header_title;
     } else {
        the_title(); 
    }?>

Теперь, на мой взгляд, это должно сработать, так где же я ошибаюсь?

PS. Я только намереваюсь использовать эту переменную $ header_title на определенных страницах, таких как index.php и seach.php, где страницы тянутся в блоге, и, следовательно, все еще возвращает false, не может быть найдена переменная?

0
nl ja de

2 ответы

Правильный способ сделать это - использовать the_title фильтр , вам не нужно изменять шаблон, например :

function my_title($title, $id) {
    if (is_home())
        $title.= ' | Blog';

    return $title;
}
add_filter('the_title', 'my_title');

If you really want to use your own var, you should read this : How to use own PHP variables in wordpress template?

2
добавлено
будет ли это работать? Я спрашиваю, потому что моя домашняя страница является статической страницей, а не самой страницей блога?
добавлено автор lil_bugga, источник
В конце концов я пошел с параметром глобальной переменной, с которым вы связались, чтобы сэкономить время, но вернется и посмотрит на ваше другое решение, когда время не так сильно. Благодаря :)
добавлено автор lil_bugga, источник
Тогда вы должны использовать is_front_page
добавлено автор soju, источник

замещать

the_title(); 

в виде

echo get_the_title()

надеюсь, эта работа для вас

0
добавлено
это не сработает, я пытаюсь установить переменную в другом файле, чтобы заголовок мог быть установлен для всех страниц из файла заголовка.
добавлено автор lil_bugga, источник
проверить, что я отредактировал мой ответ
добавлено автор anstrangel0ver, источник
WordPress – русскоговорящее сообщество
WordPress – русскоговорящее сообщество
768 участник(ов)

Группа пользователей популярнейшей CMS WordPress. Запрещено: мат и ругань реклама, спам (в т.ч. каналами) религия, политика, наркотики приглашение ботов без согласования #nowarez

WordPress for developers
WordPress for developers
761 участник(ов)

Группа для разработчиков wordpress Запрещено - мат - оскорбления - флуд - реклама ip телефония https://goo.gl/wBaqci Другие чаты Битрикс https://t.me/bitrixfordevelopers Битрикс работа https://t.me/bitrix_work