Существует два варианта отображения RSS:
Первый — отображение анонса в ленте, тогда туда засовывается только заголовок, дата публикации ну и пара предложений из поста.
Второй — полностью вся статья.
Дело в том, что если вы выбираете первый способ, то лента будет выглядеть очень скучно, а значит понизится шанс, что посетители подпишутся или прочтут статью.
Поэтому (ну возможно и по какой-то своей причине), многие популярные забугорные сайты используют полностью всю статью в RSS-ленте.
Но на мой взгляд это сильно ударит по посещаемости сайта, просто зачем мне переходить на сайт, если всё что надо есть в RSS-фиде?
Короче я считаю, что оптимальным решением будет отображение анонсов, разбавленных какими-нибудь картинками — миниатюрами записей.
К счастью править файлы движка не придётся, нужно будет лишь добавить код ниже в functions.php
Для свежих версий WordPress будет вот такой скрипт для вывода миниатюр в RSS-ленте:
function thumbs_in_rss($content) { global $post; if(has_post_thumbnail($post->ID)){ $thumb = '<div style="float: left; padding: 0 10px 5px 0;">'.get_the_post_thumbnail( $post->ID, 'thumbnail' ).'</div>'; $content = $thumb . $content; } return $content; } add_filter('the_excerpt_rss', 'thumbs_in_rss'); add_filter('the_content_feed', 'thumbs_in_rss');
Для версий ниже 2.9.0 (с использованием произвольных полей):
function thumbs_in_rss($content) { global $post; if(get_post_meta($post->ID, 'post_thumbnail', true)){ $thumb = '<div style="float: left; padding: 0 10px 5px 0;">'.get_post_meta($post->ID, 'post_thumbnail', true).'</div>'; // post_thumbnail - регистрозависимое название произвольного поля $content = $thumb . $content; } return $content; } add_filter('the_excerpt_rss', 'thumbs_in_rss'); add_filter('the_content_feed', 'thumbs_in_rss');
Так можно добавлять не только миниатюры в ленту, но и вообще что угодно, например рекламу.
Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.
Спасибо за совет. Все работает, использовал для своего блога. Теперь rss не такая тоскливая.
у меня слетает кодировка в rss:
http://tatar-congress.org/category/yanalyklar/feed/
хотя, другой rss с этого же сайта - работает:
http://tatar-congress.org/ru/category/blog/feed/
вы не знаете, как в этот же код вписать строку, которая отдавала бы (или конвертировала бы) вывод в UTF-8?
рекомендую в
wp-config.php
включитьWP_DEBUG
и посмотреть, какие появятся ошибки.Здравствуйте. Как добавить вывод не только миниатюры, а всей галереи изображений товара в rss?
Здравствуйте, думаю тут можно попробовать вытянуть изображения, загруженные к посту, как например это делали при создании слайдера (шаг 3).