Искусство устранения неполадок WordPress
Если вы новичок в WordPress, то вам неизвестно, почему что-то не работает. Наша цель не объяснить, как исправить все проблемы, а описать основные этапы процесса поиска и устранения неисправностей в WordPress:

- Основные принципы
- Понимание того, что вы делаете
- Изучение документации
- Изучение раздела «Справка»
- Изучение кодекса WordPress
- Поиск подсказок
- Очистите все данные браузера
- Обновление WordPress
- Сохраняйте резервные копии
- Думайте логически
- Определение
- Воспроизведение
- Устранение посторонних факторов
- Тестирование
- Чего нужно избегать
- Массовая активация плагинов
- Сомнительные плагины и темы
- Использование огромного количества плагинов
- Сторонние сервисы
- Изменение ядра
- Основные этапы устранения неполадок
- Ознакомьтесь с документацией
- Проверьте все настройки
- Проверьте логи ошибок
- Проверьте файл functions.php
- Проверьте код на наличие синтаксических ошибок
- Дополнительные действия
- Откат
- Режим отладки
- Настройка WordPress по умолчанию
Основные принципы
Устранение неисправностей WordPress начинается со следующих шагов:
Понимание того, что вы делаете
WordPress позволяет делать все очень просто. Но критически важно понимать хотя бы основные принципы его работы. Четкое понимание WordPress позволяет сделать все проще, в том числе и устранение неполадок. Хорошая новость заключается в том, что существуют миллионы способов изучить основы WordPress. Найдите время, чтобы поискать ресурсы по данной тематике и собрать их вместе.
Изучение документации
Всегда читайте файлы readme.txt и документацию по темам и плагинам. На протяжении уже долгого времени работы с WordPress большинство вопросов, с которыми я встречался, четко объяснялись в соответствующем файле readme.txt. Почти каждый плагин или тема, размещенные на WordPress.org, должны включать в себя файл readme.txt.
Как и во всех других областях, лучший способ решения проблемы - не допустить ее вообще. Каждый раз, перечитывая имеющуюся документацию, вы получаете информацию, необходимую для того, чтобы избежать ошибок при работе с плагином или темой.
Изучение раздела «Справка»
Используйте вкладку «Справка» в панели администрирования, чтобы в любое время получить информацию по интересующей вас теме. В большинстве разделов панели администрирования WordPress в правом верхнем углу страницы есть вкладка «Справка». Нажав на нее, вы получите полезную информацию, которая может помочь ответить на ваши вопросы. Качественные плагины также сопровождаются разделом «Справка».
Изучение кодекса WordPress
Еще один полезный источник информации - Кодекс WordPress. В нем предоставлена подробная информация почти о каждом аспекте WordPress. Изучив официальную документацию, вы существенно уменьшите вероятность того, что у вас что-то пойдет не так.
Поиск подсказок
Устранение какого-нибудь бага или проблемы может показаться невыполнимой задачей. Чтобы все же найти решение, попробуйте поискать какую-нибудь связанную с ними информацию. В интернете есть множество полезной информации по WordPress, и до этого кто-то уже сталкивался с этой проблемой, решил ее и написал об этом.
Очистите все данные браузера
Браузеры помнят много вещей о страницах и ресурсах, которые вы посещали. Чтобы быть уверенным, что вы тестируете нужный код, очистите cookie браузера, кэш и данные форм. Мне нравится использовать несколько браузеров, чтобы некоторые из них работали в
"чистом" режиме, без сохранения истории или данных вообще.
Обновление WordPress
Убедитесь, что вы используете последнюю версию WordPress и всех плагинов. Это самый лучший способ исключить проблемы, связанные с несовместимостью из-за работы устаревших версий.
Сохраняйте резервные копии
Всегда следите за тем, чтобы у вас были полные резервные копии вашего сайта. Они должны включать в себя и файлы базы данных. Главное, чтобы у вас всегда были резервные копии, с помощью которых при необходимости можно восстановить весь функционал.
Думайте логически

Всякий раз, когда вы занимаетесь устранением неполадок, старайтесь мыслить логически. Помните, что вы имеете дело со сценариями логики, так что теоретически всегда можно определить причину проблемы.
В целом, устранение неполадок включает в себя определение и воспроизведение проблемы, устранение посторонних факторов и выполнение достаточного для проверки гипотезы количества тестов. Вот краткий обзор каждого из этих понятий.
Определение
Чтобы понять, что вы пытаетесь исправить, полезно уметь описать или определить это. Например: "Моя домашняя страница не загружается". Еще лучше: "Моя домашняя страница не загружает нужный шаблон темы". Продолжая эту мысль, в конечном итоге более точное определение будет значительным шагом вперед в решении проблемы, например:
"Моя домашняя страница не загружает нужный шаблон темы, когда в настройках чтения в качестве главной страницы задана статическая страница".
В этом случае само определение намекает на решение. Оно будет заключаться в проверке того, содержит ли тема соответствующий файл шаблона.
Воспроизведение
Чтобы найти решение, нужно последовательно повторить эту проблему. После того, как проблема была воспроизведена, мы можем протестировать ее. Давайте предположим, что вы используете плагин электронной коммерции, который не обрабатывает определенные операции. Он работает, но не всегда.
Конечно, вы могли бы начать изменять настройки и редактировать код в надежде, что все заработает. Но было бы гораздо лучше воспроизвести неработающую транзакцию и ограничить тестирование только этим конкретным случаем. Воспроизведение гарантирует, что действия, которые вы предпринимаете, применяются в нужном направлении.
Устранение посторонних факторов
Чтобы выделить и определить проблему, важно устранить как можно больше посторонних факторов. Например, давайте представим, что вы только что активировали 50 плагинов, и теперь ваши страницы не загружаются. Чтобы определить, какие плагины вызывают эту проблему, вы можете начать с исключения стольких переменных (т.е., плагинов), сколько это только возможно.
Отключите все плагины и попробуйте еще раз загрузить домашнюю страницу, и вы сразу увидите, вызвана ли проблема одним или несколькими из установленных плагинов. Если домашняя страница вдруг снова загрузится, тогда вы можете начать повторно по одному включать плагины, пока причина неполадки не будет выявлена. Процесс устранения посторонних факторов является мощным инструментом исправления неполадок.
Тестирование
Задействовав описанные стратегии, можно начать тестирование потенциальных предположений. Когда вы определяете причину неполадки, вы работаете с теми же принципами и понятиями, которые используются в научных исследованиях: изучение текущих условий, определение гипотез, выполнение тестов, анализ данных и формирование выводов.
Чего нужно избегать
Список того, чего не нужно делать:
Массовая активация плагинов
Не включайте множество плагинов одновременно. Люди устанавливают «пачки плагинов», а затем активируют их все сразу, ожидая, что все будет «работать» отлично. Такое случается довольно редко, поэтому рекомендуется потратить больше времени и активировать по одному плагину за раз. Таким образом, вы сможете настроить плагин и проверить его работу в чистой среде. Если сразу активировать целую кучу плагинов, и после этого проявятся какие-нибудь ошибки или конфликты, то вы не будете иметь ни малейшего представления о том, какой плагин все это вызывает.
Сомнительные плагины и темы
Старайтесь, когда это только возможно устанавливать плагины и темы с WordPress.org. Если вы вынуждены использовать сторонние сайты, убедитесь, что они является авторитетными и заслуживающими доверия. Иначе вы сильно рискуете. Вредоносный код обычно встраивается в плагины и темы, которые можно найти на различных пиратских "файлообменниках".
В целом, это всегда плохая идея загружать нелегальные копии какого-нибудь кода. Это самый популярный способ внедрить в программные продукты различные скрипты и другие вредоносные элементы. Старайтесь использовать только официальные источники, это поможет вам обеспечить безопасность своего сайта.
Использование огромного количества плагинов
Я призываю людей следовать более умеренному подходу и устанавливать только те плагины, которые необходимы. Если вы активируете сумасшедшее количество плагинов, это только ухудшит работу сайта. Увеличит нагрузку на сервер и потребление драгоценных ресурсов, таких как пропускная способность канала, использование памяти и процессора.
Сторонние сервисы
Убедитесь, что вы полностью понимаете, что делает сторонний функционал еще до того, как предоставите ему доступ к базе данных и файлам.
Например, если у вас возникли проблемы, и вы не можете понять их причину, дважды проверьте, не задействованы ли в этом сторонние скрипты или плагины.
Но определить, какие именно изменения вносят, к примеру, API, виджеты Facebook и так далее, может оказаться затруднительно. API-интерфейсы постоянно меняются, так что если вы подключаете какой-нибудь из них, убедитесь, что знаете, что он делает.
Изменение ядра
При работе с WordPress не вносите изменения в файлы ядра. То же самое касается плагинов и тем. Но файлы ядра не изменяйте ни в коем случае. Если вы хотите сделать это, помните, что это принесет вам больше сложностей, чем проблема, которую вы пытаетесь решить. Если вам нужно внести изменения в функционал ядра, используйте плагин или файл functions.php вашей темы. В конце концов, именно для этого они и предназначены.
Основные этапы устранения неполадок
Если вы в чем-то сомневаетесь, я рекомендую вам следовать стандартным этапам процесса устранения неполадок:
Ознакомьтесь с документацией
Всегда изучайте документацию темы или плагина. Часто в документации описываются известные ошибки и возможные пути их обхода или решения.
Проверьте все настройки
Перед использованием плагина или темы изучите все доступные настройки и параметры. Часто какой-то непонятный вам параметр полностью изменяет работу плагина. Если вы пытаетесь диагностировать и устранить какую-либо проблему, проверьте настройки каждого параметра плагина. Возможно, что возникшая проблема решается буквально в один клик.
Проверьте логи ошибок
Каждый сайт должен иметь какой-нибудь механизм для регистрации ошибок и доступа. Логи ошибок и доступа позволяют узнать, какие и почему возникали ошибки. Логи являются кладезем полезной информации. Если вы не знаете, как просмотреть логи доступа и ошибок своего сайта, поинтересуйтесь об этом у своего хостинг-провайдера.
Проверьте файл functions.php
Если вы пытаетесь диагностировать какие-либо проблемы, связанные с темой, проверьте все пользовательские скрипты, которые добавлялись через файл functions.php. Проверьте все недавно добавленные функции, чтобы определить, связан ли какой-либо код в файле functions.php с данной проблемой.
Проверьте код на наличие синтаксических ошибок
Всякий раз, когда вы приступаете к устранению неполадок, проверьте весь код на наличие опечаток или других ошибок. Или попросите коллегу-разработчика взглянуть на код. Лучше, если программа, которую вы используете для редактирования кода, поддерживает подсветку синтаксиса, и позволяет легко обнаружить ошибки или опечатки.
Дополнительные действия
Также при устранении неполадок не забудьте проверить следующее:
- Пользовательские директивы в файле wp-config.php;
- Пользовательские директивы в файле php.ini;
- Пользовательские директивы во всех файлах .htaccess;
- Настройки и директивы, заданные с помощью панели управления сервером.
Если задействован любой из этих элементов, он может быть связан с неполадкой.
Откат
Если вы столкнулись с какой-либо трудностью, попробуйте отменить свои предыдущие действия. В веб-разработке это называют "откат" к предыдущей версии или настройкам. Например, если вы только что обновили какой-нибудь плагин, и его новая версия стала причиной проблемы, можно вернуться к предыдущей версии.
Если что-то перестает работать должным образом, попробуйте "отменить" последние шаги. То есть, вам нужно вернуться к последнему рабочему состоянию и начать снова с этой точки. Часто это позволяет выявить ошибки или несовместимости.
Режим отладки
Еще один замечательный способ устранения неполадок - это запустить WordPress в режиме "отладки". В режиме отладки выводится информация об ошибках, предупреждения и уведомления, которые могут дать нам ценнейшие сведения о том, что происходит с системой. Как сказано в кодексе WordPress, вы можете включить режим отладки, установив для WP_DEBUG в файле config.php значение true.
Например, так:
define('WP_DEBUG', true); // включение режима отладки
Когда закончите проверку, чтобы отключить режим отладки, измените обратно true на false (без кавычек). Для получения более подробной информации обратитесь к кодексу WP. Также в Plugin Directory вы можете найти ряд отличных плагинов:
Если вы обнаружили ошибку в теме или плагине, обратитесь к разработчику. Если вы обнаружили ошибку в ядре WordPress, выполните действия, описанные в руководстве по сообщениям об ошибках кодекса WordPress.
Совет: Когда речь идет о PHP, есть четкое различие между уведомлениями, предупреждениями и ошибками. Если вы видите в журнале ошибок ошибки и предупреждения, это не очень хорошо. Но если там появляются уведомления, это не страшно, в 99,9% случаев вам не о чем волноваться. Скорее всего, это уведомления для передачи информации от разработчиков о передовых методах.
Если вы видите уведомления, просто ознакомьтесь с ними: уведомления не означают ничего плохого. Если вы не хотите видеть их, отключите режим отладки или измените уровень отчетов об ошибках PHP на сервере.
Настройка WordPress по умолчанию
Если плагины или темы не работают на текущей версии вашего WordPress-сайта, попробуйте в целях тестирования задать все установки CMS по умолчанию. Воспроизведение стандартной среды даст исходную точку и позволит убедиться, что все работает, как ожидалось. Это также позволяет сравнить различия между сайтом с настройками по умолчанию и сайтом, на котором тема или плагин не работают.
Настройки по умолчанию должны быть заданы именно так, как они определяются сразу после установки дистрибутива, без каких-либо изменений. Не изменяйте ничего для плагинов или тем. Это даст базу для тестирования работоспособности функционала тем и плагинов.
Предположим, что вы создаете сайт на WordPress и настраиваете несколько параметров. После этого вы устанавливаете новый плагин, и что-то работает не так, как заявлено. Имея возможность задать установки WordPress по умолчанию, вы сможете легко определить, заключается ли причина сбоя в плагине или в чем-то другом. Установите и активируйте плагин на WordPress, работающий с настройками по умолчанию, и посмотрите, работает ли он. Если он работает, вы можете начать устранение неполадок, сравнивая различия между вашим сайтом и вариантом с установками по умолчанию.
Двигаясь дальше, вы можете начать воссоздавать свой сайт на «полигоне», проверяя работоспособность после каждого шага. Вы увидите, после установки какого плагина или скрипта сайт перестает работать. Это точно укажет вам, какая часть системы конфликтует с плагином.
Если плагин не работает на WordPress по умолчанию, вы должны обратиться к разработчику плагина.
Сброс базы данных
Если вы имеете дело с новым сайтом, который еще не содержит контента, то можете попробовать сбросить базу данных. Существует несколько подходящих для этого плагинов (смотрите список ссылок ниже). Это также можно сделать вручную, удалив старую базу данных и открыв установочный файл /wp-admin/install.php в браузере. Таким образом, вы инициируете процесс установки и воссоздания базы данных.
Совет: Даже если у вас нет никаких проблем с сайтом, сброс базы данных после экспериментов с кучей новых тем и плагинов, это отличный способ очистить оставшиеся данные до завершения этапа настройки перед началом развития сайта:
Начните сначала
Если все остальное не дало результата, попробуйте начать с установки новой чистой системы WordPress и воссоздавайте свой сайт по частям. Это позволит определить на каком этапе развития сайта возникает проблема. В некоторых случаях проблему можно решить, сбросив базу данных и загрузив новый набор файлов.
Поиск и устранение неполадок плагинов
Если после обновления или включения темы (плагина) что-то перестает работать, то, скорее всего, проблему вызывает этот плагин или тема. Вот почему лучше устанавливать и настраивать плагины по одному, проверяя работу каждого. Если вы не уверены, какой плагин или тема вызывает проблему, существует проверенная стратегия диагностирования.
Вот общая последовательность этапов:
- Некоторые функции не работают должным образом;
- Для диагностики проблемы временно отключите все плагины;
- Затем повторно активируйте каждый плагин по одному, проверяя работу каждого.
Если устраняете проблему конкретного плагина, то вам нужно отключить все плагины кроме этого конкретного плагина. Идея заключается в том, чтобы исключить посторонние факторы и определить, какие именно плагины является причиной проблемы. Ниже приводится график, на котором изображен весь процесс:

Поиск и устранение неполадок плагинов WordPress
Я много раз использовал этот метод на сайтах клиентов, на которых используется множество плагинов. Если у вас на сайте задействовано много плагинов, вам будет проще настроить тестовую систему WordPress.
Примечание: Перед отключением плагинов вы можете использовать "режим обслуживания". Это проще всего сделать для одного плагина, однако не имеет смысла, если вы отключаете плагины для диагностики проблем.
Поиск и устранение неполадок темы
Например, чтобы определить, является ли тема причиной проблемы, попробуйте переключиться на одну из тем WordPress по умолчанию. Если ошибка не устранена, то проблема заключается не в вашей теме. Если ошибка исчезала, то проблема связана с темой.
Примеры устранения конкретных проблем
В приведенных ниже примерах описаны действия по устранению неполадок, которые могут быть предприняты для диагностики конкретных проблем. Следуя логике каждого этапа, вы сможете лучше понять, как применять определенную стратегию для устранения неполадок в целом.
Не работает шорткод
Отличный пример, который иллюстрирует процесс устранения неполадок, это запрос на оказание помощи, который я получил какое-то время назад. Он заключался в том, чтобы я помог выяснить, почему на сайте не работают некоторые шорткоды.
Вот суть моего ответа, в котором объясняются несколько логических шагов, направленных на исключение посторонних факторов и определение причины проблемы:
- Попробуйте создать галерею в любой записи, чтобы увидеть, работают ли шорткоды WordPress;
- Попробуйте любой другой сторонний шорткод, чтобы увидеть, работают ли шорткоды с темой / плагинами;
- Разместите шорткод в другой записи или на странице, чтобы исключить из списка возможных причин проблемы место его размещения;
- Попробуйте разместить шорткод в любом виджете боковой панели с той же целью;
- Попробуйте разместить шорткод в текстовом виджете WordPress и посмотрите, возникнут ли проблемы;
- Попробуйте вставить шорткод в шаблон темы через <?php echo do_shortcode('[shortcode]'); ?>;
- Попробуйте вставить шорткод в тему WordPress по умолчанию, чтобы исключить все вопросы, связанные с темой;
- Попробуйте отключить плагины, чтобы исключить возможность конфликтов с ними.
Это не полный список действий при устранении неполадок с шорткодами, но этого было достаточно, чтобы помочь человеку разобраться и решить проблему.
Не работает E-mail
Допустим, у вас возникли проблемы, связанные с тем, что на WordPress не работает электронная почта. Возможно, WordPress не отправляет электронные письма. Может письма отправляются, но вы их не получаете. Или не получаете письма, отправленные на электронные ящики Hotmail. Когда вы сталкиваетесь с проблемами с электронной почтой, имейте в виду, что это может быть связано со многими факторами.
В том числе:
- WordPress;
- Активная тема WordPress;
- Плагины;
- Пользовательские скрипты;
- Серверное программное обеспечение;
- Правила / политика хостинга;
- Протоколы DNS / доменов;
- Функциональные возможности сети;
- Скрипты, блокирующие спам;
- Сторонние сервисы, такие как Gmail, Hotmail и т.д.;
- Заголовки писем.
Проблемы с электронной почтой являются одними из самых сложных для отладки. Существует плагин, который может помочь с некоторыми из этих пунктов, он называется Check Email. Вы можете начать с него, а затем продолжать диагностику, пока проблема не будет определена. Данный плагин поможет установить, связана ли проблема с WordPress или с чем-либо другим.
Обновления не работают
Когда речь идет об автоматическом обновлении в один клик, существует множество факторов, которые нужно учитывать:
- Проверьте лог ошибок сайта на наличие любых выявленных ошибок;
- Проведите диагностику и отладку плагинов (плагинов безопасности, плагинов брандмауэра и других);
- Проведите диагностику и отладку активной темы (пользовательские скрипты в файле functions.php и т.д.);
- Проверьте все пользовательские коды, включенные в файл wp-config.php;
- Проверьте все соответствующие директивы в файле .htaccess;
- Проверьте все блокирующие правила или правила брандмауэра, установленные на сервере;
- Проверьте все блокирующие правила или правила брандмауэра, установленные для хостинга.
Получение справки по WordPress
Самый быстрый способ найти именно то, что вам нужно, выполнить несколько быстрых поисковых запросов. Например, если у вас возникли проблемы с определенным плагином, задайте на поиск его название с любыми релевантными ключевыми словами. Если вы не нашли ничего полезного, вот несколько ресурсов, на которых вы можете получить помощь:
Форумы поддержки WordPress.
Руководство кодекса WordPress по устранению неполадок.
Руководство Кодекса WordPress по поиску справки.
WordPress IRC Live Help.
Вопросы WordPress.
Список разработчиков и дизайнеров WordPress.
Где получить справку по WordPress.
Если ничего полезного все равно не будет найдено, вам, возможно, придется связаться с разработчиком.
Прежде, чем обращаться в службу поддержки
После того, как вы перепробовали все возможные варианты, и это не помогло, вы можете обратиться за помощью к разработчику. Ниже приводится список того, что вы должны включить в запрос:
- Четкое, лаконичное описание проблемы и то, как ее воспроизвести;
- Соответствующие скриншоты, которые иллюстрируют то, что происходит;
- Название и описание сообщений об ошибках;
- URL-адрес вашего сайта и / или других записей, страниц;
- Название всех соответствующих плагинов или тем;
- Все действия или решения, которые вы уже перепробовали.
Подводя итоги
Когда вы в следующий раз столкнетесь с трудностями, обратитесь к этому руководству, которое поможет вам в диагностике и решении проблем. Научившись устранять неполадки своими силами, вы приобретете бесценный навык, который в будущем поможет вам сэкономить много времени.