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

Ошибка синтаксического анализа XML — никогда не видели такую фразу? Я вижу её каждый после обновления WordPress. После каждого обновления WordPress на моих блогах ломается feed или лента rss. И после ввода в адресную строку пути https://zmoe.ru/feed получаем такое:

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

Лечится это достаточно легко. Идём в папку с нашим сайтом, в частности  в папку wp-includes. В этой папке есть файлы, которые отвечают за вывод RSS лент:

feed-atom-comments.php

feed-atom.php

feed-rdf.php

feed-rss.php

feed-rss2-comments.php

feed-rss2.php

Открыв любой из этих файлов, мы увидим в начале примерно такой код:

<?php
/**
 * RSS 0.92 Feed Template for displaying RSS 0.92 Posts feed.
 *
 * @package WordPress
 */

header('Content-Type: ' . feed_content_type('rss-http') . '; charset=' . get_option('blog_charset'), true);
$more = 1;

echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?>

Вот этот код нужно просто удалить. И всё.

Я сделал себе папочку на компьютере, куда сохранил все эти исправленные файлы. После обновления WordPress я просто их закачиваю в папку wp-includes всех блогов. Это проще, чем на каждом сайте открывать каждый файл и удалять код.

Почему вообще ломается RSS? Одной из причин служат кривые плагины. Но отказаться от них не представляется возможным.

Существуют также плагины, которые созданы для исправления этого бага в вордпресс, например, плагин Fix My Feed RSS Repair. Но как показывает практика, они не всегда срабатывают, у меня не работал ни один подобный. Поэтому исправляю все вручную, ведь хорошо, что вордпресс обновляется не так часто:)

А у вас на блоге бывают такие проблемы с RSS?


Не нашли ответ? Воспользуйтесь поиском по сайту

5 комментариев
Читайте также другие интересные статьи на сайте...