Как изменить оформление цитаты (the_excerpt() ) в анонсах статей WordPress

Здравствуйте. Разбёрем как оформляется цитата  в статье на блоге wordpress. Если кто-то не знает что такое цитата  - объясняю. Это текст, который отображается в анонсе статьи на главной, либо на страницах категорий, меток, архивов. Этот текст может как дублировать первый абзац статьи, так и отличатся от него. Это очень удобно, если по каким-то соображениям (например первое предложение "набито" ключевиками) анонс статьи должен отличаться. Его можно сделать более привлекательным, чем начало самой статьи. Мне это поле понадобилось, для оформления работы слайдера с самыми популярными записями. В нём, кроме заголовка статьи, была возможность также выводить цитату

Где вводится текст цитаты при создании статьи? В соответствующем поле:

Вставка цитаты в wordpress

Чтобы такое поле появилось в окне редактирования, необходимо нажать кнопку "Свойство экрана" в правом верхнем углу экрана и там поставить отметку напротив "Цитата". Всё это прекрасно работает, за исключением одной детали - на страницах категорий текст цитаты будет выводится без ссылки "Читать далее".

В предыдущей статье Как изменить текст «Читать далее» (тег Моrе) в анонсах статей WordPress мы уже разбирали как изменить выводимый анонс. Если Вы заполните поле "Цитата", то все фильтры, которые предлагается в той статье добавить в  functions.php перестанут работать. Поэтому если необходимо использовать цитаты, при этом сохранить красивые ссылки на анонс статьи в виде картинок, можно сделать следующее.

В файле шаблона, где у Вас выводится цитата (archive.php, category.php) заменить

<?php the_excerpt(); ?>

на следующий код:

<?php if ( is_category() || is_archive() ) {
	the_content('<a href="'. get_permalink($post->ID) . '">' . '<img src="http://ВАШ_САЙТ/buttons/more.png"  alt="Полная информация" align="" height="" width="">' . '</a>');
} else {
	the_content('Читать дальше...');
} ?>

А текст статьи разделить с помощью тега <mоre>. Что делает этот код? На страницах архивов или категорий в конце текста ограниченного  тегом <mоre>   выводит кнопку-изображение "Полная информация". На других страницах текст "Читать далее".  Можно и упростить данный код если на всех страницах ссылка "Читать далее" оформляется одинаково.

<?php the_content('<a href="'. get_permalink($post->ID) . '">' . '<img src="http://ВАШ_САЙТ/buttons/more.png"  alt="Полная информация" align="" height="" width="">' . '</a>');
?>

 После вставки данного кода на страницах категорий выводится красивый анонс, текст которого - это начало статьи ограниченное тегом  <mоre>. А на слайдере выводится текст из поля "Цитата". Смотрите сами:

функция excerpt

 функция excerpt в слайдереВ данном примере цитата в слайдере и анонс одинаковы, но Вы естественно можете сделать их разными. Вот такое красивое оформление цитаты в wordpress можно сделать. Удачи!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>