10 полезных фишек для RSS в WordPress

Добрый вечер, дорогие читатели. Сегодняшней публикацией продолжаю пополнять копилку знаний о WordPress на моем блоге. Не одна из предыдущих публикаций на эту тему не осталась без внимания, а значит у вас есть интерес в этой области. И поэтому я не могу не удовлетворить его! Приятного вам изучения. Дальше очень много нужной информации.

RSS — это одна из тех технологий которая очень проста и в то же время просто незаменима. Сегодня RSS это де факто общепринятый стандарт для блогов, и используется повсеместно. Ну а так как большинство блогов в сети построено на WordPress, мы и рассмотрим все примеры применимо к данному движку. Некоторые фишки давно известны, но я уверен, что этот список поможет вам использовать свой RSS в WordPress намного эффективнее, и все это без использования плагинов!

Как и в других моих постах про WordPress хочется построить описание в виде «проблема-решение-описание». Это самый оптимальный вариант описания таких вещей. Потому что вы будете знать, не только как это делается, но и почему делается именно так, а при желании и под себя перестроить.

Пожалуй, будем приступать.

1. Настраиваем время появление поста в RSS ленте, вывод RSS с задержкой

Вывод RSS с задержкой

Проблема: Случалось ли у вас когда-нибудь такое, что вы опубликовали пост, и только потом заметили ошибку? Конечно, можно все исправить, но есть небольшая проблемка — пост уже попал в RSS-поток с ошибкой. Чтобы избежать таких проблем есть хороший рецепт – сделать задержку между публикацией поста на блоге и появлением его в RSS-ленте.

Решаем проблему: Чтобы решить эту проблему, нам необходимо вставить следующий код в файл function.php нашей темы:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function publish_later_on_feed($where) {
	global $wpdb;
 
	if ( is_feed() ) {
		// получаем текущее время
		$now = gmdate('Y-m-d H:i:s');
 
		// задержка
		$wait = '5'; // integer
 
		$device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
 
		$where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
	}
	return $where;
}
 
add_filter('posts_where', 'publish_later_on_feed');

Дополнение: В данном коде выставлена задержка между публикацией поста и обновлением RSS-потока в 5 минут. Для этого определена переменная $wait. Вы можете изменить значение по своему усмотрению.

2. Переадресация RSS фида WordPress на фид из FeedBurner

Проблема: Большинство блогеров-новичков обычно начинают пользоваться сервисом FeedBurner только после того, как увидят установленный счетчик подписчиков на других блогах и представляют как это полезно и круто. Они регистрируются, устанавливают счетчик, но существующие подписчики уже подписаны на стандартный WordPress RSS-фид. Да еще и некоторые новые посетители продолжают подписываться на него.

Проблема №2: Если вы часто меняете темы оформления блога, вам необходимо будет постоянно заботиться о том, чтобы заменить стандартную функцию bloginfo (’rss2_url’) на адрес вашего FeedBurner канала.

Решаем проблему: Решение обоих проблем совсем не сложное, мы будем использовать редирект на сервере.
Добавляем следующий код в файл .htaccess в корневой директории и сохраняем

1
2
3
4
5
6
7
# temp redirect wordpress content feeds to feedburner
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTP_USER_AGENT} !FeedBurner    [NC]
 RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
 RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/alaev/TxUH [R=302,NC,L]
</IfModule>

Дополнение: Не забудьте изменить адрес канала на свой. Теперь, когда кто-нибудь нажмет на ссылку вида http://www.yourblog.com/feed он будет перемещен на http://feeds.feedburner.com/yourblog. Теперь вы никогда не потеряете своих подписчиков. Даже если будете менять тему оформления по десять раз на дню, вам не придется снова и снова вручную менять адрес RSS-канала.

3. Вставляем рекламу, картинки (или еще что-нибудь) в RSS-канал

RSS лента с картинками или рекламой

Проблема: Монетизация RSS-ленты уже стала обыденной вещью, особенно за рубежом, и многие блогеры используют эту тактику для увеличения своих доходов. FeedBurner может вставить рекламу AdSense в ленту, но есть некоторые ограничения по подписчикам, чтобы иметь такую возможность. Да и вставить что-то другое кроме AdSense не получится, а это неудобно.

Решаем проблему: Всегда есть возможность вставить что угодно и куда угодно =) Вот, например, вы можете вставить ссылку на что-нибудь «вкусненькое» только для своих подписчиков.
Для этого требуется добавить следующую функцию в файл вашей темы functions.php

1
2
3
4
5
6
7
8
<?php
function insertAds($content) {
    $content = $content.'<hr /><a href="https://alaev.info/fotofolio">А вы уже прокомментировали мои фотографии?</a><hr />';
    return $content;
}
add_filter('the_excerpt_rss', 'insertAds');
add_filter('the_content_rss', 'insertAds');
?>

