мне нужно поместить содержимое поста в тег <head>
. Я пытался использовать этот код в файле header.php моей темы:
if(is_single()){
$stringa = the_content();
}
но это не работает.
Как я могу сделать? Благодарность
мне нужно поместить содержимое поста в тег <head>
. Я пытался использовать этот код в файле header.php моей темы:
if(is_single()){
$stringa = the_content();
}
но это не работает.
Как я могу сделать? Благодарность
Функции the_content()
и get_the_content()
предназначены для использования внутри цикла WordPress, что означает, что вы не можете просто использовать их по желанию. Вам нужно будет создать цикл внутри файла header.php
, который запрашивает базу данных WordPress, извлекает некоторый контент и использует его по мере необходимости.
По сути, оберните вызов the_content()
внутри:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
...
<?php endwhile; endif; ?>
Тогда вы сможете получить содержимое публикации в любом месте на странице... однако я не совсем понимаю, почему вы пытаетесь получить содержимое публикации в разделе <head>
страницы. <head>
используется для объявлений стилей, тегов <script>
и метаинформации о странице... не для фактического содержимого страницы. Если вы пытаетесь получить конкретную информацию о текущей странице, я бы рекомендовал использовать совершенно другую функцию.
Я думаю, что вы ищете:
$stringa = get_the_content();
if (is_single())
{
the_post();
$content = get_the_content();
rewind_posts();
}
Важно поставить rewind_posts(), иначе в других шаблонах не будет работать post loop.