Плагин для WordPress the_excerpt Reloaded — умные анонсы

[ ←Вернуться к стандартному виду ]

Печатная версия

Плагин для WordPress: the_excerpt Reloaded — умные анонсы the_excerpt

Сайт плагина: the_excerpt Reloaded

О терминах: цитата = анонс = excerpt

Для чего этот плагин может понадобится:
Например, на главной странице блога выводятся посты, «обрезанные» до тега <!--more-->, а в категориях мы хотим выводить краткие анонсы. Для этого в шаблоне category.php (или archive.php) обычно заменяют <?php the_content('Далее…'); ?> на <?php the_excerpt(); ?>. Про шаблоны Тем WordPress.

UPD 21.03.2009

  • нашелся плагин No Excerpt P Plugin, который убирает <p> вокруг the_excerpt
    http://benpartch.org/downloads/no-excerpt-p-plugin/
  • а также см. этот топик (анг. яз.) http://wordpress.org/support/topic/201948

WordPress автоматически создает анонсы длиной 120 слов, обрезая их в произвольном месте, к примеру, посередине предложения. При этом форматирование не сохраняется: только текст без ссылок и картинок. Если при создании или редактировании записи заполнить поле «цитата (опционально)», то WordPress будет выводить этот текст — кстати, удобный способ создать краткое резюме записи. При ручном заполнении этого поля теги могут сохраниться, вернее, вам прийдется их вставить самостоятельно:

<p><strong>Комбайнеры</strong> выполнили и перевыполнили план 5-й пятилетки</p>

Скажем, если нас не устраивает длина анонса в 120 слов, то чтобы это изменить, нужно залезть в код движка и править там. Не очень удобный способ, особенно если вы любите обновлять WordPress (можно и забыть, что и где вы там правили). К тому же WordPress заключает всю цитату в тег <p> — такое маленькое самоуправство :)

Плагин the_excerpt Reloaded автоматически создает цитаты нужной длины и настраивается по вкусу легким движением руки. Гибкая настройка этого плагина позволяет в любой момент изменить количество выводимых букв, а также «сохраняет» в цитатах теги, например <img>, <a>, вставлять ссылку «Читать далее» и т.п.

Просто активируйте плагин и замените <?php the_excerpt (); ?> на <?php the_excerpt_reloaded(); ?> в нужном шаблоне вашей Темы.

В функции <?php the_excerpt_reloaded(); ?> возможны несколько аргументов.

Мой перевод по использованию плагина the_excerpt Reloaded

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

шспользование:

<?php the_excerpt_reloaded(excerpt_length, 'allowedtags', 'filter_type', use_more_link, 'more_link_text', force_more_link, fakeit, fix_tags); ?>

Параметры:

excerpt_length
(integer) Количество выводимых слов, по умолчанию 120.
allowedtags
(string) Определяет, какие HTML теги «сохранить» в анонсах. Пример: '<img>' или '<a><img>'. По умолчанию «сохраняется» только тег '<a>'.
filter_type
(string) Defines how WordPress should filter/format an excerpt’s content. Options are based on content/excerpt tags: 'content', 'content_rss', 'excerpt', 'excerpt_rss'. Set to 'none' to display raw content. Default is 'excerpt'.
use_more_link
(boolean) шспользовать ссылку «Далее» (TRUE) или нет (FALSE). Если этот параметр установить в false, то в месте обрезания цитаты будет многоточие (…). По умолчанию — TRUE.
more_link_text
(string) Если параметр use_more_link установлен в TRUE, можно определить анкор ссылки, по умолчанию — '(more...)'.
force_more_link
(boolean) Выводить ссылку «Далле» (TRUE) или нет (FALSE), даже когда анонс меньше, чем заданная длина excerpt_length. По умолчанию — FALSE.
fakeit
(integer) Если в посте заполнено поле поле «цитата (опционально)», то выводить это содержимое в качестве анонса (1) или обрезать функцией the_excerpt_reloaded (0). Можете установить этот параметр в 2 (строгое условие использовать заполненное поле «цитата (опционально)»). По умолчанию 1.
fix_tags
(boolean) “Repair” HTML tag elements (TRUE) or don’t (FALSE). This is implemented to deal with improperly closed tags which may be caused by excerpt_length. If fix_tags is set to FALSE, the plugin will not attempt XHTML validation and repair on improperly closed tags (due to excerpt_length breaking them in mid-element). Defaults to TRUE.

Примеры:

<?php the_excerpt_reloaded(); ?>

Выводит параметры по умолчанию: 120 первых слов; сохранять тег (<a>); ш?excerpt’ as filter type, использовать "(more…)" как ссылку на продолжение поста if excerpt less than content; fake content as excerpt unless post has an excerpt.

<php the_excerpt_reloaded(25, '<img>', 'content_rss', FALSE); ?>

Выводит: 25 первых слов; сохраняет тег (<img>); ш?content_rss’ as filter type; не использовать ссылку (more…); fake content as excerpt.

<?php the_excerpt_reloaded(50, '', 'none', TRUE, 'Keep reading >>', FALSE, 2); ?>

Выводит: 50 первых слов; все теги вырезаются; raw content output; ссылка на полный текст поста — “Keep reading >>” as more link if excerpt less than content; даже если поле «цитата (опционально)» заполнена, обрезать анонсы функцией.

Дополнительная информация:

Впишите класс .more-link в свой style.css для ссылки (more…), пример:


.more-link {
font-style: italic;
text-align: right;
}

UPD 2 июня 2007:
Только что случайно заметила, что если запись принадлежит нескольким рубрикам одновременно, то плагин the_excerpt Reloaded «теряется» и выводит вместо анонса троеточие. Оказалось, дело не в плагине, в этой записи в самом начале было много картинок и анонс вывелся троеточием, поскольку WordPress просто букв не нашел :)


Оставить комментарий »

  1. # Cepro 31.05.2007 в 22:12

    Спасибо! :)

  2. # arry (1) 06.06.2007 в 09:11

    как говориться плагин не понятный смыслом своим :)
    зачем опубликованному посту анонс?

  3. # sonika (29) 07.06.2007 в 15:08

    Смысла обычно не видно там, где нет целей и задач :)

  4. # Arqus (1) 25.07.2007 в 08:30

    Молодец какая... надо же блин...

  5. # art (2) 29.08.2007 в 08:41

    о. хорошая штука. щас заюзаю

  6. # art (2) 29.08.2007 в 08:42

    о. а иконки сайта в каментах можно тоже?

  7. # sonika (66) 29.08.2007 в 15:47

    2art:

    о. а иконки сайта в каментах можно тоже?

    Можно, этот плагин называется Favatars

  8. # Dima 19.10.2007 в 16:21

    интересно, интересно

  9. # Белок 15.11.2007 в 20:36

    Зашибись, просто клёво, слов нет! Спасибо!

  10. # walera (2) 09.04.2008 в 23:55

    А можно перезалить плагинчик? по этой ссылочке его уже нет

  11. # sonika (301) 10.04.2008 в 01:22

    Лежит здесь.

  12. # Sarmat 01.05.2008 в 22:12

    А не подскажите как убрать тег как раз с ним проблема, плагин к сожалению не совсем подходит.

  13. # sonika (301) 02.05.2008 в 04:17

    Какой еще тег? :/

  14. # Sarmat 02.05.2008 в 14:46

    Извинюсь обрезало, тег p. Вы кстати его упоминали в посте.

  15. # sonika (301) 02.05.2008 в 21:31

    Какая может быть проблема с тегом p? Хочу знать для расширения кругозора :) Sarmat, посмотрите плагин auto more.

  16. # Sarmat 03.05.2008 в 10:53

    Проблема в том что - "WordPress заключает всю цитату в тег — такое маленькое самоуправство :)". Вот именно это самоуправство мне не подходит, мне всего лиш необходим вывод текста из поля "Цитата" редактора, но WordPress подставляет . Визуально меня это не устраивает, необходимо просто перенос на новую строку. Проще говоря я использую для каталога продукции, то есть выводится список постов из категории. Спасибо, что тратите не меня время, я сразу правильно не сформулировал вопрос, извините.

  17. # Sarmat 03.05.2008 в 10:56

    У вас какая то проблема с комментариями, пишу название тега, использую вставку code, но код не выводится, или я что то неправильно делаю?

  18. # Айрат 07.06.2008 в 00:50

    кстати, у the_excerpt_reloaded кроме указанных параметров есть еще пара интересных, таких как тег окружающий ссылку more и текст title в этой ссылке...

  19. # Smarty (1) 15.06.2008 в 21:50

    По поводу "дополнительной информации": вписать в css надо будет не ".more-link" а "a.more-link": "a.more-link", "a.more-link:hover" и т.д. ;-)

  20. # VolAnd (1) 05.09.2008 в 20:17

    Будьте добры, подскажите пожалуйста. Все перерыл,не нашел. :(
    Нужно тоже самое, только для RSS.

  21. # iRedactor (1) 20.09.2008 в 01:38

    Спасибо за
    .more-link {
    font-style: italic;
    text-align: right;
    }
    .
    Мучался, пока не наткнулся на ваш сайт.

  22. # Ипотека (1) 28.09.2008 в 21:37

    Пождскажите пожалуйста как настроить плагин the_excerpt Reloaded
    Чтобы он не обрезал описания к картинкам...
    В самом скрипте ничего с названием IMG нету.

    Хотелось чтоб были тэги ALT полностью, а он оставляет лишь первое слово, в чем тут дело...

  23. # pablic 29.09.2008 в 02:20

    Доброй ночи!
    А куда тут вставлять тэг .
    При замене <?php the_content_rss('', TRUE, '', 82); на страницах летят фотки. Зато в рубриках все ок:)
    <div class="post" id="post-">

    <a href="" title="">
    Рубрика:

    <a href="" title="Read More">Читать полностью

  24. # Александр 23.10.2008 в 15:31

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

  25. # Александр 23.10.2008 в 15:46

    В описании значений функции fakeit (0, 1 и 2) в вашей статье допущено несколько ошибок. Реально же это работает так:
    0 (по умолчанию) - выводятся только цитаты, если их нет, то ничего не будет выведено;
    1 - там где есть цитаты, там они и будут выведены, там где их нет, будет выведен обрезанный текст;
    2 - даже если есть цитаты, выводиться будет обрезанный текст.

  26. # Oktan 26.10.2008 в 17:31

    Подскажите,что нужно изменить в плагине,а то у меня весь текст сплошняком идет,т.е. пробелы между словами есть,а с новой строки нет <?php the_excerpt_reloaded(600, '', 'none', TRUE, 'далее', FALSE, 1); ?>

  27. # pepelsbey (1) 10.11.2008 в 02:05

    Мелочь: нюансы, а не ньюансы.

  28. # d 1 m a n (1) 24.12.2008 в 12:44

    "<php the_excerpt_reloaded(25, '', 'content_rss', FALSE); ?>"

    <?php... Ошибка.

    Спасибо за перевод.

  29. # Пузат (1) 02.01.2009 в 17:51

    Поставил плагин, но почему-то тег перехода на страницу (читать далее и так далее) переносит на следущюю строку, как это исправить?

  30. # Chrom (1) 09.01.2009 в 12:03

    волнует тоже самое! Как сделать, что-бы ссылка "Читать далее" как-бы продолжала текст...

  31. # Валька (1) 23.01.2009 в 12:41

    Спасибо за плагинчик. Не сразу, но заработал.

  32. # Сергей Сноб (1) 20.02.2009 в 03:33

    Ссылка на плагин не найдена

  33. # JD 04.05.2009 в 20:01

    Спасибо огромное. Пока не нашла вашу страничку и этот плагин, проект летел в мусорную корзинку, ибо в каждом посте картинка. Море благодарностей!

  34. # h2p 12.05.2009 в 19:19

    http://www.sonika.ru/blog/?p=164&cp=1#comment-61891
    Проблема в том что — «WordPress заключает всю цитату в тег — такое маленькое самоуправство :)». Вот именно это самоуправство мне не подходит, мне всего лиш необходим вывод текста из поля «Цитата» редактора, но WordPress подставляет . Визуально меня это не устраивает, необходимо просто перенос на новую строку. Проще говоря я использую для каталога продукции, то есть выводится список постов из категории. Спасибо, что тратите не меня время, я сразу правильно не сформулировал вопрос, извините.

    А можно подробнее как это можно использовать для каталога продукции? Непонятно зачем "вывод текста из поля «Цитата» редактора"...

  35. # Lacran (1) 09.07.2009 в 16:36

    То что искал, для новой темы как раз понадобилось сделать фиксированную высоту анонса. Спасибо.

  36. # Allpa (6) 27.07.2009 в 03:42

    Потрясающе полезный для меня плагин - СПАСИБО!
    Тупила дико, осваивая его, но результат того стоил :)

    И как раз вовремя, что главное - проблемой вывода на главной определённого поста со всеми его тегами (в обход предустановленного в теме плага limit-post) я озабочена была очень давно, а тут Вы с таким подарком - низкий Вам поклон и пожелания всяческих успехов на радость нам :)

  37. # Puhtya 26.11.2009 в 01:48

    Огромнейшее спасибо! Только на вашем сайте нашёл именно то, что так долго и упорно искал! Дальнейшего развития и процветания вашему сайту!

  38. # 7ja (2) 30.01.2010 в 06:52

    <?php the_excerpt (); ?> а сюда (в скобки) нельзя вставить количество выводимых слов, по умолчанию 50, а нельзя просто встаивть 209, без использования плагтинов, ведь каждый плагин - дополнительная нагрузка

  39. # Рена13 04.03.2010 в 20:38

    Помогите пожалуйста, решить проблему!
    У меня в постах используется <?php the_excerpt(); ?>. С помощью нее я вывожу цену какого-либо продукта. Но проблема в том, что если я ничего не написал в поле excerpt, то Вордпресс автоматом добавляет часть текста из поста.
    Как сделать, если я ничего не написал в поле excerpt, то и не показывало ничего или просто отключалась функция <?php the_excerpt(); ?> ???

  40. # Roman (1) 12.03.2010 в 13:31

    "Просто активируйте плагин и замените <?php the_excerpt (); ?>на <?php the_excerpt_reloaded(); ?>в нужном шаблоне вашей Темы. "
    Я че-т непонял где это заменять.  Файл как называется?

  41. # Sveta (2) 15.04.2010 в 07:49

    А я сейчас делаю сайт, и у меня на главной выводит анонсы вот такая функция dp_clean($post->post_content, 90). Но она не корректно работает с русским языком. В конце вылазит абра кодабра. Можно ли ее заменить на функцию the_excerpt_reloaded(), при установке этого плагина?

  42. # Sveta (2) 15.04.2010 в 08:50

    Я поставила в файл индекс пшп такую функцию
    <p><?php echo the_excerpt_reloaded(90, '', 'none', TRUE, 'Keep reading >>', FALSE, 2); ?>...</p>
    </div>
    Но посты почему то не выводятся в 90 символов.
    Что я неправильно сделала? Может нужно еще в самом файле плагина какие-то параметры поменять?

  43. # Shaman (1) 18.12.2010 в 02:46

    Неплохая статья.  Вот так все таки выглядит нормально и удобно: <?php the_excerpt_reloaded(50, '', 'content_rss', FALSE); ?><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php _e('Permanent Link to ','sapphire_stretch'); ?><?php the_title(); ?>">Читать далее-></a><br>

  44. # Ната (1) 16.09.2011 в 01:05

    Спасибо, у меня почти все получилось. Только после цитаты на главной вылазит ;
    как удалит это знак?

  45. # Kobalt 02.12.2011 в 21:26

    Доброго времени суток! Подскажите как сделать так что ссылка (Читать далее) была на одной строке с последним текстом, а не на следующей?

  46. # Себастян (1) 01.04.2012 в 17:15

    Спасибо автору! очень помогли!! У меня в анонсах не было "читать далее",  поставил ваш код <?php the_excerpt_reloaded(50, '', 'none', TRUE, 'Keep reading >>', FALSE, 2); ?> и теперь все ок. Спасибо

  47. # Михаил 10.09.2012 в 20:05

    Как сделать чтобы текст (анонс) не обрезался вообще на главной странице? Где находится этот скрипт, как его отключить?

  48. # Null 0 (1) 17.08.2013 в 13:38

    Михаил, зайдите в папку активной темы (шаблона), найдите index.php и замените <?php the_excerpt('Читать далее &rarr;'); ?> на <?php the_content('Читать далее &rarr;'); ?>

  49. # Андрей 06.06.2014 в 09:54

    хорошая инф. у себя настроил. спасибо

  50. # Максим 12.12.2014 в 07:05

    Не получается скачать плагин, по ссылке которая указана ничего нет, точнее просит ввести логин и пароль, сайт походу дела умер. Собственно возникли вопросы:
    1. А откуда еще можно скачать плагин, может выложите?
    2. Насколько сейчас он актуален?
    3. Подойдет ли он как альтернатива auto-more? Надо чтобы автоматически вставлялись анонсы, и желательно не так как в auto-more по обзацу, потому что в некоторых обзорах один абзац.

Подписаться на фид.
RSS комментариев к этой записи. | TrackBack URI

Написать комментарий


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

[ ←Вернуться к стандартному виду ]

Печатная версия