Этот пост больше предназначен для тех, кто любит самостоятельно ковырять шаблоны для WordPress блога.
Функция the_excerpt () отвечает за вывод сокращенной версии поста, например сокращенный вывод постов, чаще всего настраивают на страницах архивов, категорий или тегов.
Изначально эта функция показывает первые 55 слов из записи, после чего пишет [...] для дальнейшего прочтения записи, Вам необходимо щелкнуть на заголовке записи.
Довольно часто, возникает необходимость увеличить количество слов или уменьшить, а также убрать троеточие или кавычки, сделать это в принципе не сложно и сегодня я расскажу как именно это можно сделать.
Практически в любом случае, нужно просто добавить кусочек кода в файл functions.php в папке с шаблоном блога.
Регулируем количество слов:
<?php function new_excerpt_length($length) { return 20; } add_filter('excerpt_length', 'new_excerpt_length'); ?>
В данном случае цифрой 20 задается количество слов, которое будет выводить функция the_excerpt ().
Играем с троеточием:
Для блогов которые работают на WordPress > 2.9 код выглядит вот так:
<?php function new_excerpt_more($more) { return '[.....]'; } add_filter('excerpt_more', 'new_excerpt_more'); ?>
Попробуйте изменить [.....]
Для блогов на WordPress < 2.8 этот же код будет выглядеть вот так:
<?php function new_excerpt_more($excerpt) { return str_replace('[...]', '...', $excerpt); } add_filter('wp_trim_excerpt', 'new_excerpt_more'); ?>
В данном случае функцией str_replace меняется [...] на ... собственно вместо обычного троеточия, можно поставить что угодно.
Как нам известно, функция эта выводит краткую версию поста, но не выводит ссылку типа «Продолжить чтение», для этого воспользуемся следующим хаком:
<?php function new_excerpt_more($more) { return '<a href="'. get_permalink($post->ID) . '">' . ' читать далее ..' . '</a>'; } add_filter('excerpt_more', 'new_excerpt_more'); ?>
Не забываем, что этот код добавляется в файл functions.php в папке шаблона WordPress блога, если такого файла не существует, создайте его самостоятельно. Все это можно прочитать на английском языке, в документации WordPress.



10 Февраль 2010 at 4:26 пп
Что-то последний хак не работает. Остальные не проверял. Не меняется ничего после добавления этой функции.
10 Февраль 2010 at 5:07 пп
Для проверки вставил эту функцию в файл functions.php на блоге wp-guard.com посмотреть как оно работает можно здесь: http://wp-guard.com/tag/bezopasnost/
11 Февраль 2010 at 6:44 пп
Скажите, а как можно исправить такую проблему: краткие версии постов выводятся сплошным текстом без соблюдения абзацев и заголовков, а хотелось бы по человечески.
И еще, немножко не в тему. Если подключить систему комментирования, как в этом блоге, где будут храниться комментарии, в базе данных блога или на стороннем сервере? И что будет с комментариями, оставленными до подключения этой системы?
11 Февраль 2010 at 6:49 пп
Есть плагин http://wordpress.org/extend/plugins/advanced-exce... возможно поможет.
Плагин который устанавливает эту систему комментирования синхронизирует комментарии из блога с комментариями на сервере.
12 Февраль 2010 at 9:25 дп
Я пользуюсь excerpt editor, много настроек, можно каждой записи разные анонсы делать
12 Февраль 2010 at 12:15 пп
Dmitriy.Donchenko, спасибо за ссылки- помогло.
themebot . понимаете, лишний плагин- лишняя нагрузка. а она и так не маленькая. Зачем?..
16 Февраль 2010 at 8:43 дп
А как лучше делать вывод кратких обзоров? с ссылкой "Читать далее" или без нее?
16 Февраль 2010 at 9:04 дп
Лучше сделать так, как это будет лучше смотреться на Вашем ресурсе и будет удобнее Вам и посетителям.
27 Февраль 2010 at 9:56 пп
Ага-а то иногда такое вытворяют-даже страшно смотреть-нет посмотреть как лучше смотреться будет-хотят как лучше-получается как всегда...
14 Март 2010 at 1:12 пп
A подключить систему комментирования?
15 Март 2010 at 3:12 пп
читать далее мне больше нравится, под специфику надо смотреть
2 Апрель 2010 at 2:58 пп
Меня хлебом не корми — дай только в шаблоне поковыряться...
10 Апрель 2010 at 11:40 дп
Дмитрий, добрый день!
А не легче использовать тег "more" и время не придйется тратить и уже все настроено?
10 Апрель 2010 at 11:48 дп
Легче, а если в блоге уже есть 200 — 500 записей? Как быть тогда?
24 Апрель 2010 at 5:24 пп
Ой, спасиб.
Я как раз разбиралась с этим вопросом
29 Апрель 2010 at 4:07 дп
Статья хорошая и содержательная! Автору респект!
5 Май 2010 at 6:31 пп
Доработка, в принципе, полезная. Но и без нее вполне можно обойтись. Кому не лень ковыряться в коде и у кого руки прямые — думаю поставит на блог свой.
6 Май 2010 at 5:52 пп
the_excerpt вообще убрал. Сделал такой же вывод в архивах, как и на главной. А то эти точки и отсутствие картинок как-то не очень...
11 Май 2010 at 1:34 пп
У меня на блоге на главной выводятся только записи, без картинок!(( А я хочу чтобы были и картинки, можно как-то сделать, чтобы записи выводились вместе с картинками??? Причем такой прикол, что когда смотришь категории, там с картинками, а на главной просто записи!((
12 Май 2010 at 10:20 пп
Спасибо! Действительно полезно...
21 Май 2010 at 1:33 пп
Спасибо. Не пришлось самому капаться в коде, в поисках "истины". Правда "глаза сломал" пока разбирался в том, что написано во второй половине поста. Но это того стояло. И думаю в продвижении сайта поможет.
14 Июнь 2010 at 6:40 пп
Вот наконец то чтото новенькое. Сослуживцам подскажу пожалуй.