Прикупил на Themeforest шаблон Your Journey – Travel Blog WordPress для одного из сайтов. Начал заполнять контентом, добавлять описание рубрик. И тут я вижу, что описание рубрики вставляется в шапку, а не контентный блок, да еще и без html разметки. Т.е получается сплошной текст в шапке, а при размере в 3000 знаков, это выглядит убого и не читабельно.
Делаем нормальное описание рубрики
Ну ок, попробуем это исправить (Пример того, что получится можно посмотреть тут).
Первое что нужно сделать, это резервную копию вашего сайта, ну или хотябы файлы в которые будем вносить изменения. Я использую формат отображения новостей в рубрике listing, будем исправлять соответственный шаблон.
Не будем трогать оригинальный шаблон отображения новостей, а сделаем новый. Для этого создадим файл /www/wp-content/themes/Yourjourney/layout/listingc.php
и скопируем в него содержимое из файла /www/wp-content/themes/Yourjourney/layout/listing.php
Находим и меняем строки:
<div class="content">
<?php while( have_posts() ) : the_post(); ?>
на
<div class="content">
<?php
$aTerm = get_queried_object();
$catdescr = category_description($aTerm->term_id);
if(!empty($catdescr)) { ?>
<div class="type-post status-publish format-standard has-post-thumbnail hentry catdescr"><?php echo $catdescr ?></div>
<?php } ?>
<?php while( have_posts() ) : the_post(); ?>
Теперь у нас описание рубрики будет выводится в блоке content с HTML разметкой.
Далее правим отображение описания рубрики в шапке, для себя я сделал отображение короткого описания в 55 слов. Используется функция wp_trim_words.
Находим и меняем строку:
$sub = $aTerm->description;
на
$sub = wp_trim_words($aTerm->description);
Если вы хотите сделать короче описание, скажем в 10 слов, то код изменим на такой:
$sub = wp_trim_words($aTerm->description, 10);
Если хотите вообще отключить вывод анонса в шапке, то делаем например так:
$sub = '';
Остался последний шаг, подключим наш новый шаблон рубрик. Для этого отредактируем файл /www/wp-content/themes/Yourjourney/category.php
и поправим следующую строчку:
get_template_part('layout/listing');
на
get_template_part('layout/listingc');
Готово, теперь можно проверять.