Не работает RSS в WordPress. Исправляем ошибку.
Так иногда случается: блог работал без сбоев, но вдруг в один «прекрасный» день RSS-лента перестала открываться. Безусловно, необходимо найти, куда закралась ошибка, и устранить ее. Иначе подписчики не получат информацию о новых постах в блоге, а поисковые системы могут начать плохо индексировать блог, ведь нерабочее состояние RSS-ленты зачастую связано с ошибками в карте сайта sitemap.xml.
Несколько дней назад эта напасть приключилась с моим блогом. RSS-лента не открывалась, вместо этого браузер предлагал сохранить ее на диск. Проверка в Яндекс.Вебмастере показала, что в карту сайта sitemap.xml вкралась синтаксическая ошибка: «Ошибка синтаксического анализа XML объявление XML или текста не в начале сущности».
Что такое «начало сущности» и как исправить эту ошибку?
Я зашла в свой блог и открыла исходный html-код главной страницы (Правая кнопка мыши -> Пункт в выпавшем меню «Просмотреть код страницы»). HTML-код блога WordPress должен начинаться со строки
<!DOCTYPE html>
Эта строка не должна предваряться никакими символами, даже пробелом и переводом строки. Код должен начинаться так, как на скриншоте внизу.
В коде RSS-ленты моего блога первая строка оказалась пустой, а тег <!DOCTYPE html> находился на второй строке.
Существует три причины появления незначительной, на первый взгляд, ошибки в коде :
1. Владелец блога WordPress сам что-то правил в коде блога;
2. Был установлен новый плагин;
3. Произошло обновление существующего плагина.
Поскольку с кодом блога я не экспериментировала и новых плагинов давно не устанавливала, осталось выявить плагин, который создал эту ошибку. Я начала проверять плагины, которые были обновлены совсем недавно. Или, если точнее, я стала по одному отключать плагины и проверять состояние RSS. Виновник быстро был найден, а ему нашлась работоспособная замена. Удаление некорректно работающего плагина полностью устранило ошибку и обеспечило исправную работу sitemap и RSS.
Вот и все. Успешной и безошибочной работы вашим блогам!