Я хотел бы показать конкретный контент в сообщении, если сообщение указано в определенной категории.
Например, если мы находимся на публикации в Далласе, и она находится в категории «Даллас», то я хочу, чтобы конкретный текст отображался на странице в Далласе с помощью вставки кода single.php.
single.php
echo <<<insert
<?php if ( in_category( 'dallas-slug') ) : ?>
<p>
custom text to insert
</p>
<?php endif; ?>
insert;
Всякий раз, когда я это делаю, он показывает текст во всем моем сообщении, игнорируя фактический ярлык категории. Я бы хотел, чтобы текст отображался только в сообщениях, в которых используется категория dallas-slug.
Примечание: я не уверен, повлияет ли это, но это находится в другом коде на странице single.php, который генерирует списки для веб-сайта на основе каталогов. Я пытаюсь включить список «премиум» вверху до того, как будут показаны другие обычные списки, основанные на категориях штата. Код в файле single.php передается в списки для каждого города / штата с использованием того же файла single.php, который я использую для этого дополнительного кода, поэтому я думаю, что в этом случае он игнорирует вызов / проверку моей категории, поскольку он находится внутри других код, который уже проверил это. Возможно ли это, и если да, то есть ли способ перепроверить категорию для кода, который я пытаюсь вставить?
Вам следует вставить файл single.php целиком, если у вас есть другой код, который может противоречить этому.
При удалении эха возникает ошибка анализа: синтаксическая ошибка, неожиданная ошибка «<».
@Klian - Я добавил полный код в исходный пост. Спасибо!
Я понял это - нужно было начинать с if, а не с <? Php, поскольку это уже было частью кода ранее.






Ваш код должен быть просто:
<?php if ( in_category( 'dallas-slug') ) : ?>
<p>
custom text to insert
</p>
<?php endif; ?>
Выдает ошибку: Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный '<' ..... Я использую эхо, чтобы избежать этой ошибки.
В файле уже был код с <?php, поэтому он мне больше не понадобился. В итоге я сделал это:
if ( in_category('dallas-slug') ) {
echo '<p>
custom text to insert
</p>';
}
Удалите часть
echo, то есть первую и последнюю строку, и она должна работать.