Сегодня будет достаточно практическая публикация, в которой мы приведем несколько готовых полезных примеров sql-запросов, позволяющих очистить или оптимизировать базу данных вашего сайта на WordPress.
В первую очередь перед любыми действиями с базой данных необходимо сделать бэкап (резервную копию). Для создания резервной копии базы данных сайтов, расположенных на нашем хостинге — достаточно зайти в вашу хостинг-панель в раздел «Базы данных» и воспользоваться кнопкой «Загрузить/Скачать».
Так вы сможете скопировать себе на компьютер sql-файл, в котором содержатся все данные из базы данных сайта. При необходимости вы всегда можете восстановить базу WordPress сайта из этого файла.
Итак переходим к конкретике. Заметьте, во всех командах текст MYPREFIX_ нужно изменить на актуальный префикс ваших таблиц в базе данных, например на wp_ (этот префикс используется часто по умолчанию).
Как изменить пароль администратора:
UPDATE `MYPREFIX_users` SET `user_pass` = MD5( 'новий_пароль' ) WHERE `MYPREFIX_users`.`user_login` = "логин_админа";
Вместо слова «новий_пароль» нужно указать новый пароль, а вместо «логин_админа» — логин пользователя, пароль которого будет изменен.
Активировать шаблон:
UPDATE MYPREFIX_options SET option_value = 'twentynineteen' WHERE option_name = 'template' or option_name = 'stylesheet';
Измените twentynineteen на название шаблона, который надо сделать активным.
Выключить все плагины:
UPDATE MYPREFIX_options SET option_value = '' WHERE option_name = 'active_plugins';
Как удалить непонятные символы из базы данных:
UPDATE MYPREFIX_comments SET comment_content = REPLACE(comment_content, '“', '“');
UPDATE MYPREFIX_comments SET comment_content = REPLACE(comment_content, 'â€', '”');
UPDATE MYPREFIX_comments SET comment_content = REPLACE(comment_content, '’', '’');
UPDATE MYPREFIX_comments SET comment_content = REPLACE(comment_content, '‘', '‘');
UPDATE MYPREFIX_comments SET comment_content = REPLACE(comment_content, '—', '–');
UPDATE MYPREFIX_comments SET comment_content = REPLACE(comment_content, '–', '—');
UPDATE MYPREFIX_comments SET comment_content = REPLACE(comment_content, '•', '-');
UPDATE MYPREFIX_comments SET comment_content = REPLACE(comment_content, '…', '…');
UPDATE MYPREFIX_posts SET post_content = REPLACE(post_content, '“', '“');
UPDATE MYPREFIX_posts SET post_content = REPLACE(post_content, 'â€', '”');
UPDATE MYPREFIX_posts SET post_content = REPLACE(post_content, '’', '’');
UPDATE MYPREFIX_posts SET post_content = REPLACE(post_content, '‘', '‘');
UPDATE MYPREFIX_posts SET post_content = REPLACE(post_content, '—', '–');
UPDATE MYPREFIX_posts SET post_content = REPLACE(post_content, '–', '—');
UPDATE MYPREFIX_posts SET post_content = REPLACE(post_content, '•', '-');
UPDATE MYPREFIX_posts SET post_content = REPLACE(post_content, '…', '…');
Данные команды изменят указаны «непонятные» символы в тексте публикаций и комментариях на их «понятный» аналог.
Удалить все СПАМ-комментарии сразу:
DELETE FROM MYPREFIX_comments WHERE comment_approved = 'spam';
Изменить ссылки, например, с HTTP на HTTPS:
UPDATE MYPREFIX_posts SET post_content = replace(post_content, 'http://yoursite.com', 'https://yoursite.com');
Данная команда изменит ссылки http://yoursite.com на https://yoursite.com в тексте публикаций.
Удалить публикации, старше Х дней:
DELETE FROM `MYPREFIX_posts`
WHERE `post_type` = 'post'
AND DATEDIFF(NOW(), `post_date`) > 10
Измените цифру 10 в конце на нужное количество дней.
Удалить определенные метаданные:
DELETE FROM MYPREFIX_postmeta WHERE meta_key = 'YourMetaKey';
Закрыть Trackback-и во всех публикациях сразу:
UPDATE MYPREFIX_posts SET ping_status = 'closed';
Удалить ревизии публикаций (автосохранение) и их метаданные:
DELETE a,b,c FROM MYPREFIX_posts a WHERE a.post_type = 'revision' LEFT JOIN MYPREFIX_term_relationships b ON (a.ID = b.object_id) LEFT JOIN MYPREFIX_postmeta c ON (a.ID = c.post_id);
Удалить метки или теги, которые не используются ни в одной публикации:
DELETE FROM MYPREFIX_terms WHERE term_id IN (SELECT term_id FROM MYPREFIX_term_taxonomy WHERE count = 0 );
DELETE FROM MYPREFIX_term_taxonomy WHERE term_id not IN (SELECT term_id FROM MYPREFIX_terms);
DELETE FROM MYPREFIX_term_relationships WHERE term_taxonomy_id not IN (SELECT term_taxonomy_id FROM MYPREFIX_term_taxonomy);
Еще интересное:
Акционная цена на регистрацию домена .ART
До конца месяца используйте промокод ART240 и получите новую цену 264грн на регистрацию домена в зоне .art Для заказа перейдите по этой ссылке , укажите в форме поиска имя желаемого домена, проверьте доступность и перейдите к оформлению. В процессе оформления укажите промокод ART240 на предпоследнем шаге заказа (в корзине) для получения скидки! Примите во внимание:
ПодробнееСкидка на домены .CITY
Новое акционное предложение уже доступно для вас – скидка 70% на регистрацию домена .CITY Только до конца июня покупайте #домен #city по цене 300грн , используйте промокод city300 в процессе заказа, скидка применится на последнем шаге заказа! Прекрасный выбор для любых доменов, связанных с городами, городскими властями или организациями, которые представляют свой город в том или ином амплуа. Домен можно купить тут https://wphost.me/ru/domains/ Мы оставляем […]
Подробнее