Дополнение: Существует много различных способов добиться нужного результата, но они требуют вмешательства в код. Этот же способ использует только функцию add_filter () для вставки нужного элемента без необходимости править код движка.

4. Форматируем правильно изображения для RSS-ленты

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

Некрасивое отображение изображений в RSS

А ведь гораздо красивее было бы сделать так

Красивое форматирование изображений в RSS

Или так

Правильное отображение картинок в RSS

Проблема: Достаточно много времени все мы тратим на форматирование текста и изображений в записи на блоге. На самом блоге это может выглядеть хорошо, а вот как это будет выглядеть в RSS-ридере? Вы это проверяете? А стоит иногда это делать.

Решаем проблему: Чтобы разобраться с этой проблемой добавляем к изображению параметр style.

1
<img src="https://alaev.info/wp-content/uploads/2010/04/wp10rss_4_3-300x98.jpg" alt="wp10rss_4_3" title="wp10rss_4_3" width="300" height="98" class="alignleft" style="padding:0 10px 5px 0;" />

Дополнительно: padding:0 10px 5px 0; каждый из четырех параметров означает отступ начиная с верхнего заканчивая левым краем, по часовой стрелке. Следовательно в примере будет отступ для картинки 10px справа и 5px снизу.

5. Предоставьте вашим читателям RSS подписку на комментарии

RSS лента комментариев к посту

Проблема: Когда к какому-то из постов оставлено и до сих пор пишется очень много комментариев, читателям будет очень сложно следить за развитием событий. В большинстве тем оформления данная фишка не предусмотрена, но сам WordPress имеет востренную функцию, которая позволит организовать RSS-ленту комментариев к каждому посту.

Решаем проблему: Решение тут совсем простое, никаких хаков не потребуется. Достаточно добавить функцию comment_rss_link () в вашу тему. Смотрим следующий код:

1
<?php comments_rss_link('&raquo; RSS-лента комментариев к посту'); ?>

6. Исключаем определенные категории из RSS-ленты

Проблема: Есть ли у вас на блоге категория или даже несколько категорий, которые вы бы не хотели включать в RSS? Может быть, эта категория с рекламными обзорами или вашими личными новостями, которая не интересна ценителям основного контента? Так что идея НЕ включать ее в общую ленту выглядит отличной!

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

  1. Вычисляем ID ненужной категории. Его вы можете узнать в настройках самой категории
  2. Теперь идет в редактирование файла вашей темы functions.php
  3. Вставляем в файл следующий код и сохраняем
1
2
3
4
5
6
7
8
function myFilter($query) {
    if ($query->is_feed) {
        $query->set('cat','-5'); //Не забудьте вставить свой ID ^_^
    }
return $query;
}
 
add_filter('pre_get_posts','myFilter');

Дополнительно: Не забудьте в коде заменить значение на ваш ID. Тут так же используется полезная функция add_filter () применимо к pre_get_posts ().

7. Выводим любую RSS-ленту на WordPress блоге

Проблема: Может быть у вас несколько блогов? Или даже у вас есть тематический форум? Тогда вам наверняка захочется сделать вывод последних новостей на своем блоге.

Решаем проблему: Все это можно решить плагинами, но мы четко решили не пользоваться ими. Да и к тому же WordPress имеет встроенный RSS-ридер который можно использовать для вывода новостей.
Идем в редактирование шаблона и в нужном месте (например, в сайдбаре или в футере) вставляем следующий код:

1
2
<?php include_once(ABSPATH.WPINC.'/rss.php');
wp_rss('http://feeds.feedburner.com/alaev/TxUH', 3); ?>

Дополнительно: Первое что мы делаем, это подгружаем стандартный rss.php. Этот файл нам позволяет использовать функцию wp_rss (), которая имеет два параметра: адрес rss-потока и количество выводимых элементов.

8. Используем отдельные RSS-ленты для разных категорий

Проблема: Некоторые блоги ведутся авторами, которые интересуются различными темами, иногда не связанными друг с другом. Например, программирование, веб-дизайн, блоггинг, seo и т.д. А что если читателю интересна только одна из этих тем? В этом случае стоит задуматься над тем, чтобы выводить новости для каждой категории отдельно.

Решаем проблему: Представьте, что вы хотите подписаться только на категорию WordPress, которая имеет следующий адрес:

1
https://alaev.info/blog/category/wordpress

Чтобы получить адрес RSS-ленты для данной категории необходимо добавить только /feed в конце url’а, вот так:

1
https://alaev.info/blog/category/wordpress/feed

Очень просто, не так ли? Но в то же время очень полезно, по-моему.

9. Выводим список RSS-подписок по категориям

RSS подписка на категории

Проблема: Если вам понравился предыдущий пункт, вам наверняка приглянется и этот. Сейчас мы займемся выводом названий категорий для подписки и картинки RSS.

