Как изменить заголовок поста в RSS (WordPress)

Для чего это надо?

Есть у меня два блога. Один, как бы профессионально-тематический. Второй — бортовой журнал, куда я скидываю эмоции, события и всякую чепуху из своей жизни. Ну, типа вот я иду за хлебом, вспомнил что кончилась туалетная бумага, подумал о том, что не все птицы одинаково гадят на прохожих, и решил докупить себе стирального порошка, а на обратном пути зайти за мороженкой.

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

Выгода очевидна: я не засоряю тематический блог.

Сказано, сделано. Зашел в админке блога в раздел «Внешний вид», кликнул в «Виджеты».

Нашел виджет — RSS, перетащил в сайдбар.

Настроил. Все просто, даже говорить не о чем.

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

Особенности моей «орфографии»

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

В шаблоне ленты сделал так, чтобы если заголовка нет, он формировался из слова «Запись номер» и ID поста. Т.е. получается запись такая-то от такой-то даты. Мне нормально.

Однако, в RSS-ленте вместо этой прелести вылезает «Без названия». Отвратительно.

 

Еще несколько напрягают эти квадратные скобки в конце…, но с ними как-нибудь потом.

Меняю в RSS-ленте заголовок

Заходим в шаблон (он же тема) нашего сайта на WordPress.

Делать это рекомендую по FTP, а не из админки. Ибо если накосячите, сайт покажет вам белый чистый лист, да так этой белизной (или чем-нибудь похуже) и останется. Вам оно надо? Вообще, если решите повторить, то все это вы делаете на свой страх и риск. Если убьете сайт, я вас предупреждал.

В общем, не уверены — попросите меня. Я недорого беру, но зато если что, тут же поправлю. Впрочем, отвлекся.

Так вот. Заходим в шаблон, находим functions.php и открываем для редактирования. Куда-нибудь в конец пишем следующий код:

function lexiums_rss_titler($content) {
 global $post; 
 if($post->post_title == '') $content = 'Запись #' . $post->ID;
return $content;
}
add_filter('the_title_rss', 'lexiums_rss_titler');

Сохраняем.

Этот код создает так называемый хук, который сработает при попытке вывести заголовок поста в RSS ленте. Функция берет пост, читает его заголовок. Если заголовок пустой, то создает его из ‘Запись #’ + ID поста.

Вы можете сделать заголовок на свой вкус.

 

И вот что получилось на выходе.

Мне нравится.

Помогло? Зашли Админу на чай.
 

Ну а если вам помогло, можете отблагодарить меня, заслав немного на чай. Я буду рад даже десяти рублям, ведь важна не сумма, а внимание)))

Шучу конечно. Сумма еще как важна, но в данном случае просто приятно увидеть, насколько пост был полезен. Сказать спасибо могут многие, а вот заслать денежку…

Впрочем, снова увлекся.)))

Всем хорошего дня (или что там у вас сейчас).

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *