Вывод заголовка при помощи произвольного поля на Wordpress

J
На сайте с 07.10.2010
Offline
163
3228

Здравствуйте, уважаемые форумчане. Как вывести заголовок <title> при помощи произвольного поля на Wordpress?

Мне нужно, чтобы выводилось следующим образом: если заполнено произвольное поле, то в качестве заголовка выводится оно, если оно не заполнено, то выводится стандартный заголовок. Как это прописать?

Благодарю за помощь.

Playerror
На сайте с 28.09.2008
Offline
152
#1


<title>
<?php
if (get_post_meta($post->ID, 'title', true) == true) {
echo get_post_meta($post->ID, 'title', true);
} else {
wp_title(' ');
}
?>
</title>

Этот таг вордперсс вставляет что находится в кастомном поле с ключем title

<?php echo get_post_meta($post->ID, 'title', true); ?>

Этот таг вордперсс просто выводит тайтл

<?php wp_title(' '); ?>

S3
На сайте с 29.03.2012
Offline
367
#2
Playerror:

<title>
<?php
if (get_post_meta($post->ID, 'title', true) == true) {
echo get_post_meta($post->ID, 'title', true);
} else {
wp_title(' ');
}
?>
</title>


Этот таг вордперсс вставляет что находится в кастомном поле с ключем title
<?php echo get_post_meta($post->ID, 'title', true); ?>

Этот таг вордперсс просто выводит тайтл
<?php wp_title(' '); ?>

Последние версии WP и PHP будут ругаться на ваш код.

надо значение поля присваивать переменной и потом уже переменную проверять - пустая или нет


<?php
$ttl =get_post_meta($post->ID, 'title', true)
if (!empty($ttl)) {
echo get_post_meta($post->ID, 'title', true);
} else {
wp_title(' ');
}
?>
Playerror
На сайте с 28.09.2008
Offline
152
#3

Sly32, скорее всего php, 4.3 версия wp ошибку не выдало, но да, Ваш код будет более правильным.

J
На сайте с 07.10.2010
Offline
163
#4

Playerror, Ваш вариант сработал. Но почему-то не выводится заголовок для главной страницы - она представлена в виде списка последних постов (то есть за ней не закреплена никакая страница).

При втором варианте кода сайт почему-то не открывается.

---------- Добавлено 15.09.2015 в 08:26 ----------

Jaroslav:
Но почему-то не выводится заголовок для главной страницы

Нужно как-то прописать, чтобы у главной страницы заголовок имел формат: Краткое описание сайта | Название сайта

То есть данные из этих полей: http://screenshotlink.ru/1e9a6c475b5947c1f129715acb5c5490.png

Что нужно добавить для этого в тот код, что приведен выше?

Playerror
На сайте с 28.09.2008
Offline
152
#5


<title>
<?php
if ( is_home() ) {
bloginfo("description");
echo get_bloginfo("name").' | ';
} else {
$ttl =get_post_meta($post->ID, 'title', true);
if (!empty($ttl)) {
echo get_post_meta($post->ID, 'title', true);
} else {
wp_title(' ');
}
}
?>
</title>
J
На сайте с 07.10.2010
Offline
163
#6

Большое спасибо. Только тайтл главной выводится так: Краткое описаниеНазвание сайта |

Между ними даже пробелов нет и | выводится в конце. А должно быть так: Название сайта | Краткое описание

И что нужно добавить в код, чтобы у внутренних страниц тоже в конце тайтла выводилось название сайта: Название поста | Название сайта

Благодарю.

Playerror
На сайте с 28.09.2008
Offline
152
#7

Все это легко настраивается без лишнего кода в плагине allin seo pack


<title>
<?php
if ( is_home() ) {
echo get_bloginfo("name").' | ';
bloginfo("description");
} else {
$ttl =get_post_meta($post->ID, 'title', true);
if (!empty($ttl)) {
echo get_post_meta($post->ID, 'title', true).' | ';
echo get_bloginfo("name");
} else {
wp_title('|', true, 'right');
echo get_bloginfo("name");
}
}
?>
</title>
J
На сайте с 07.10.2010
Offline
163
#8
Playerror:
Все это легко настраивается без лишнего кода в плагине allin seo pack

Если знаешь php, то да) Еще раз спасибо.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий