wpdebug.ru wordpress WP Debug

Как использовать WP-CLI для решения проблем WordPress

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

Что такое WP-CLI и почему он полезен для разработчиков

WP-CLI (WordPress Command Line Interface) — это набор команд для управления WordPress из консоли. С его помощью можно устанавливать и обновлять плагины, темы, управлять базой данных, выполнять бэкапы, искать и исправлять ошибки, работать с кэшированием и многое другое.

Преимущества использования WP-CLI:

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

Для начала работы нужна установка WP-CLI. На сайте официального проекта есть подробные инструкции. После установки можно проверить работоспособность командой wp --info.

Диагностика проблем WordPress с помощью WP-CLI

Проверка состояния сайта и обновлений

Первым шагом при выявлении проблем стоит проверить статус сайта и наличие обновлений:

wp core check-update
wp plugin status
wp theme status

Эти команды покажут, есть ли устаревшие компоненты, которые могут вызывать конфликты или баги.

Диагностика проблем с базой данных

Для проверки целостности базы данных и исправления ошибок используйте:

wp db check
wp db repair

Команда wp db check сканирует таблицы на наличие ошибок, а wp db repair пытается их исправить. Это полезно при проблемах с загрузкой сайта или ошибках SQL-запросов.

Отладка и очистка кэша

Многие проблемы связаны с кэшированием. WP-CLI может управлять кэшами некоторых плагинов или системных слоёв:

  • Для плагина Clearfy Pro (https://wpshop.ru/clearfy-pro?utm_source=wpdebug.ru&utm_medium=article&utm_campaign=kak-ispolzovat-wp-cli-dlya-resheniya-problem-wordpress) можно сбросить кэш командой wp clearfy cache clear (при наличии поддержки WP-CLI).
  • Для стандартного объектного кэша можно использовать wp cache flush.

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

Практические примеры решения проблем с WP-CLI

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

Чтобы быстро удалить все неактивные плагины и темы, можно выполнить:

wp plugin delete $(wp plugin list --status=inactive --field=name)
wp theme delete $(wp theme list --status=inactive --field=name)

Это помогает поддерживать чистоту и уменьшать вероятность конфликтов.

Восстановление прав доступа и файлов

Проблемы с правами доступа часто вызывают ошибки загрузки файлов и работы сайта. Команда для установки рекомендуемых прав:

wp debug_set_permissions() {
  find . -type d -exec chmod 755 {} \;;
  find . -type f -exec chmod 644 {} \;;
  chown -R www-data:www-data .
}
# Вызов функции в терминале
wp debug_set_permissions

Замените www-data:www-data на пользователя веб-сервера вашего хостинга.

Поиск и удаление спам-комментариев

Накопление спама замедляет работу базы данных. Для удаления всех спам-комментариев:

wp comment delete $(wp comment list --status=spam --field=ID) --force

Это освобождает место и уменьшает нагрузку на сайт.

Расширение возможностей WP-CLI с помощью плагинов

Некоторые плагины добавляют собственные команды WP-CLI. Например, плагин Expert Review добавляет команды для управления отзывами напрямую из консоли.

Чтобы посмотреть список всех доступных команд, используйте:

wp help

Для поиска команд по плагину:

wp help | grep expert

Таким образом, можно значительно ускорить управление сайтом и автоматизировать задачи.

Как создать собственные WP-CLI команды для решения специфичных задач

Если стандартных команд недостаточно, можно написать свои. Для этого создайте PHP-файл с описанием команды и зарегистрируйте её в WP-CLI.

Пример простой команды для очистки всех черновиков:

<?php

if ( defined('WP_CLI') && WP_CLI ) {
    WP_CLI::add_command('wpdebug delete-drafts', function() {
        $drafts = get_posts(['post_status' => 'draft', 'numberposts' => -1]);
        foreach ($drafts as $draft) {
            wp_delete_post($draft->ID, true);
        }
        WP_CLI::success('Все черновики удалены.');
    });
}

Подключите этот файл через wp-cli.yml или require в wp-config.php, и команда будет доступна:

wp wpdebug delete-drafts

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

×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше