Неккоректно работает RSS лента блога? Убираем ошибки синтаксического анализа XML

Приветствую вас друзья на блоге vitalykalinin.ru. Многие из вас наверняка испытывали проблемы со своей RSS-лентой. Если нет, то я вам завидую. Но информация, которая приведена ниже лишней не будет. В моём случае, по непонятным причинам, она переставала работать и как следствие, подписчики не получали рассылки обновления блога и стала страдать посещаемость блога. Как устранить эту ошибку RSS-ленты? Будем разбираться.Ошибка синтаксического анализа XML, RSS лента

Что же такое RSS-лента?

RSS-лента (или RSS-фиды) – это специальные каналы, через которые у вас есть возможность подписаться на обновления понравившегося вам сайта. Допустим, вы гуляли по интернету и наткнулись на интересный сайт. Можно конечно занести его в закладки браузера. И регулярно заходить на него и смотреть, появились ли обновления. Хорошо если он один или их несколько. А если таких сайтов десятки или сотни, то это отнимет кучу времени. Для этого и используется RSS-лента, позволяющая получать только обновления понравившегося ресурса.

Так же многие веб-мастера оценили возможности этого сервиса и используют RSS-канал своего интернет проекта для поддержания посещаемости и общения с постоянной аудитории своего сайта. И когда возникает ошибка в RSS, то автоматически теряется связь с читателями сайта и нужно срочно решать этот вопрос. Не внимание к этой проблеме может негативно сказаться на посещаемости вашего сайта.

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

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

Дальше по моей проблеме. Когда ещё только настраивал свою RSS-ленту, создал дополнительный электронный ящик и подписался на обновления своего собственного блога. Всё было замечательно и после публикации очередного поста через 12 часов приходило сообщение о появлении новой статьи на блоге, на который я подписан. Всё было нормально.

Затем что-то в RSS-фиде нарушилось. Я не сразу заметил проблему в силу занятости. Зашёл на электронный ящик и обнаружил, что никакие сообщения об обновлении блога не приходят.

Я полез в Фид. Честно говоря, не заходил сюда давненько. Не было необходимости. Вот по ссылке, указанной на скриншоте, можно понять, в каком состоянии находиться ваш фид.

rss feed

Если всё нормально, то будет такая стандартная запись:

rss лента

У меня же выдало такую ошибку. Сервис предложил обратиться к Валидатору (онлайн инструменту, который проверяет html-код файла на соответствие стандартам кодирования).

rss xml

Я перешёл на страницу Валидатора. Кстати, как работать с этим сервисом, я буду рассказывать в следующих статьях, поэтому рекомендую подписаться на обновления блога.

Валидатор выдал мне вот такой ужас, который вы видите на картинке. Ему не нравился синтаксис html-кода. Галочкой показана ошибка.

ошибка

Я решил посмотреть исходный код страницы. Когда перешёл, увидел вот такую страшную штуку:

ошибка синтаксического анализа xml

Из-за этого RSS-фид работал не корректно.

То, что проблема с ним из-за ошибки синтаксического анализа xml – это факт. Но её решение сугубо индивидуально, так как она может быть вызвана различными факторами. Это может быть и некорректная правка кода файлов темы. Или конфликт плагинов или особенности темы WordPress. Да всё что угодно.

Вариантов решения этого вопроса предложено в сети было не много. Некоторые рекомендовали поочерёдно отключать плагины и смотреть – ушла ли ошибка. Но результатов это не дало.

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

RSS-лента перестала работать? Исправляем ошибки синтаксического анализа xml

Итак, предлагаю пути решения этой проблемы, которые я обнаружил.

Вариант 1.

Плагин Fix RSS Feed. Вы его стандартно устанавливаете и видите в панели управления (пункт 1). Затем нажимаете на кнопку Restore Fix (Пункт 2). Плагин сам находит проблему и её решает. Если проблема находиться в поле его компетенции, то он автоматически её убирает. Но мне не помогло.

Плагин Fix RSS Feed

Решил обратиться к фрилансерам и те, кто откликнулись, захотели за решение проблемы (50$). Решил сам разобраться, так как лучше быть готовым к проблемам такого типа и знать, как они решаются. Покопался полдня в интернете и нашёл ещё варианты.

Вариант 2.

Ампутация части файлов, связанных с фидом (перед редактирование обязательно сохраните копии этих файлов где-нибудь).  В корневой папке Вашего сайта на хостинге заходим в каталог wp-includes и с помощью Filezilla переносим следующие файлы на компьютер. Нужно будет кое-что подкорректировать в них.

Вот эти файлы:

feed-atom-comments.php
feed-atom.php
feed-rdf.php
feed-rss.php
feed-rss2-comments.php
feed-rss2.php

В feed-atom-comments.php и feed-atom.php нужно убрать всё, что находится до:

В feed-rdf.php до:

У feed-rss.php убираем всё до:

В feed-rss2-comments.php и feed-rss2.php до:

Вот такая штука. Это экстремально, но действенно. Очень важно, чтобы не было пустых строк и символов в начале и в конце файлов! Всё сохраняем и переносим обратно на хостинг.

Если ошибка была в этом, то результаты вы увидите не сразу, а через некоторое время.

В моём случае, результатов я не увидел.

Вариант 3. Кодировка.

Я взял все файлы темы с расширением php. Убрал пустые строки и символы в начале и в конце всех фалов и сохранил с кодировкой UTF-8 (без BOM).

rss wordpress

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

Надеюсь, что такой проблемы у вас не возникнет. Но в случае если RSS-лента вашего сайта перестала работать, и обнаружилась ошибка синтаксического анализа xml, вы будете знать, что делать. На этом всё. Впереди ещё много интересного, поэтому подписывайтесь на обновления блога.

RSS Fast – моментальное получение обновлений читаемых блогов:

На связи был Виталий Калинин!

Читайте ещё интересное на блоге
Evernote — важный инструмент для интернет бизнеса
Секрет правильного утра для мужчин. Встречайте! Утренняя зарядка и контрастный душ.
Скрываем партнёрские ссылки. Пошаговый алгоритм
Размещаем счетчики посещений сайта в одну линию + хорошая новость на блоге
Как экономно разместить баннеры? Создать ротатор баннеров. Экономия места в сайдбаре (Часть 2)
Знакомьтесь - сервисы облачного хранения данных. Используйте облако данных, живите спокойно
Понравилась статья? Поделитесь с друзьями!

Оставьте свой первый комментарий и получите ценный подарок

Комментариев 4 на “Неккоректно работает RSS лента блога? Убираем ошибки синтаксического анализа XML
  1. Да, с RSS иногда бывают проблемы, хоть и не так часто. Статья реально полезна оказалась лично для меня.

    • Лучше пускай будет информация под рукой, чем искать её по всему инету, как было в моём случае. :oops:

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

    • По-моему, RSS это не панацея, а ещё один из способов привлечения посетителей на сайт. Если не будет посетителей, не с кем будет взаимодействовать. Андрей, я Вас прекрасно понимаю. Все ставят различные задачи перед своим интернет ресурсом. Спасибо за мнение!

Comments are closed.


Внимание! На блоге проводится конкурс лучшего комментатора за месяц!

Хостинг