Решаем проблему: Открываем необходимый файл вашей темы оформления, находим подходящее место и вставляем следующий код:

1
<?php wp_list_categories('feed_image=https://alaev.info/rss_img.gif&feed=XML Feed&optioncount=1&children=0'); ?>

Дополнительно: Этот метод использует старую добрую функцию wp_list_categories (). Она содержит два параметра: feed_image – путь к изображению отображения фида и, собственно, параметр определяющий формат самого фида.

10. Избавляемся от RSS … совсем ;)

Избавляемся от RSS

Сперва вам необходимо будет ответить на вопрос, а для чего вы используете CMS WordPress? Для своего портфолио или это сайт вашей фирмы? Тогда может быть вам и не нужна RSS-лента на сайте и надо ее удалить?

Решаем проблему: На эту тему есть много советов, например, некоторые советуют просто удалить include в файле wp-settings.php. Но я бы не стал так поступать и редактировать этот файл. Все можно сделать проще. Следующий код поможет вам решить проблему раз и навсегда. Вставляем его в functions.php:

1
2
3
4
5
6
7
8
9
function fb_disable_feed() {
	wp_die( __('Фид недоступен, пожалуйста, перейдите на нашу <a href="'. get_bloginfo('url') .'">главную страницу</a>!') );
}
 
add_action('do_feed', 'fb_disable_feed', 1);
add_action('do_feed_rdf', 'fb_disable_feed', 1);
add_action('do_feed_rss', 'fb_disable_feed', 1);
add_action('do_feed_rss2', 'fb_disable_feed', 1);
add_action('do_feed_atom', 'fb_disable_feed', 1);

Перевод, адаптирован и подготовлен для наилучшего понимания материала.
Источник: Smashingmagazine.com — 10 Useful RSS-Tricks and Hacks For WordPress

Ну вот и все, дорогие читатели. Сегодняшний экскурс в улучшение нашего сайта на WordPress закончен. Конечно, это только часть всего самого интересного. У меня в запасе огромное множество различных хаков, о которых вы, наверное, не слышали. Я буду делиться своими секретами с вами постепенно. Ведь вам потребуется время, чтобы все это переварить. Так что прочитайте еще раз и выберите то, что вам подходит, и идите пробовать и улучшать свое любимый блог. Удачи!

Жду ваших комментариев, ретвитов и, конечно же, вопросов, если что-то не будет получаться.

Александр «АлаичЪ» Алаев
Александр «АлаичЪ» Алаев

Вот уже 18 лет я профессионально занимаюсь созданием и продвижением сайтов и 13 лет с удовольствием пишу в любимый блог. Создал заслужившие доверие в seo-сообществе программы FastTrust и ComparseR и известный сервис для проверки траста сайтов CheckTrust.ru.

В 2014 основал веб-студию «АлаичЪ и Ко» в Краснодаре: 1 место в рейтинге агентств интернет-маркетинга (Рейтинг Рунета), 2 место в рейтинге SEO-компаний (CMSmagazine), 12 место в рейтинге известность бренда SEO-компаний в России (SeoNews).

Выступаю на профильных конференциях (All In Top, SEO Conference, SEMPRO, Baltic Digital Days). Веду канал в telegram про seo и бизнес. SEO-специалист года 2019 и 2020 (Sape).

Ерунда и баянЪ!Зачет! Плюсую!
+25

Профессиональный технический аудит и рекомендации по оптимизации вашего сайта.
Тот самый необходимый «фундамент» для успешного продвижения.

30 000 руб.

Комплексный подход к решению поставленных задач: достижение топ-10 и увеличение трафика на сайт. В стоимость уже включены полный технический аудит и оптимизация сайта.

45 000 руб.

У вас недостаточно знаний и нужны ответы на вопросы?
Интересует мнение эксперта или надо проверить подрядчика?
Вы задаете вопрос — я отвечаю!

5 000 руб./час

Проведу подробное исследование вашего сайта и основных конкурентов, опубликую материал на блоге для обсуждения и коллективного поиска новых идей.

70 000 руб.

Я начал запись своего обучающего курса по seo-продвижению.

В каждом видео я разбираю какую-то одну важную тему, и делаю это последовательно, в порядке, подходящем для изучения с нуля. Видео выкладываются раз в неделю – по средам. Я думаю, весь курс будет состоять из 50-70 роликов, так до конца еще далеко, а значит самое время подписаться и начать изучение вместе со мной.

В блоке слева всегда будет выводиться самое свежее видео курса. Ссылки: на мой канал, на плейлист обучения.

