Отображение тегов в header только для записей

Необходимо добавить в head подобные теги

<?php echo (get_post_meta($post->ID, 'site_name', true)); ?>
<?php echo (get_post_meta($post->ID, 'og:image', true)); ?>
которые с помощью Custom Field будут выводить уникальные для каждой записи данные

<meta property="og:type" ... />
<meta property="og:image" content="http://example.com/generated.jpg" />

и применить их только для записей (single.php).

Додумался только до единственного варианта - это добавить в single.php <meta..., но тогда на сайте в коде будет дублироваться. Это не правильно и ещё выглядит не очень.

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

Спасибо, давно пользуюсь Вашим сайтом, очень полезный, не знал, что тут можно ещё и задавать вопросы.

0
malina
6.3 года назад
  • 0
    if (is_single()) {
    	//код
    }

    такая конструкция будет давать true только для записей

    malina 6.3 года назад

    Спасибо за ответ. Попробовал данную функцию, вставил в header.php

    if (is_single()) {
    <?php echo (get_post_meta($post->ID, 'site_name', true)); ?>
    }
    

    В итоге на всех страницах в хедере текст if (is_single()) { }

    Видимо делаю, что-то не так, для тупых пожалуйста на примере можете написать кусок кода. У меня вышло, только

    <?php if (is_single()) {echo (get_post_meta($post->ID, 'site_name', true)); } ?>

    и то в этом варианте код выводится полностью на всех страницах

    p.s.

    спустя минуту ещё раз проверил, всё таки работает второй вариант с изменениями. СПАСИБО

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация