Что за ошибка «На сайте возникли временные проблемы технического характера»?
Полистав немного различные блоги, касающиеся WordPress, в том числе и форум официального сообщества WordPress, можно сказать, что под такое описание попадает целая группа ошибок — ошибки доступа к каким-либо плагинам, ошибки в темах и даже нехватка памяти.
В моем случае ошибка возникла ровно после того момента, как была обновлена версия PHP с 5.х на 7.х. При этом, «коварность» ошибки заключалась именно в том, что отдельные страницы, страницы рубрик, меток и архивов открывались нормально (то есть, в моем блоге — это всё верхнее меню за исключением пары пунктов), а при попытке открыть полный текст статьи выдавалась ошибка «На сайте возникли временные проблемы технического характера». То есть, если бы не случай (потребовалось найти одну статью в блоге), то про ошибку я бы узнал спустя несколько дней и не из комментариев пользователей, а, например, из ВК, так как доступ к комментариям открыт только в статьях.
Способ решения проблемы
На самом деле решить проблему можно относительно просто.
1. Проверяем работоспособность плагинов
Первый способ относительно долгий, но не требует каких-либо даже маломальских знаний — сменить шаблон оформления на один из предоставляемых по умолчанию и поочередно отключать все плагины, проверяя работоспособность блога. Таким образом, спустя N-ое количество времени вы можете обнаружить, какой из плагинов дает сбой и либо его обновить, либо, если плагин заброшен разработчиками — удалить его и привести свой блог в работоспособное состояние.
При этом, чтобы не терять напрасно время, рекомендую сразу же отключить все плагины для кэширования.
2. Анализируем логи сервера
Первое, что необходимо сделать — это найти на сервере лог ошибок. Например, у меня на новом хостинге — это файл webdelphi_error.log.
Открываем этот файл и внимательно изучаем ошибки, которые возникали при доступе к сайту, например, можно встретить вот такое сообщение:
Судя по этому сообщению, проблема возникла в плагине Advanced Category Excluder. Следовательно, необходимо, как и в первом случае, либо обновить плагин до актуальной версии, либо удалить его и проверить работу сайта. Таким образом обрабатываем весь лог и, с вероятностью 99,9% проблема будет решена.
Кстати, в моем случае, именно плагин Advanced Category Excluder и привел к сбою в блоге. После удаления плагина блог заработал…правда теперь нельзя скрыть записи из отдельных рубрик из RSS, что не хорошо, но, думаю, что найду какой-нибудь аналог плагина.
Как избежать ошибки «На сайте возникли временные проблемы технического характера» при обновлении версии PHP
Сами разработчики WordPress не дают 100% гарантии, что такая ошибка не возникнет в процессе обновления версии PHP, однако одним из способов является использование специального плагина под названием «PHP Compatibility Checker«. Несмотря на то, что плагин еще не руссифицирован, пользоваться им достаточно просто.
Устанавливаем и активируем плагин. После этого находи плагин в списке плагинов и жмем ссылку «Start Scan»:
На открывшейся страничке выбираем опции сканирования — на совместимость с какой версией PHP проверять блог и что проверять — все плагины и темы или только активированные плагины или темы:
Я выбрал проверку на совместимость с PHP 7.3 только активированных плагинов и тем. Жмем кнопку «Scan Start» и ждем окончания сканирования.
После сканирования вы увидите достаточно информативный отчет по сканированию, что сможете прочитать обо всех ошибках и предупреждениях в плагинах и темах:
Используя этот лог, можно ещё перед обновлением PHP понять, какие плагины и темы могут быть причиной появления ошибки «На сайте возникли временные проблемы технического характера» и заранее избавиться от них или же обновить до актуальных версий.
Конечно, этот плагин не может дать 100% гарантии того, что абсолютно все потенциально опасные места сайта будут проверены и про это разработчики честно предупреждают в разделе «Limitations & Caveats«, однако эта проверка может в дальнейшем сильно облегчить вам жизнь при обновлении версии PHP.
Почему не стоит откладывать обновление PHP
Думаю, что сильно здесь расписывать потенциальные проблемы не стоит. Достаточно сказать, что, во-первых, обновления помогают сделать ваш сайт более безопасным, а, во-вторых, в отдельных случаях, повысить его производительность. Например, разработчики WordPress утверждают, что обновление PHP до 7.x способно ускорить сайт до 3-4 раз, по сравнению с старыми версиями. Я такого роста скорости не заметил, но, как знать, как знать…
Ещё одной причиной может служить то, что в один «прекрасный» момент вы можете столкнуться с тем, что просто не сможете обновить движок WordPress до актуальной версии. Например, у меня есть старенький сайт на таком же старом хостинге, который не дает также проста, как на Beget обновить версию PHP — надо писать в поддержку, долго ждать ответ и заниматься прочей тягомотиной. Так вот этот сайт теперь выдает вне вот такое сообщение при попытке обновиться:
Благо, что сайт старый и практически не обновляется, но, всё равно, как-то неуютно себя чувствуешь, когда заходишь в админ.панель.
Резюмируем
Ошибка WordPress «На сайте возникли временные проблемы технического характера» может возникать по различным причинам, однако, в 99% случаев проблема связана с каким-либо плагином или темой. Чтобы избавиться от проблемы необходимо проверить плагины и темы — отключить последние установленные (или все) или же, если ошибка возникает после обновления версии PHP — предварительно проверить все плагины и темы на совместимость с версией PHP, например, используя плагин «PHP Compatibility Checker«.