Комментарии: 89 Написать комментарий
  1. Wermen (2 комм.)

    А что нибудь про раскрутку через RSS интересно было бы почитать.

    Ответить
    • АлаичЪ

      Что вы имеете ввиду?

      Можно добавить свою ленту во все известные и не очень rss-агрегаторы. И будут вам ссылки и, возможно, посетители.

      Ответить
    • MTV (1 комм.)

      На сколько мне известно сейчас от раскрутки через RSS толку очень мало.

      Ответить
      • АлаичЪ

        Да, если не сказать, что толку вообще почти ноль.

        Разве что для успокоения души прогнать свою rss-ленту по агрегаторам, не больше.

        Ответить
  2. Владимир (2 комм.)

    Вывод один — нужно знать PHP. Хотя на счет задержки — хорошая идея.

    Ответить
    • АлаичЪ

      Да не обязательно знать php, достаточно иметь голову на плечах и логическое мышление. И все получится. По крайней мере у меня получается работать даже с тем в чем я не разбираюсь, но логически решая проблемы. Да, может я потрачу много часов, но я сделаю.

      При желании можно сделать все!

      Ответить
  3. buzzman (16 комм.)

    По п.4 у меня есть замечания. Просто напросто class=center (кста. применительно к первой картинке он не поможет) существует только в wp, а следовательно, перенеся rss в какой либо сервис или агрегатор эти классы сразу порежутся (если, конечно, нет одноименных у принимающей стороны).

    Решение проблемы все-таки есть - это использование стандартных свойств отображения img align=left (right, center, absright и т.д.)

    Или же я что-то не понимаю?

    За фишки спасибо. Принял к сведению.

    Ответить
    • АлаичЪ

      А еще можно просто style="align:center;" (или left, right) прописать. Можно так же прописать padding, как это делаю я, когда выравниваю по левому или правому боку. Тогда все будет замечательно (так же как во втором скриншоте пункта №4).

      Ответить
      • buzzman (16 комм.)

        АлаичЪ, так почему вы в тексте поста не поменяли решение проблемы по п.4?

        class=center не решит проблемы отображения в rss

        Ответить
        • АлаичЪ

          Сейчас исправим, спасибо за напоминание.

          Ответить
  4. SEO Помощник (5 комм.)

    Привет, сосед! :)

    Да, мы действительно живем в соседних домах.

    Ответить
  5. Gripa (1 комм.)

    Очень позновательно, а то все методом научного тыка пытался настроить. Автору спасибо, давно искал как Rss разбить по категориям

    Ответить
  6. RE:активист (12 комм.)

    Очень полезная статья...

    Не сочтите за спам, но вот на моем блоге я что-нибудь теряю?

    RSS поставил сразу, только вот теперь после прочтения возник вопрос... — совпадает ли он с тем фидом, что у меня в адресной строке? Как это проверить?

    Ответить
    • АлаичЪ

      Ничего не теряете. А ваш блог я посмотрел. Советую срочно выполнить пункт 2 из списка выше.

      Ответить
  7. RE:активист (12 комм.)

    Так вы же вроде говорите, что я ничего не теряю? :)

    Ответить
    • АлаичЪ

      Ничего не теряете если выполните указания из пункта 2. Вот что я имел ввиду.

      А суть проблемы и то, что вы теряете, не сделав это опять же описано в пункте №2.

      Надеюсь, доступно в этот раз написал ;)

      PS И по поводу своей проблемы, о которой вы спрашивали в комментах к фотографии отпишите мне на e-mail: https://alaev.info/contacts

      Ответить
      • RE:активист (12 комм.)

        Еще раз не затруднит посмотреть?

        Вроде теперь все как надо сделано. Мне даже редиректор помогли сделать.

        Забивая стандартный фид переводят сразу на фидбернеровский...

        Ок, напишу на почту, если сам не разберусь в ближайшее время :)

        Ответить
        • АлаичЪ

          Да, теперь все как надо. И еще, не "редиректор", а "редирект"!

          Ответить
          • RE:активист (12 комм.)

            Ага, это я просто опечатался :)

            Ответить
  8. RE:активист (12 комм.)

    Кстати, совсем забыл спросить, он потом пересчитает подписчиков, которые подписались на стандартный фид?

    Ответить
    • АлаичЪ

      Да, пересчитает, потому что они автоматом начнут читать RSS от FeedBurner.

      Ответить
  9. RE:активист (12 комм.)

    Спасибо за советы :) Заретвитил себе эту запись!

    Очень хорошие советы и некоторыми я воспользуюсь позже!

    Ответить
  10. Wermen (2 комм.)

    Про раскрутку хотел узнать про эффективность. Но раз вы пишите что толку мало то ИМХО не стоит развивать это направление

    Ответить
  11. Игорь (1 комм.)

    Отличный пост уважаемый автор! С большим удовольствием читал!

    У меня к вам есть вопрос: есть блог на wordpress, я хочу чтобы в rss ленте выводились картинки, так как направленность блога в эту сторону. Если не трудно объясните ламеру, что к чему и как это сделать.

    Заранее благодарен за помощь!

    Ответить
    • АлаичЪ

      Спасибо. А картинки будут выводиться только в случае когда в настройках в "Админ. центре — Настройки — Чтение" стоит настройка вывода полного текста в RSS, а не анонса. Я думаю, что у вас стоит именно вывод анонса, а он не поддерживает форматирование и картинки.

      Ответить
  12. df (5 комм.)

    Не совсем понятно как работает переадресация WP на FeedBurner.

    Ответить
    • АлаичЪ

      Что конкретно вам не понятно? С основами написания правил для .htaccess знакомы?

      Ответить
  13. df (5 комм.)

    И как менять тему?

    Функцию bloginfo (’rss2_url’) удалить и вместо этого вставить нужный адрес?

    Ответить
    • АлаичЪ

      Если сделаете как описано выше, то ничего менять не придется в теме. То есть, bloginfo (’rss2_url’) присутствует в каждой теме для вывода rss-канала, а он будет перенаправляться на ваш feedburner.

      Ответить
      • df (5 комм.)

        Да просто сделал так, а перенапрвления не было. Пришлось вручную в теме менять.

        Ответить
        • АлаичЪ

          Как то подозрительно это, все должно работать как часы. После того как изменили .htaccess можно проверить работоспособность введя в адресной строке site.ru/feed или site.ru/feed/ и в любом случае должно перенаправлять на feedburner.

          Ответить
          • df (5 комм.)

            Еще все раз перепроверил, переадресации нет.

            У меня уже есть в файле .htaccess блок

            <IfModule mod_rewrite.c>

            ...

            </IfModule>

            Может проблема в этом?

            Ответить
          • АлаичЪ

            Странно.

            <IfModule mod_rewrite.c> это всего лишь условие, оно не влияет на работоспособность если mod_rewrite включен.

            Попробуйте вставить кусок кода не в конец файла, а в начало.

            И еще, если пользуетесь FF то она автоматом может показывать свой xml вариант. Также после правки .htaccess очистите кеш если используете кеширующие плагины (хотя это никак и не влияет). Ну и попробуйте другой браузер, например Chrome.

            У меня, помнится, тоже Mozilla вредничала и не хотела вообще FeedBurner показывать.

            Так же попробуйте не в адресной строке вводить адрес, а перейти по адресу с любой страницы сайта.

            Ответить
  14. Никита (4 комм.)

    Я попробовал настроить время появления поста в RSS ленте и в итоге получил вот такой код на главной странице. Что то у вас не правильно.

    function publish_later_on_feed ($where) { global $wpdb; if ( is_feed () ) { // �������� ������� ����� $now = gmdate ('Y-m-d H:i:s'); // �������� $wait = '30'; // integer $device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR $where .= " AND TIMESTAMPDIFF ($device, $wpdb->posts.post_date_gmt, '$now') > $wait "; } return $where; } add_filter ('posts_where', 'publish_later_on_feed');

    Ответить
  15. Кэлин (9 комм.)

    Добрый день! Опять к тебе за помощью АлаичЪ :) . Прошу прощения за глупый вопрос, но я блогер-новичок, как ты выразился в посте и мне не понятен один момент (касаемо 2-го пункта): Вот у тебя справа, стоит счётчик подписчиков. Вопрос, если я просто кликнул на "подписаться", поставил ленту в панели браузера — это считается что я подписчик? как этот счетчик считает? ведь это не заноситься в Базу Данных? по логике — нет. Это просто, мой браузер, делает запрос на твой URL, простые запросы, проверяющие наличие обновлений на твоем блоге. Я это так понимаю.

    Еще, как себе такой счетчик поставить? с помощью Feed Burner? Можешь в двух словах описать это? буду очень благодарен.

    Ответить
    • АлаичЪ

      > если я просто кликнул на "подписаться", поставил ленту в панели браузера — это считается что я подписчик?

      Да, считается. feedburner как-то это дело просчитывает, это можно видеть по диаграмме подписчиков в своем аккаунте, там показано каким образом считывается лента тем или иным агрегатором.

      > как себе такой счетчик поставить?

      Вот тут все написано: http://www.simplelib.com/?p=256

      Ответить
      • Кэлин (9 комм.)

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

        Например я, тоже, смотрю список новостей в ленте, чисто заголовки, и кликаю, если вижу интересное название — просматриваю. Думаю, так делают многие.

        Вывод: Заголовки статей играют роль. Статьи надо называть интересно и содержательно, для того чтоб они привлекали RSS подписчиков.

        Ответить
        • АлаичЪ

          Да, именно, считаются только те, кто подписался, при этом они могут вообще ленту не читать и блог не посещать. И наоборот, человек может постоянно читать и комментировать мой блог, при этом он не будет подписан, потому что адрес и так помнит или вообще не закрывает вкладку с моим блогом.

          А статьи мало называть хорошо, надо, чтобы содержание соответствовало заголовку ;)

          Ответить
  16. Кэлин (9 комм.)

    Кстати, на счет 5 пункта, я сделал иначе, поставил плагин Sexybookmarks. И настроил его так чтоб в конце статьи появлялась иконка RSS на подписку к комментарию. Это просто и смотрится интересно, кроме этого есть возможность ставить кучу других популярных иконок рядом с RSS. Можете зайти ко мне в гости и увидите. Блог в зародыше, но можно лицезреть как выглядит то, о чём я говорю.

    Ответить
    • АлаичЪ

      Можно и так, но лично мне больше нравится идея ручной модификации, нежели использование плагинов.

      И еще, по логике вещей там должна быть подписка не на комментарии, а на основную rss-ленту. Не спрашивайте почему, примите как должное и исправьте.

      Подписка на комментарии может пригодиться только когда их действительно много. Так что ничего не потеряете заменив ссылку на основной фид.

      Ответить
      • Кэлин (9 комм.)

        Да нет, вроде на комментарии, я проверил :)

        Ответить
        • АлаичЪ

          Я о том и говорю, что надо сменить на общую ленту, кому нужны эти комментарии при их отсутствии.

          Ответить
  17. Никита (4 комм.)

    Я так понимаю мой комментарий проигнорирован, печально.

    Ответить
    • АлаичЪ

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

      Ответить
      • Никита (4 комм.)

        Хм, проверил. Всё нормально, видимо где-то ошибку допустил, когда прошлый раз добавлял или скопировал отсюда не всё :)

        Ответить
  18. Никита (4 комм.)

    А нельзя как то сделать через стили, чтобы но всем изображением автоматически уже прикручивался padding:0 10px 5px 0 ?

    С Уважением, Никита

    Ответить
    • АлаичЪ

      Можно, только это будет относиться к изображениям вставленным в запись.

      Для этого пропиши в style.css

      .alignleft, .alignright, .aligncenter {padding:0 10px 5px 0;}

      Так же может потребоваться добавить .alignnone, смотри по ситуации. Это будет необходимо если не использовать выравнивание при вставке картинок в записи.

      Ответить
  19. Кэлин (9 комм.)

    Где-то читал, что можно как-то выделять комментарии, автора и читателей разными цветами. Ты не знаешь как это сделать?

    Ответить
    • АлаичЪ

      Ну я об этом писал. Тут https://alaev.info/blog/post/426

      Смотри пункт 4. Обязательно прочти потом все комментарии после поста.

      Ответить
      • Кэлин (3 комм.)

        Помню что у тебя где-то читал :) Так и есть!

        Спасибо.

        Ответить
  20. SEO разработчик (2 комм.)

    Для пункта 2. Переадресация фида WordPress на фид из FeedBurner

    можно заменить строку 4 и 5 одной строкой, это немного сократит код:

    RewriteCond %{HTTP_USER_AGENT} !^(FeedBurner|FeedValidator) [NC]

    правда у меня, к сожалению, оба варианта не пашут. :) Но и ошибки нигде не вижу... Переписывал раз 5 и копировал отсюда, все равно хоть лбом об стену...

    P.S. АлаичЪ, cпасибо огромное за кучу полезных вещей в блоге! Особенно радует раздел WordPress.

    Ответить
    • АлаичЪ

      Я думаю, вам следует обратиться к хостерам со своей проблемой, они точно помогут. На 99% проблема кроется в настройках сервера.

      PS На здоровье, раздел WordPress будет пополняться постоянно новыми и интересными фишками.

      Ответить
  21. СЕО Точка (1 комм.)

    Спасибо, АлаичЪ, в особенности за 6, 8 и 9 пункты. А первый пункт вообще идеален для защиты контента от воровства через RSS.

    Ответить
    • DieselxXx (1 комм.)

      Полезные фишки! Правда я искал чуть другое... :)

      2СЕО Точка: каким это образом оно спасает от воровства? На 5 мин позже стырят? :)

      Ответить
  22. Цукерман (1 комм.)

    По поводу седьмого пункта. Сами пробовали? Если да, то как Вы решаете проблему с кодировкой?

    У меня вот такая картинка получается Ð�Ñ�Ñ�нал SEODigest: 12-й номеÑ� вместо стандартного RSSного заголовка.

    Ответить
    • АлаичЪ

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

      Ответить
  23. mcgrifin (1 комм.)

    Уважаемый, автор блога! Все, конечно ре-написано Вами, но ссылочку на оригинал, все таки не пожалейте. Отличный труд блоггера Jean-Baptiste Jung находится здесь: http://www.smashingmagazine.com/2008/12/02/10-useful-rss-hacks-for-wordpress.

    Статья оказалась полезной, особенно Рубрики RSS фида. RSS технологии сделали жизнь многих блоггеров и пользователей интернета удобной и сохраняющей драгоценное время.

    Ответить
  24. Devil_Shurik (7 комм.)

    Подскажите, где и что в теме нужно поменять чтоб сразу заменить WP ленту на FeedBurner?

    И как сделать, чтоб лента комментариев тоже была через FeedBurner?

    А то я про RSS вообще ни чего не знаю.

    Ответить
    • АлаичЪ

      Можете ничего не менять, раз не знаете ничего. Установите плагин FeedBurner FeedSmith. В нем есть 2 настройки, фид для записей, фид для комментариев.

      Соответственно в FeedBurner создаете два фида, для комментов и для записей. Дальше разберетесь ;)

      Понятно?

      Ответить
      • Devil_Shurik (7 комм.)

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

        На сколько я знаю, они замедляют работу wordpress.

        Да еще возможны конфликты между плагинами.

        Ответить
        • АлаичЪ

          Не переживайте, данный плагин не повлияет на скорость работы, он лишь выполняет редирект. Конфликтов тоже не будет.

          А на счет скорости, поверьте, я не меньше запарен этим делом. Потому советую ознакомиться с одним непопулярным, но очень полезным плагином https://alaev.info/blog/post/511.

          Ответить
          • Devil_Shurik (7 комм.)

            Ну на столько остро проблема скорости еще не стоит, моему блогу еще нет недели.

            Он еще даже яндексом не проиндексирован.

            Обычное посещение 4-6 хостов в сутки, только сегодня не очень понятный наплыв — 66 хостов время 20-45 по москве. Большинство из вконтате.

            Ответить
  25. Serg (1 комм.)

    Здравствуйте! Подскажите как включить в rss ленту наряду с постами одну конкретную страницу на постоянной основе?

    Ответить
    • Devil_Shurik (7 комм.)

      Дело в том, Serg, что RSS — это обновления, а отдельная страница — это статичный материал.

      И эта страница, отправится по RSS один раз, когда Вы ее создадите.

      А если Вы хотите прибавить эту страницу к каждому обновлению, то вряд ли это понравится Вашим подписчикам, они будут отписываться.

      Они за тем и подписываются, что хотят видеть новое.

      Ответить
      • АлаичЪ

        Добавить в rss ленту можно что угодно ;) Как сказал Devil_Shurik, главное чтобы это не навредило.

        Итак, файл /wp-includes/feed.php, функция function the_excerpt_rss ():

        function the_excerpt_rss() {
            $pagelink = '<div style=""><a href="" rel="nofollow">бла-бла-бла</a></div>';
            $output = get_the_excerpt();
            echo apply_filters('the_excerpt_rss', $pagelink . $output);
        }

        Понятное дело, что $pagelink — это название переменной, может быть любым, какое понравится. Так же для div'а прописываете стиль, вставляете ссылку на нужную страницу, пишите анкор и дело в шляпе ;)

        Ответить
  26. NMitra (23 комм.)

    Мне не удаётся в RSS-записи сделать иконку через "Feed Image Burner"-"Image Source: Specify custom image URL" как у вас. Так ли вы её добавляли?

    Без поля поиска однако не удобно :(

    Ответить
    • АлаичЪ

      Решается так: Аккаунт FeedBurner -> Оптимизируй -> Feed Image Burner.

      Далее:

      — Image Source: Specify custom image URL

      — Specify custom image URL: Вставляем url картинки (я залил себе на сервер и указал)

      — Image Title: Пишем alt картинки

      — Link: Ссылка на которую попадет человек, нажавший на картинку

      Жмем "Сохранить".

      Вот и все.

      Ответить
      • NMitra (23 комм.)

        Да, я так и делаю. По-видимому не нравится анимационная картинка gif

        Ответить
  27. farba (1 комм.)

    Добрый день, полезная статья, но все же не нашла ответ на свой вопрос, как заставить фидбернер утягивать картинку к посту, чтоб в RSS уходил не только текст, но и хотя бы одна картинка из поста...?

    Ответить
    • АлаичЪ

      Все просто! :)

      Заходим в настройки WP -> Чтение -> Для каждой статьи в RSS-ленте отображать -> Полный текст

      Ответить
  28. Александр (16 комм.)

    Избавился от RSS совсем. Удалил все ссылки из темы на фиды. Осталась только одна проблема, в исходном коде каждой записи и категории выводится ссылка на ленту комментариев к записи, вот таким образом:

    <link rel="alternate" type="application/rss+xml" title="Имя Блога &raquo; Лента комментариев к &laquo;Название записи&raquo;" href="http://site.ru/nazvanie-zapisi.html/feed" />

    Александр, подскажите пожалуйста где и как запретить вывод этого фида?

    PS. Искал поиском слова "Лента комментариев к" упоминаются только в двух непонятных мне файлах: ru_RU.po и ru_RU.mo

    Ответить
    • АлаичЪ

      Да, это делается просто. Необходимо в файл functions.php вашей темы оформления сразу после <? (или <?php) добавить:

      	remove_action('wp_head','feed_links_extra', 3); // удаление ссылки на дополнительные rss категорий
      	remove_action('wp_head','feed_links', 2); // удаление ссылки на основной rss и комментарии
      Ответить
      • Александр (16 комм.)

        Спасибо, разобрался. Только вот теперь в Вебмастере Гугла появились ошибки сервера, код ответа 500 на все эти ссылки (в конце которых /feed). Это нормально и они со временем пропадут?

        Ответить
        • АлаичЪ

          Должны пропасть. А заодно можно запретить их от индексации в robots.txt тогда сразу пропадут (Disallow: /*/feed).

          Ответить
  29. Sunny (2 комм.)

    АлаичЪ, у меня к вам такой вопрос:

    Бывает, когда пишешь уникальные посты на свои блоги, то он же попадает в RSS ленту, и всякие ГСтроители используют этот контент на своих ГС для биржи ссылок. Поэтому, что бует лучше:

    1. Удалить эту RSS ленту вообще.

    2. Или просто поставить задержку публикования поста в RSS?

    Ответить
    • АлаичЪ

      Ленту удалять ни в коем случае не стоит. Лучше сделать задержку ее обновления, как написано в посте. А еще не стоит выдавать в RSS пост полностью, лучше только анонс. В WordPress есть соответствующая настройка.

      Ответить
  30. Татьяна (1 комм.)

    АлаичЪ, доброго времени суток! Ценный материал, спасибо. Но... Вроде внимательно прочитала, много проблем можно решить, правда, не все понятно. Есть немного другая проблема. Есть сайт (на русском языке). Как этот сайт перевести на английский? Даже, наверное, немного по-другому стоит спросить: как сделать зеркало сайта на английском, чтобы добавляемые на русский сайт новости, статьи автоматически переводились на английский и публиковались на втором, т.е. англоязычном?

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

    Ответить
  31. Александр (10 комм.)

    Добрый день, прошу прощения за несовсем в тему коммент.

    Подскажите пожалуйста, как настроить в rss временную зону

    вместо

    Mon, 10 Jun 2013 21:28:35 +0000

    нужно

    Mon, 10 Jun 2013 21:28:35 +0300

    в настройках wordpress — вкладка «общее» поставил всё, как нужно, но в rss ничего не изменилось.

    Спасибо.

    Ответить
    • АлаичЪ

      Скорее всего речь идет про rss-ленту feedburner — следовательно и смотреть надо в сервисе feedburner.com

      Ответить
      • Александр (10 комм.)

        Да, feedburner. Я лента такого типа: http://feeds.feedburner.com/alaev/TxUH

        И у всех блогов на WordPress в исходном коде только вот такая конструкция:

        <pubDate>Wed, 08 May 2013 07:29:42 +0000</pubDate>

        Поправить это можно?

        Ответить
        • АлаичЪ

          Не знаю, мне кажется, это совершенно ненужная морока.

          Ответить
          • Александр (10 комм.)

            Это точно! )))

            Я хотел к рассылке новостного портала подключиться, а там у них вот такое страное условие...

            Всё равно — спасибо )))

            Ответить
  32. Andrew (12 комм.)

    Здравствуйте.

    А не подскажете, на DLE как можно сделать те же операции? Или хотя бы про отсрочку RSS на DLE почитать.

    Заранее спасибо!

    Ответить
    • АлаичЪ

      Не подскажу, потому что не знаю.

      Ответить
  33. Сергей (1 комм.)

    Александр, подскажи пожалуйста, как можно сделать, что бы некоторые статьи не попадали в rss feed, допустим написал я новую статью и я не хочу, что бы она была отправлена подписчикам?

    Ответить
  34. Елена (1 комм.)

    Здравствуйте.

    У меня на блоге такая проблема с RSS лентой: новые статьи не попадают в ленту, а также, подписчики не получают email рассылку с Feedburne. Подскажите, на что обратить внимание. Спасибо

    Ответить
  35. Олег (1 комм.)

    Очень понравилось 7. Выводим любую RSS-ленту на WordPress блоге

    Но не получается вставить в редактор отдельного сообщения (поста). Т.е. хотелось бы, чтобы лента была в теле записи.

    Пока удалось вставить в страницу index.php над постами.

    Ответить
    • АлаичЪ

      Оно и не получится прямо так вставить в пост, php код фильтруется в записях и страницах.

      Ответить
Нажмите, чтобы отменить ответ.