Обычно владельцы блогов не беспокоятся относительно целостности имеющейся базы данных. В процессе смены версий изменения редко затрагивают базу данных, вследствие чего никаких проблем с ней обычно не возникает.
Однако, при помощи редактирования базы данных можно решить множество проблем, в частности, сбросить пароль, исправить URL-адреса, выполнить корректуру сразу нескольких записей и т.д.
Перед внесением в базу данных каких-либо изменений важно помнить, что отменить их невозможно. То, что было удалено, вернуть уже не удастся. Даже если вы полностью уверены в правильности своих действий, обязательно создайте резервную копию базы данных.
Из чего состоит база данных
База данных включает в себя десять таблиц, которые могут быть в любое время отредактированы:
- wp_comments: содержит все комментарии
- wp_links: содержит добавленные ссылки и ссылочные данные
- wp_options: содержит настройки блога
- wp_postmeta: содержит метаданные записей
- wp_posts: содержит существующие записи
- wp_terms: содержит рубрики и метки
- wp_term_relationships: содержит связи рубрик и меток с записями
- wp_term_taxonomy: содержит описания для рубрик и меток
- wp_usermeta: содержит пользовательские метаданные
- wp_users: содержит список существующих пользователей
Полное описание всех таблиц можно найти здесь: codex.wordpress.org/Database_Description.
Наиболее полезные возможности предлагают таблицы wp_options, wp_posts и wp_users.
Решение проблем при помощи редактирования базы данных
Одна из довольно распространенных проблем, связанных с обновлением WordPress, заключается в сумасшедшем поведении виджетов, которые дают сбой и на экран выводится пустая страница. Инструкции по обновлению версии WordPress утверждают, что перед обновлением нужно отключить все плагины и установить тему по умолчанию. В таком случае ошибка с пустой страницей не появится.
Однако, если эта ошибка все равно возникла, вероятнее всего, ее причиной явились виджеты. Для того чтобы избавиться от ошибок с виджетами, необходимо почистить таблицу wp_options. Отыскать нужные виджеты нелегко, однако их имена во многом похожи на названия имеющихся плагинов. Путем логического анализа можно выделить те виджеты, которые нуждаются в чистке. К сожалению, иного способа бороться с пустой страницей нет, поэтому приходится идти на риск.
Другой вопрос, который можно решить с помощью базы данных, это смена и сброс пользовательского пароля. Увидеть пароль какого-либо конкретного пользователя вы не в состоянии, поскольку он зашифрован, однако сменить его на какой-либо другой вы вполне можете. При смене важно помнить, что новый пароль требует обязательного MD5-шифрования, которое осуществляется посредством PhpMyAdmin или при помощи любых других инструментов управления MySQL. В принципе, все что нужно сделать, это ввести новый пароль в виде обычного текста и затем применить MD5 шифрование для конкретного поля. В конечном счете вы получите закодированную строку, содержащую придуманный вами пароль.
Наконец, вы можете вносить корректировки в любое количество опубликованных записей. К примеру, если вы решили сменить домен, и хотите перенести на него все свои изображения (говоря иными словами, изменить путь olddomain.com/wp-content/image.jpg на newdomain.com/wp-content/image.jpg), сделать это можно как при помощи разнообразных плагинов, так и при помощи SQL запроса, который выполнит поиск и замену всех элементов в базе данных. Он может выглядеть следующим образом:
UPDATE wp_posts SET post_content = REPLACE ( post_content, 'olddomain.com/wp-content/', 'newdomain.com/wp-content/');
Этот запрос находит в таблице wp_posts каждое вхождение строки «olddomain.com/wp-content/» и заменяет ее на «newdomain.com/wp-content/». Довольно изящное и удобное решение, однако, если вы допустите какую-либо ошибку, вернуть изменения можно будет только в том случае, если существует резервная копия базы данных.