wpclean.ru wordpress WPClean.ru

Как оптимизировать базу данных WordPress: удаление пустых и неиспользуемых опций в wp_options

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

Почему важно очищать таблицу wp_options

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

Неочищенные и устаревшие опции вызывают:

  • Замедление загрузки страниц.
  • Увеличение потребления ресурсов сервера.
  • Ошибки и конфликты с плагинами при наличии устаревших значений.

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

Как определить пустые и неиспользуемые опции в wp_options

Прежде чем удалять что-то, важно точно знать, какие опции безопасно удалить. Вот основные критерии поиска:

  • Пустые значения: опции, у которых значение пустое ('') или равно NULL.
  • Опции с маленькими именами и странными ключами: часто временные или кеширующие записи.
  • Автоматически созданные плагинами или темами опции, которые больше не используются.
  • Опции с префиксами устаревших плагинов, которые вы уже удалили.

Определить такие опции можно с помощью SQL-запросов и анализа с помощью специализированных плагинов.

Пример SQL-запроса для поиска пустых опций

SELECT option_name FROM wp_options WHERE option_value = '' OR option_value IS NULL;

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

Удаление пустых и неиспользуемых опций через код

Для автоматизации процесса можно использовать PHP-функцию, которая удалит все пустые опции по условию. Ниже пример функции с префиксом wpclean_, который поможет безопасно очистить таблицу.

function wpclean_delete_empty_wp_options() {
    global $wpdb;
    
    // Получаем список опций с пустыми значениями
    $empty_options = $wpdb->get_col("SELECT option_name FROM {$wpdb->options} WHERE option_value = '' OR option_value IS NULL");

    foreach ($empty_options as $option_name) {
        // Удаляем каждую опцию
        delete_option($option_name);
    }

    return count($empty_options);
}

Вы можете вызвать эту функцию один раз в админке или через WP-CLI, чтобы очистить базу данных.

Удаление опций с определёнными префиксами

Если вы знаете, что определённые плагины удалены, но их настройки остались, можно удалить опции по префиксу:

function wpclean_delete_options_by_prefix($prefix) {
    global $wpdb;

    $like = $wpdb->esc_like($prefix) . '%';
    $options = $wpdb->get_col($wpdb->prepare(
        "SELECT option_name FROM {$wpdb->options} WHERE option_name LIKE %s",
        $like
    ));

    foreach ($options as $option_name) {
        delete_option($option_name);
    }

    return count($options);
}

Например, вызов wpclean_delete_options_by_prefix('oldplugin_'); удалит все опции, начинающиеся с oldplugin_.

Плагины для анализа и очистки wp_options

Помимо ручных методов, есть плагины, которые помогут идентифицировать и безопасно удалить неиспользуемые опции:

  • Advanced Database Cleaner — позволяет искать устаревшие и неиспользуемые опции, оптимизировать базу и удалять лишнее.
  • Clearfy Pro — среди прочих функций оптимизации, помогает выявлять неиспользуемые опции и удалять их безопасно. Подробнее на https://wpshop.ru/plugins/clearfy-pro/.
  • WP-Optimize — универсальный плагин для очистки базы данных, включая удаление лишних опций.

Рекомендации по безопасному удалению опций

Перед удалением всегда делайте резервную копию базы данных. Некорректное удаление может привести к сбоям в работе сайта. Рекомендуется:

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

Заключение

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

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

×
Оптимизируй свой сайт!

Скидка -15% на премиум плагин Clearfy Pro

Купить плагин сейчас ⋙