• Решено serjutkin

    (@serjutkin)


    Здравствуйте.
    Неожиданно обнаружил, что не работают RSS ленты главной страницы и нескольких рубрик. Простым поиском в Яндексе найти решение не удалось — пробелов лишних нигде нет. Логическим путём удалось выяснить, что ошибка возникает, если у рубрики есть дочерние категории. То есть, в рубрике «Блог» RSS формируется и отображается нормально, а в рубрике «Рецензии» и в её дочерних категориях RSS создаётся с ошибкой. Грешу на последнее обновление WordPress, с ним вылезло ещё несколько ошибок. Но, возможно, я неправ.
    Что знатоки подскажут, как исправлять ситуацию?

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Модератор Юрий

    (@yube)

    Там ошибка.
    <message><![CDATA[<p>На сайте возникла критическая ошибка.</p><p><a href=&quot;https://wordpress.org/support/article/faq-troubleshooting/&quot;>Узнайте больше про решение проблем с WordPress.</a></p>]]></message>

    См. https://ru.wordpress.org/support/article/debugging-in-wordpress/

    Автор serjutkin

    (@serjutkin)

    Не очень понятно, каким боком это влияет на формирование RSS. Ну, допустим, sitemap generator, который выдавал критическую ошибку, мог влиять. Но почему только на отдельные рубрики? Плагин я отключил, ситуация не изменилась. Остались сообщения об устаревших плагинах, которые к рубрикам вообще никаким боком.

    Модератор Юрий

    (@yube)

    Не очень понятно, каким боком это влияет на формирование RSS.

    Прямым. Эта ошибка возникает во время формирования rss.

    Ну, допустим, sitemap generator,

    Вряд ли он имеет отношение к формированию rss.

    Но почему только на отдельные рубрики?

    Чтобы попытаться ответить на этот вопрос, нужно знать, какая именно ошибка возникает.

    Остались сообщения об устаревших плагинах, которые к рубрикам вообще никаким боком.

    То есть Вы решили и дальше теоретизировать вместо того, чтобы посмотреть в логах на саму ошибку? Ладно, Ваше право. Но дальше уже без меня.

    Автор serjutkin

    (@serjutkin)

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

    Я смотрю сообщения плагина Query monitor и поэтапно убираю проблемные плагины.

    • Ответ изменён 7 месяцев назад пользователем serjutkin.
    • Ответ изменён 7 месяцев назад пользователем serjutkin.
    Автор serjutkin

    (@serjutkin)

    Походу, вот оно:

    var qm_l10n = {«ajax_error»:»\u041e\u0448\u0438\u0431\u043a\u0438 PHP \u0432 \u043e\u0442\u0432\u0435\u0442\u0435 Ajax»,»ajaxurl»:»https:\/\/www.don-ald.ru\/wp-admin\/admin-ajax.php»,»auth_nonce»:{«on»:»5522e0e6d1″,»off»:»63b583dd32″,»editor-set»:»9f240df55b»},»fatal_error»:»PHP Fatal Error»};

    Но что с этим делать я пока не понимаю.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Это просто строка «Ошибка PHP в ответе Ajax», никаких деталей здесь нет.

    Нужно смотреть лог ошибок на сервере.

    Автор serjutkin

    (@serjutkin)

    Notice: Undefined variable: newposts in /bhome/part3/03/svutkin/don-ald.ru/www/wp-content/plugins/category-sticky-posts/bz_category_sticky.php on line 163

    Notice: Undefined variable: newposts in /bhome/part3/03/svutkin/don-ald.ru/www/wp-content/plugins/category-sticky-posts/bz_category_sticky.php on line 163

    Плагин приклеенного поста дурит, что ли?

    UPD: отключил плагин, сообщение об ошибке в строке 163 исчезло. Сообщение об ошибке AJAX осталось. RSS не работает.
    Копаем дальше.

    • Ответ изменён 7 месяцев назад пользователем serjutkin.
    Автор serjutkin

    (@serjutkin)

    По итогу двух дней: были убраны все плагины, на которые выдавал ошибку плагин Query Monitor. В настоящее время в режиме отладки браузер ошибок не показывает. Но сообщение об ошибке AJAX плагин выводит. Из проблемных остались только устаревшие коды в теме. Возможно, что проблема в них, но как их исправлять я не знаю.

    Первое сообщение и описание:

    Methods with the same name as their class will not be constructors in a future version of PHP; theme_MenuItem has a deprecated constructor

    `wp-content/themes/don2022/library/navigation.php:245
    load_template(‘wp-content/themes/don2022/library/navigation.php’)
    wp-includes/template.php:716
    locate_template()
    wp-content/themes/don2022/functions.php:312
    theme_include_lib()
    wp-content/themes/don2022/functions.php:59`

    Автор serjutkin

    (@serjutkin)

    Сообщение идентично первому, расшифровка

    `wp-content/themes/don2022/library/widgets.php:110
    load_template(‘wp-content/themes/don2022/library/widgets.php’)
    wp-includes/template.php:716
    locate_template()
    wp-content/themes/don2022/functions.php:312
    theme_include_lib()
    wp-content/themes/don2022/functions.php:61`

    Автор serjutkin

    (@serjutkin)

    И третье:

    `wp-content/themes/don2022/library/widgets.php:189
    load_template(‘wp-content/themes/don2022/library/widgets.php’)
    wp-includes/template.php:716
    locate_template()
    wp-content/themes/don2022/functions.php:312
    theme_include_lib()
    wp-content/themes/don2022/functions.php:61`

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Notice: Undefined variable

    Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP

    Это всё же не то: данные замечания, конечно, стоит исправить, но на текущий момент они не критичны и не приводят к фатальной ошибке.

    Нужно искать строки со словами Fatal Error, и именно в логах на сервере, а не в Query Monitor.

    Автор serjutkin

    (@serjutkin)

    Спасибо, догадался посмотреть error.log на хосте. Ошибка в плагине Ozh’ Better Feed. Отключил и RSS нормально заработала. Надо ли поискать альтернативу или пусть фид без плагинов работает? Подумаю. С остальным буду разбираться.

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Тема «RSS рубрик» закрыта для новых ответов.