О web-разработке
и даже немного больше...

Вывод анонса записи в wordpress

anonsbВсем привет. Подавляющее большинство сайтов, в местах, где концентрируется списки новостей, статей и не только используют анонс для удобного восприятия информации. Это хорошая практика, и мы рассмотрим несколько способов вывода анонса записи в wordpress.

1. Стандартный способ

Для этого достаточно поставить тег <!—more—> в HTML коде записи, либо нажав кнопочку «Вставить тег Далее» в визуальном редакторе. Этот способ предусмотрен разработчиками wordpress, поэтому лишних телодвижений делать не придется.

2. При помощи функции the_excerpt

Стандартная функция для вывода записи в wordpress the_content, ее можно заменить функцией the_excerpt, для этого достаточно пройтись по файлам шаблона (темы) и вручную заменить функцию.
Данная функция выводит 55 первых слов записи, причем форматирование теряется. Например если ваша запись в начале имеет два маленьких абзаца, то они сольются в один абзац. Еще одна неприятность — после последнего слова выведется троеточие с квадратными скобками […] — хотя это легко исправить с помощью пользовательской функции.

function new_excerpt_more($excerpt) {
 return str_replace('[...]', '...', $excerpt);
 }
 add_filter('wp_trim_excerpt', 'new_excerpt_more');

Эту функцию надо добавить в файл functions.php, который находится внутри папки вашей темы. Он изменяет убирает квадратные скобки благодаря функции str_replace(). Вуаля, теперь можно автоматом генерировать анонс записи и при этом не ставить никаких тегов внутри записи.

3. При помощи пользовательской функции

Назовем эту функцию shorten_text(), она вызывается так — shorten_text(350), цифра 350 — это количество символов которое выведется функцией. Также в конце анонса выведется троеточие. Чтобы вывести что-то другое тогда требуется вызвать функцию вот так — shorten_text(350,’далее…’).

function shorten_text( $iChars = 22, $szTail = "...", $bPrint = true )
{
 global $post;
 $szText = strip_tags( trim( $post->post_content ) );
 $szText = substr( $szText, 0, $iChars );
 $szText = substr( $szText, 0, strrpos( $szText , ' ' ) ) . $szTail;
 apply_filters('the_excerpt', $szText);
 if ( $bPrint == true ) echo $szText; else return $szText;
}

К выводу анонса постов так же можно добавить миниатюры изображений, об этом читайте на странице по переходу по ссылке. Миниатюры изображений к анонсам можно повстречать на просторах интернета довольно часто, и это неплохая практика подачи информации в анонсе.

Опубликован: 09.03.2013 г.

См. также:

Убираем URL из формы комментариев WordPress
Работа с базой данных в WordPress
SQL-запросы для смены домена в WordPress
Мультиязычность с помощью плагина Polylang
Как создать свои шорткоды в WordPress
Как добавить виджет на сайт WordPress?
Добавление записей в WordPress средствами PHP
Как отключить архивы по авторам в WP?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Комментарии
  • Загрузка...
Друзья сайта