ГлавнаяОптимизация сайта

Оптимизация баз данных в WordPress – как это сделать правильно.

WordPress – это самая популярная система управлением сайтами на сегодняшний день. Причин для этого много: он бесплатный, он простой, в него можно встраивать сторонние модули в виде тем оформлений и плагинов.

база данных

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

Но есть у WordPress и свой каркас. То, на что он опирается. Это база данных. Все статьи, все комментарии, всех администраторов и так далее, WordPress хранит в базе данных. Но есть одна проблема. Со временем, в базе данных накапливается много информации, и это может привести к увеличению занимаемого места и к уменьшению скорости работы сайта. А это, в свою очередь, может сказаться на позициях сайта в поисковиках.

Оптимизация вручную

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

Удаление старых редакций постов.

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

Поле с количеством редакций

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

define( ‘WP_POST_REVISIONS’, 3 );

Вставка кода с ограничением количества редакций

Теперь WordPress будет сохранять только последние 3 редакции.

Или можно вообще отключить создание редакций. Для этого, вставьте вот эту строчку.

define( ‘WP_POST_REVISIONS’, false );

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

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

Как только статья была опубликована, нет необходимости оставлять старые редакции, поэтому вы можете подумать над возможностью полного удаления сохранений из уже опубликованных статей. Существует ряд плагинов WordPress, которые позволяют вам это делать (вы также можете удалять ревизии с помощью MySQL; однако вы должны знать, что могут возникнуть проблемы, если вы используете неправильную команду).

Например, можно использовать плагин Optimize Database after Deleting Revisions который позволяет значительно уменьшить базу данных WordPress.

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

Плагин также имеет планировщик. Его можно использовать для автоматической оптимизации вашего сайта один раз в час, два раза в день, один раз в день или один раз в неделю.

Окно плагина Optimize Database after Deleting Revisions

Выключение авто сохранения.

У WordPress есть автоматическое авто сохранение постов. По умолчанию, интервал между авто сохранениями – 60 секунд. Но этот интервал можно увеличить. Просто добавить в файле wp-config.php следующую строку.

define( ‘AUTOSAVE_INTERVAL’, 240 );

Вставка кода с ограничением интервала авто сохранения

Вы можете выставить любое значение для авто сохранения. Интервал измеряется в секундах.

Удаление спамных комментариев.

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

Количество комментариев в базе данных

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

Akismet — это хорошее решение, так как оно позволяет вам отказаться от явного спама. Так что комментарий будет удален из вашей базы данных сразу (хотя будьте осторожны с тем фактом, что законные комментарии также могут быть удалены автоматически).

Окно с настройками плагина Akismet

Также спам можно удалить с помощью следующей SQL комманды

DELETE FROM wp_comments WHERE comment_approved = ‘spam’

Это проще всего сделать через phpMyAdmin

Зайдите на свой хостинг, перейдите в раздел с управлением базами данных.

Управление базами данных на хостинге

Теперь откройте phpMyAdmin и откройте нужную базу данных. После чего, перейдите на вкладку SQL.

Окно phpMyAdmin

Введите вышеуказанную строку и кликние по кнопке «Вперёд» (или кнопку GO в англоязычной версии phpMyAdmin.

Ввод команды в окне SQL в phpMyAdmin

Очистка корзины.

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

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

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

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

define( ‘EMPTY_TRASH_DAYS’, 5 ); // 5 дней

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

define (‘EMPTY_TRASH_DAYS’, 0); // Ноль дней

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

Удаление данных удаленных плагинов и тем.

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

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

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

Из-за этого, с течением времени, базы данных WordPress могут накапливать много дополнительной информации. Нередко в базе данных WordPress содержатся десятки таблиц для плагинов, которые были удалены несколько месяцев назад или даже лет назад.

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

Зная структуру баз данных в WordPress, лишние таблицы можно удалить с помощью phpMyAdmin. Для этого, нужно выделить ненужные таблицы и удалить их.

Удаление ненужных баз данных в phpMyAdmin

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

Установите его, зайдите в главные настройки сайта, выберите пункт WPDBSpringClean, сделайте поиск и удалите все неиспользуемые столбцы.

Переход к настройкам плагина WPDBSpringClean

 

Удаление ненужных таблис с помощью плагина WPDBSpringClean

Оптимизация базы данных с помощью плагинов.

В этой статье я давал советы о том, как оптимизировать вашу базу данных с помощью phpMyAdmin и wp-config.php. Но если вас беспокоит мысль об использовании phpMyAdmin, то для оптимизации, вы можете использовать плагины WordPress. Есть много хороших доступных вариантов.

WP Clean Up — отличный способ быстро удалить ненужные данные. Он позволяет удалять редакции, черновики, комментарии и многое другое — все это, буквально в несколько кликов.

Окно плагина WP Clean Up

WP-Optimize это ещё один мощный плагин для оптимизации баз данных WordPress. Его можно использовать для удаления редакций, черновиков, спам-комментариев, неутвержденных комментариев, комментариев в корзине и много другого.

Окно плагина WP-Optimize

Заключение

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

Вот что я делаю на своих сайтах WordPress, чтобы оптимизировать свои базы данных:

Я уменьшил количество ревизий до двух, добавив строку («WP_POST_REVISIONS», 2); в файл wp-config.php

Применяю строгие меры против спама, чтобы значительно уменьшить объем спама, добавленного в мою базу данных.

Проверяю любые элементы, которые я удаляю, а затем удаляю их навсегда (вместо того, чтобы хранить элементы в корзине)

Я также периодически проверяю свою базу данных через phpMyAdmin. С его помощью я удаляю ненужные таблицы базы данных. Время от времени я использую плагин для оптимизации, такой как WP Clean Up. Это позволяет мне удалять переходные процессы и любые другие нежелательные данные, которые накапливались с течением времени.

Для некоторых веб-сайтов WordPress я сократил количество дней, в течение которых элементы хранятся в корзине, с 30 до 5. Однако я обычно не делаю этого шага, поскольку у меня есть привычка  постоянно очищать корзину.

Чтобы уменьшить количество обращений к моей базе данных, я устанавливаю кеш-плагин WordPress. Это не уменьшает размер моей базы данных, но уменьшает нагрузку на мой сервер MySQL и обеспечивает быструю загрузку моих страниц.

Таким образом, все мои сайты работают быстрее и не создают лишнюю нагрузку на мой хостинг.

А вы оптимизируете свою базу данных? Если да, какие шаги вы предпринимаете? Расскажите об этом в комментариях.

УжасноПлохоНормальноХорошоОтлично (2 оценок, среднее: 5,00 из 5)
Оставьте комментарий:
Я не спамлю...