Записи с тегом "the_excerpt()"

Вывод анонса с заданным количеством слов

Теги: , 3 февраля 2010

Не раз сталкивался с ситуацией, когда необходимо было выводить анонс, ограничив его длину заданным количество слов.

Для этого я использую нижеследующую простенькую функцию.

В файл functions.php WordPress-темы необходимо вставить следующий код:

function do_excerpt($string, $word_limit) {
	$words = explode(' ', $string, ($word_limit + 1));
	if (count($words) > $word_limit)
	array_pop($words);
	echo implode(' ', $words).' ...';
}

После этого в то место шаблона, где нужно отобразить анонсы постов, вставить вот такой код:

<?php do_excerpt(get_the_excerpt(), 50); ?>

Здесь цифра 50 – это количество слов, которым мы хотим ограничить длину анонса.

Другой вариант

Если вы используете WordPress версии 2.9 или выше, то можно использовать следующую более упрощенную конструкцию:

function new_excerpt_length($length) {
	return 50;
}
add_filter('excerpt_length', 'new_excerpt_length');

Код также необходимо вставить в файл functions.php.

Комментариев: 11
(голосов: 4, средняя оценка: 2.00 из 5)
Loading ... Loading ...

Заменяем символ [...] на ссылку “читать далее”

В прошлый раз мы рассмотрели вариант, когда из анонса необходимо удалить символ [...].

Если же этот символ необходимо заменить на ссылку “читать далее“, то функция, которую нужно вставить в файл functions.php, будет выглядеть следующим образом:

function trim_excerpt($text) {
	global $post;
	$moreLink = ' ... <a href="' . get_permalink($post->ID) . '">читать далее &raquo;</a>';
	$text = str_replace('[...]', $moreLink, $text);
  return $text;
}
add_filter('get_the_excerpt', 'trim_excerpt');

Если потребуется, то текст ссылки можно заменить на любой другой.

Комментариев: 3
(голосов: 1, средняя оценка: 5.00 из 5)
Loading ... Loading ...

Удаляем символ [...] из анонса поста

Теги: , 21 ноября 2009

Если в шаблоне WordPress сделан вывод анонса поста через функцию the_excerpt() и в админке не заполнено поле “Цитата”, то в конце анонса мы наблюдаем вот такой символ: [...].

Если нужно избавится от этого обозначения, то необходимо вставить в файл functions.php вашей темы следующий простенький код:

function trim_excerpt($text) {
  return rtrim($text,'[...]');
}
add_filter('get_the_excerpt', 'trim_excerpt');

Вот и все.

Комментариев: 4
(голосов: 2, средняя оценка: 5.00 из 5)
Loading ... Loading ...