BloGGood.ru

Блог Костаневича Степана

До Нового Года осталось:

Блог на разные темы, seo-оптимизация, раскрутка сайта, создание сайта, вкусные эффекты для сайта и многое другое…

Главная » Wordpress » Ошибка с XML declaration в RSS-ленте. Решение проблемы.

Ошибка с XML declaration в RSS-ленте. Решение проблемы.

2013-03-03 / Вр:18:48 / просмотров: 14987

Совсем недавно я делал блог под заказ. Когда дело дошло до настройки RSS-ленты, мне браузеры выдали вот такую ошибку:

в Firefox

XML Parsing Error: XML or text declaration not at start of entity
Location: http://iuliandonici.com/feed
Line Number 3, Column 1:
^

в Opera

XML declaration not at beginning of document

в Chrome

This page contains the following errors:
error on line 2 at column 6: XML declaration allowed only at the start of the document
Below is a rendering of the page up to the first error.

Чтобы найти решение проблемы, я промучился 2 часа. Но теперь я знаю, что это за ошибка, почему она возникла и как ее исправить. А, поскольку с этой ошибкой сталкиваются практически все, кто ковыряется в коде WordPress, устанавливает новые плагины, или просто развивает свой блог изнутри, то уверен, что эта информация будет полезной.

Откуда взялась ошибка с XML declaration в RSS-ленте?

При создании feed (фида) используется XML формат. XML блок должен выводится первым в ленте и без всяких пробелов спереди. Некоторые плагины делают грубую ошибку, оставляя после себя те самые ненужные пробелы, которые и ломают всю нашу RSS-ленту, с чем я и столкнулся в заказе.
Когда я открыл исходный код блога, то увидел в самом верху огромное количество пробелов. Советую и вам посмотреть на ваших ресурсах. Если вы не знаете, как посмотреть исходный код сайта в браузере, пишите в комментариях.

Откуда взялась ошибка с XML declaration в RSS-ленте?

Исправление ошибки  XML declaration в RSS-ленте.

Итак, как я исправил ошибку?
Как вы уже поняли, нужно бороться со зловещими пробелами в начале сайта. Приступим.

1). В самом начале я проверил нет ли пробелов в файле темы functions.php.
Проверять нужно до

<?php

и после

?>

Если у вас имеются пробелы, удалите.

2). Посмотрите наличие пробелов в файле wp-config.php вначале кода и в конце.

3). Проверьте файлы wp-rss2.php и wp-atom.php. Если есть пробелы в начале или в конце кода, удалите.

4). Мне этих три пункта не помогли, так как пробелов в файлах не было. Тогда я в админ-панеле стал выключать по одному плагину. И вот, совершилось!!! Я нашел виноватого. После деактивации плагина "WP No External Links" все заработало.

5).  Если  у вас ошибка и далее висит, воспользуйтесь плагином "Fix RSS Feed Word Press". Этот плагин удаляет лишние пробелы в файлах, которые так мешают работе RSS-ленты.
Я плагин не использовал и не проверял на работоспособность. Сказать, на сколько он хорош не могу, но рекомендую, на всякий случай, сделать резервную копию полностью всего сайта, это во избежание лишних проблем, мало ли что может случиться.

6). Если вы для трансляции ленты на блоге используете Feedburner, и после всех этих исправлений он не хочет работать, сделайте такие действия:
зайдите в ваш аккаунт Feedburner => Мои фиды (My Feeds) =>нажмите на название фида =>Решение проблемы (Troubleshootize) => Resync Now. Эта операция обновит и ресинхонизирует ленту-RSS.

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

Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓

Получай обновления блога!!! Подпишись:

Популярные статьи:

45 Ответов на комментарий - Ошибка с XML declaration в RSS-ленте. Решение проблемы.

  1. Алексей

    Понимаю, что не так что-то делаю. Но не получается никак исправить(

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Алексей, посмотрите наличие пробелов в файле wp-config.php, wp-rss2.php и wp-atom.php вначале кода и в конце. Если были пробелы, удалите их.
    Если это не помогло, пробуйте в админ-панеле выключать по одному плагину. Таким образом вы найдете плагин, который портит всю картину.
    Спасибо за комментарий.

    Ответить

    Citrus612 отвечает:

    Степан, а у меня вообще нет таких файлов в WordPress!
    Раньше работало RSS, сейчас нет! (

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Каких нет:
    functions.php, wp-rss2.php, wp-atom.php, wp-config.php ?

    Ответить

    Citrus612 отвечает:

    Добрый день!

    Нет файлов: wp-rss2.php, wp-atom.php.
    Проблему решил обычной переактивацией темы!

    Скорее всего, косяк был связан с тем, что сейчас настраиваю плагины, тему и т.д. т.п., и при новой активации темы, файлы xml перезаписались по новой, ну и есть еще мысля, что установленный мной грабер YouTube перелопатил xml!

    А так все норм, спс за статью!

    Степан => автор блога

    Степан => автор блога отвечает:

    Здравствуйте! Это хорошо, что все решилось! Спасибо за комментарий!

  2. Алексей

    Кучу всего перепробовал. В итоге – вообще запорол файлы, сайт не запускался. Сделал бэкап и… вуаля… фид заработал :roll:

    Ответить

  3. Игорь Черноморец

    Здравствуйте! У меня была эта проблема две недели назад! я убрал пробелы во всех файлах RSS и помогло! Вчера опять это случилось после автоматического обновления вордпреса. Сразу полез в те же файлы убирать пробелы, но в этот раз не помогло, также убрал пробелы в файлах function.php , config.php и … НЕ ПОМОГЛО. установил плагин fix feed и ничего.Сделал бекап всего сайта и базы данных и…жопа :o ничего не помогает!Вариантов больше нет, вы можете ещё что то предложить или всё, лавочка закрыта :?: и надо будет заводить новую ленту?
    Заранее спасибо!

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Здравствуйте, Игорь! Смотрел на исходный код вашего сайта. Я увидел в исходном коде пробелы.
    Посмотрите наличие пробелов в файле wp-rss2.php и wp-atom.php вначале кода и в конце. Если не поможет, тогда повыключайте по одному плагину.

    Ответить

  4. Игорь Черноморец

    Спасибо вам за потраченное время на проверку моего кода,но вы увидели эти пробелы из-за того что я сделал уже бекап всем файлам блога и базе данных и по этому все вернулось как и было,а до этого я удалил все пробелы во всех файлах rss и во всех файлах шаблона и вообще во всех файлах php!!!! Конечно же деактивировал все плагины и пытался исправить с плагином fix rss feed ,короче сделал все что только можно было,прочитал около 100 статей на эту тему и не только на русском!!Какая то магия прямо!Ни в какую моя лента не хочет работать!Начал в серьез задумыватся о создании новой ленты,хорошо что подписчиков не так много,а то иначе бы застрелился :)

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

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

    Ответить

  5. Игорь Черноморец

    Хорошо попробую! Кстати вы сказали чтобы я убрал пробелы в файлах wp-rss2.php и wp-atom.php что это? или вы имели ввиду feed-rss2.php и feed-atom.php ?

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    wp-rss2.php и wp-atom.php отвечают за формирование Feed.

    Ответить

    Игорь Черноморец отвечает:

    А где эти файлы находяться? В какой папке?Я убирал пробелы во всех файлах rss типа feed-rss,feed-atom,feed-rss2,и т.п. короче все те которые начинаются с feed,а про файл wp-rss2.php не слышал раньше,где он?Ты меня извини пожалуйста за все эти вопросы,замучал я тебя наверно? Ну это последний мой вопрос и я отстану от тебя!!! :)

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Игорь, сразу в корне сайта, там, где находятся папки “wp-includes”, “wp-content”.

    Ответить

  6. Игорь Черноморец

    А у меня в корне нет этих файлов вообще!!!!Может это и есть моя проблема?Где они могут быть еще?

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Эти файлы находятся только там.
    wp-rss2.php и wp-atom.php отвечают за формирование Feed

    Ответить

  7. Игорь Черноморец

    Степан, у меня в корне сайта есть все файлы как и у тебя на скриншоте кроме двух нужных wp-rss2 wp-atom !!! :?: Ничего не понимаю, как это может быть?И как их можно вернуть, ведь скорей всего из-за этого моя лента сломана! Есть у тебя идея или мы зашли в тупик и оставить тебя уже в покое? :oops:

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Есть одна идея, но я, не уверен в ней на все 100%. Скачайте WordPress с официального сайта http://ru.wordpress.org/ и залейте себе эти два файла. Надеюсь, все заработает.

    Ответить

  8. Игорь Черноморец

    Степан, во первых я хочу поблагодарить тебя за твоё стремление помочь, поверь мне это не само разумеющейся!!!
    Во вторых, я сделал то, что ты сказал, но оказывается что эти файлы существуют только до версии 3.2 в следующих версиях этих файлов нет. В любом случае я скачал эти файлы и закачал в корень сайта, но ничего не помогло(эти файлы всего лишь редиректы файлов которые находятся в папке wp-includs там где находятся файлы feed-rss2.php feed-atom.php), но… я поменял шаблон по твоему совету и… лента заработала!!!! Когда вернул мой шаблон лента опять сломалась!Это значит что проблема в файлах самого шаблона, не так ли? я попробую убрать все пробелы во всех файлах php шаблона и если не поможет, то… всё, здаюсь!!! Придётся менять шаблон, а так не хочется, там у мне столько разных скриптов и кодов добавлено, я даже не помню какие!
    Степан, я безмерно тебе благодарен!!!!!!!!!!!!!!!!!!!

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Да, Игорь, я склоняюсь к тому, что это проблема в файлах самого шаблона. Еще раз проверь файл “functions.php” на наличие пробелов, а также файл “header.php”. Пробелы тщательно проверяй и вверху, и внизу.

    Ответить

  9. Игорь Черноморец

    Степан,проблема решена!Редактирование всех файлов шаблоне на исключение пробелов не помогла!!!!Но я скачал заново мой шаблон и установил его,лента заработала!Дальше я начал заливать на сервер файлы шаблона прошлого по одному каждый раз и проверял ленту на работоспособность.Залил все файлы кроме function.php и лента работала,как только залил function.php лента сломалась.Это значит что проблема и правда была именно в function.php!!!!Хотя никаких пробелов там не было(проверял 1000 раз)значит что то там другое!В любом случае,оставил новый файл и уже в ручную сделал все нужные изменения! Степан,я тебе уже говорил спасибо? :) Спасибо тебя еще раз!!!!!
    Отличный опыт я получил за последние 4 дня попыток исправления проблемы,теперь у меня есть достаточно информации и опыта на новую статью у себя на сайте :)

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Мне приятно было Вам хоть чем-то помочь. Приятно порадовало то, что Вы думающий, упорный и терпеливый веб-мастер. Желаю всяческих успехов в этом ремесле!!!

    Ответить

    Елена отвечает:

    Благодарю, ваш рецепт действует превосходно. Файл function.php заменен и лента снова работает.

    Ответить

  10. Игорь Черноморец

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

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Очень рад новому подписчику!!! Спасибо за пожелания успеха и удачи. Буду рад дальнейшему общению и дружескому обмену опытом. :arrow:

    Ответить

  11. Андрей

    Где найти файлы wp-rss2.php и wp-atom.php.??
    всю фаил зиллу перерыл

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Здравствуйте, Андрей. Если вы создаете сайты на движке CMS WordPress, тогда файлы wp-rss2.php и wp-atom.php найдете в корне сайта. Можете посмотреть на 6-ой комментарий.

    Ответить

  12. Kowkoed

    адрес блога/sitemap.xml

    Перепробовал все. Не хочет работать

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Вы не то делаете. Вы читаете как исправит ошибку RSS-ленты. RSS-лента, это не карта сайта формата xml. Вам нужно почитать вот эту статью http://bloggood.ru/wordpress/karta-sajta-dlya-wordpress.html/

    Ответить

  13. Иван

    Здравствуйте! Недавно столкнулся с такой проблемой, с сервиса feedburner перестали приходить новые статьи на e-mail читателей моего блога, но при этом, когда подписываешься на рассылку приходит письмо с подтверждением подписки. Уже несколько месяцев пытаюсь решить эту проблему самостоятельно, облазил весь рунет в поисках решения, но увы лекарства не нашел.

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

    FeedBulletin for: fotoshopblog
    This is FeedBulletin, a personalized feed for fotoshopblog. FeedBurner uses this feed to report account changes, “FeedMedic” trouble alerts, feed stats reports, and occasional FeedBurner announcements.
    PROBLEM: FeedMedic Alert for

    … ошоп|Блог – уроки Фотошоп для начинающих :?: :?: :?: :?:

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Здравствуйте, Иван! Пытался разобраться в вашей проблеме, но пока что увы, порадовать я ничем не смогу. Когда началась эта проблема? Вспомните, какие действия вы делали, после чего и появилась эта ошибка! Давайте как-то решим эту задачу вместе!

    Ответить

  14. Олег

    Спасибо Вам! Все вернулось к норме. Хотя как добавился пробел в файл wp-config не пойму, туда не лазил!

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Пожалуйста!
    Олег, посмотрел Вашь магазин резиновой обуви. Скажите, каким плагином Вы пользуетесь, для реализации корзины?

    Ответить

  15. Максим

    Здравствуйте Степан! У меня подобная проблема на opencart… не грузит карту сайта ([ссылка скрыта]) в хроме выдает ошибку в красной рамке с розовым фоном
    “This page contains the following errors:

    error on line 1 at column 7: XML declaration allowed only at the start of the document
    Below is a rendering of the page up to the first error.”

    В каких файлах в моем случае стоит искать пробелы?
    Заранее спасибо за ответ

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Максим, в opencart я не селен! Попробуйте для эксперимента заменить тему магазина, если ошибка исчезнет, значит ищите лишние пробелы в файлах шаблона

    Ответить

  16. mighty_dollar

    Здравствуйте, подскажите пожалуйста одну вещь. Feedberned выдает ошибку “Мы не смогли обнаружить действующего фида по данному адресу” :?: :?: что такое действующий фид? сам xml файл? Пробовал менять тему удалять пробелы – не помогает..

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Здравствуйте! Проверьте, правильно ли Вы все настроили! Дайте ссылку на Ваш фид, я сам посмотрю, может и подскажу что-то!

    Ответить

    mighty_dollar отвечает:

    Спасибо, но все решилось удалением в.htaccess 301 редиректа старой ленты)))

    Ответить

  17. Lucky

    Здравствуйте, у меня сначала не работала карта, яндекс вебмастер ругался, сегодня заметил что не работает и FeedBurner и то и то выдают одну и ту же ошибку:
    “This page contains the following errors:

    error on line 2 at column 6: XML declaration allowed only at the start of the document
    Below is a rendering of the page up to the first error.”

    Файлы не менял, лазил только Style.css и пытался перейти на новую версию PHP на хостинге, но не получалось, выводило ошибку в 1 файле, я его редактировал, но пробелы там не оставлял.

    Все файлы что Вы рекомендуете проверить, проверил, пробелов не нешел.

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Здравствуйте! У Вас же все гуд. RSS лента отображается корректно.

    Ответить

  18. Lucky

    На удивление да, сайт живет своей, собственной жизнью.

    Я ничего не делал, а на утро все стабилизировалось.

    Только не понятно почему, в индекс яндекса попали дубли всех статей сайта с окончанием /feed в конце. И это не на одном сайте, может у фидбернера глю какой то произошел?

    Теперь вот избавляюсь от этих дублей. :pop-corne: :| :pop-corne:

    Ответить

  19. Александр

    Отличная статья. Коротко и ясно всё объяснили, проблема решена. Спасибо за ваш труд!

    Ответить

    Степан => автор блога

    Степан => автор блога отвечает:

    Пожалуйста, Александр!

    Ответить

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

;-) :| :x :twisted: :smokes: :smile: :shock: :sad: :rose: :roll: :razz: :pop-corne: :oops: :o :mrgreen: :lol: :idea: :grin: :gazeta: :evil: :cry: :cool: :coffe: :arrow: :???: :?: :!:

Чтобы добавить в комментарий код HTML, PHP, CSS, JavaScript, нужно сделать так: [code] ваш код [/code]

Subscribe without commenting

Метки: ,

Мои цели на 2016 год:

1). Закончить тему «Bootstrap»

2). Закончить тему «Все про PHP и MySQL»

3). Довести количество статей до 600

4). Добиться стабильной посещаемости 2500 человек/сутки

5). Закончить все статьи, которые находятся в черновиках

6). Создать портфолио и мини интернет-магазин шаблонов

7). Создать книгу

8). Добиться стабильной посещаемости 3000 человек/сутки

9). Довести количество статей до 700

10). Увеличить число подписчиков до 250

Статистика по блогу

Количество записей на блоге: 669
Количество страниц на блоге: 20
Количество рубрик на блоге: 27
Количество меток на блоге: 71
Количество комментариев на блоге: 3663