3 распространенные ошибки WordPress и как их исправить

Крушите свой рабочий стол в приступе отчаяния? Досадная ошибка привела к тому, что вы разлюбили WordPress?

WordPress – это замечательная платформа для блогов и система управления контентом, но нет программного обеспечения без ошибок. В этой статье рассматриваются искусные решения трех самых распространенных ошибок WordPress: «Белый экран смерти», «Внутренняя ошибка сервера» и «Ошибка установки соединения с базой данных».

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

1) Белый экран смерти

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

  • Нехватка памяти;
  • Плагин;
  • Тема.

Если экран смерти появляется на разных сайтах, которые используют один и тот же хостинг, то вы можете смело предположить, что проблема связана с провайдером хостинга. Если нет, то будьте уверены, что причина кроется в самом сайте.

Нехватка памяти

Часто проблемой, стоящей за этой ошибкой, является достижение лимита доступной памяти. Чтобы увеличить объем доступной памяти, найдите файл wp-config.php: перейдите к корневому каталогу вашего сайта с помощью FTP-клиента или файлового менеджера на панели управления хостингом. Внутри основного php тега нужно будет добавить строку кода, которая увеличит предельный лимит памяти до 64 МБ:

define('WP_MEMORY_LIMIT', '64M');

Можно задать и больше, чем 64 МБ, но это уже зависит от вашего сервера, поэтому 64 МБ, как правило, является безопасным вариантом. Возможно, увеличение памяти не помогло, или вы уже задали лимит выше 64 МБ? Тогда проблема может заключаться в плагинах или вашей теме.

Плагины

Если у вас есть доступ к панели администрирования, проблемы с плагинами легко решаются. Просто перейдите в раздел «Плагины» (Plugins) и отключите последний установленный плагин. Если это не помогло, можно отключить все плагины вашего сайта, для этого выделите их, поставив галочку в самом верху, и выберете команду «Отключить» (Deactivate).

Если же у вас нет доступа к панели администрирования, то альтернативным способом тестирования плагинов служит использование FTP. Если у вас есть FTP-клиент, то просто перейдите в соответствующий каталог.

Зайдите в каталог wp-content/plugins, в котором содержатся все установленные плагины. Просто переименуйте папку plugins, например, добавив слово в конец таким образом, что plugins станет plugins-test.

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

Если проблема кроется в плагине, причин этого может быть достаточно много. Самым лучшим выходом будет просто удалить его и найти плагин, который предоставляет такой же функционал. Попробуйте найти самый новый плагин, или тот, который был обновлен, чтобы он не вызывал проблем.

Темы

Если устранение неполадок в плагинах не помогло, тогда придется признать, что причина может быть в вашей теме. Первое, что нужно сделать — создать резервную копию папки темы. Затем вы можете просто удалить вашу тему, и WordPress установит тему по умолчанию.

Если вы обнаружили, что проблема заключена именно в теме, тогда нужно посмотреть файл functions.php. Плохо написанный код может быть причиной проблем, и если вы не уверены, что справитесь самостоятельно, то возможно, лучше связаться с автором темы. Рекомендуется приобретать проверенную тему, автор которой предлагает послепродажную поддержку.

Все еще бьетесь об стол в отчаянии? Есть другой способ, который может помочь — включение режима отладки.

Включение отладки PHP-кода

Если решения, приведенные выше, не помогли вам решить проблему, тогда нужно копать глубже. Процесс, описанный ниже, поможет вам обнаружить проблему. Однако исправление обнаруженных ошибок может потребовать от вас более специфичных знаний и навыков.

Сначала, откройте файл wp-config.php. И найдите в нем следующую строку:

define('WP_DEBUG', false);

Поместите ‘//’ в начале строки, так чтобы получилось:

//define('WP_DEBUG', false);

Теперь эта строка закомментирована. Следующий шаг: вставьте приведенный ниже код сразу после данной строки:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors',0);

Вот тут вам потребуются небольшие знания программирования. Действия, которые мы предприняли, позволят направить ошибки в файл под названием error.log (который находится в папке wp-content). Если вы не можете его найти, возможно, у вас нет прав для его создания. Просто создайте новый файл error.log и задайте для него права доступа 666.

Откройте файл error.log в текстовом редакторе и проверьте на ошибки PHP. Если это то, что вы не понимаете или в чем не уверены, то целесообразнее обратиться к кому-нибудь за помощью.

2) Внутренняя ошибка сервера

Если вы столкнулись с внутренней ошибкой сервера 500, тогда, возможно, вы еще не знаете действительно плохую новость — это может быть одной из многих проблем!

Поэтому берем горячий напиток с высоким содержанием кофеина, делаем глубокий вдох, и готовимся к предстоящему решению проблем. Есть ли хорошая новость? Да — некоторые подходы аналогичны методам, описанным в предыдущем разделе.

Плагины или тема

Обратитесь к секциям «Плагины» и «Темы» из предыдущего раздела. Метод решения проблемы полностью аналогичен.

Нехватка памяти

И снова, это решается так же, как описано в предыдущем разделе.

Некорректный .htaccess

Дело не в ваших плагинах и не в теме? Тогда пришло время проверить, не поврежден ли файл .htaccess. Сначала переименуйте данный файл — снова просто добавьте в конец «temp» или что-нибудь подобное. Не видите этот файл?

Тогда убедитесь, что вы включили опцию «отображать скрытые файлы». Как именно это сделать, зависит от вашего FTP-клиента, но это довольно просто. Например, в Filezilla, просто выберете сверху «Сервер» (Server) и затем — «Показывать скрытые файлы» (Show hidden files).

Теперь следующий шаг — сначала вернитесь назад в панель администрирования WordPress. Пройдите в «НастройкиПостоянные ссылки» (Settings – Permalinks) и затем сбросьте ваши постоянные ссылки. Сейчас вы сгенерировали новую версию рабочего файла, поэтому вы можете проверить, была ли решена проблема.

Включение PHP отладки

Это тоже было описано в разделе выше, поэтому снова пролистайте вверх.

3) Ошибка при установке соединения с базой данных

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

Если вы видите такое же сообщение об ошибке на серверной стороне (wp-admin) «Ошибка при установке соединения с базой данных» («Error establishing a database connection»), тогда пропустите следующий шаг.

Однако если видите другое сообщение об ошибке, в котором говорится что-то вроде «…..The database may need to be repaired…» («Возможно, требуется восстановление базы данных»), тогда вы должны добавить следующий код в ваш файл wp-config.php:

define('WP_ALLOW_REPAIR', true);

Затем перейдите на вот эту страницу http://www.адрес_вашего_сайта/wp-admin/maint/repair.php.

Теперь вы сможете увидеть опцию для восстановления базы данных. Как только вы восстановили ее, убедитесь, что вы удалили приведенный выше код из файла wp-config.php.

Файл wp-config.php

Вы меняли ваш пароль администратора, или пароль к базе данных? Если да, вам также нужно внести изменения и в файл wp-config.php. Поэтому зайдите в ваш файл wp-config.php, и убедитесь, что данная информация верна:

define('DB_NAME', 'database-name');
define('DB_USER', 'database-username');
define('DB_PASSWORD', 'database-password');
define('DB_HOST', 'localhost');

Важно проверить, значение хоста вашей базы данных, так что последняя строка корректна. В большинстве случаев, это будет localhost, но проверьте на всякий случай. Если вы запускаете WordPress на локальном сервере, замена localhost на IP-адрес может решить проблему.

Пообщайтесь со своим хостинг-провайдером

Если вы заметили ошибку, когда через сайт проходит большой поток трафика, тогда неисправность может быть на стороне вашего хостинг-провайдера.

Существуют методы, позволяющие проверить, отвечает ли сервер MySQL на запросы, но ваш провайдер также может сообщить вам это. В любом случае, поддерживать связь с вашим провайдером — это всегда хорошая идея, так почему бы не позвонить им?

Дальнейшие решения

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

Перевод статьи «3 common WordPress errors, plus how you can fix them» был подготовлен дружной командой проекта Сайтостроение от А до Я.