Как установить и использовать WP-CLI на Ubuntu

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

В этом руководстве мы расскажем, как установить WP-CLI и WordPress с помощью WP-CLI и выполнить некоторые базовые задачи. Все шаги были протестированы на Ubuntu 24.04.

Требования

  • Сервер под управлением Ubuntu Linux.
  • Для вашего сервера установлен пароль root.

Начало работы

Перед началом работы необходимо обновить систему до последней версии. Это можно сделать, выполнив следующую команду:

apt update -y
apt upgrade -y

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

Установка LAMP-сервера

Сначала вам нужно установить Apache, MariaDB и PHP в вашу систему. Вы можете установить их, выполнив следующую команду:

apt-get install apache2 mariadb-server php php-cli php-common php-curl php-gd php-mbstring php-xml php-xmlrpc php-zip php-mysql -y

Как только все пакеты будут установлены, можно приступать к установке WP-CLI.

Установка WP-CLI

Инструмент WP-CLI доступен в файле .phar. Вы можете загрузить его с помощью следующей команды:

cd /tmp
wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

После загрузки переместите скачанный файл в каталог /usr/bin:

mv wp-cli.phar /usr/bin/wpcli

Затем добавьте разрешение на выполнение для файла wpcli с помощью следующей команды:

chmod +x /usr/bin/wpcli

Далее проверьте установку WP-CLI с помощью следующей команды:

wpcli --info

Если все в порядке, вы должны получить следующий результат:

Shell:	/bin/bash
PHP binary:	/usr/bin/php8.3
php.ini used:	/etc/php/8.3/cli/php.ini
WP-CLI root dir:	phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir:	phar://wp-cli.phar/vendor
WP_CLI phar path:	/root
WP-CLI packages dir:	
WP-CLI global config:	
WP-CLI project config:	
WP-CLI version:	2.11.0

Активировать завершение Bash

Завершение bash – это функция WP-CLI, которая позволяет перечислить все доступные команды, нажав Tab.

Для этого вам нужно загрузить bash-скрипт из Git-репозитория:

wget https://github.com/wp-cli/wp-cli/raw/master/utils/wp-completion.bash

Затем добавьте путь к bash-скрипту в файл .bashrc, чтобы wp-completion загружался автоматически.

nano .bashrc

Добавьте следующую строку:

source /root/wp-completion.bash

Сохраните и закройте файл, затем перезагрузите профиль bash с помощью следующей команды:

source ~/.bashrc

Теперь вы можете проверить его, набрав wpcli и дважды нажав Tab. Вы должны увидеть список доступных команд с wp.

Установка WordPress с помощью WP-CLI

В этом разделе мы узнаем, как загрузить и установить WordPress с помощью WP-CLI.

Создание базы данных для WordPress

Сначала войдите в MariaDB и создайте базу данных для WordPress:

mysql -u root -p

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

MariaDB [(none)]> CREATE DATABASE wp;
MariaDB [(none)]> CREATE USER 'wpuser' IDENTIFIED BY 'password';

Затем предоставьте все привилегии базе данных WordPress с помощью следующей команды:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON wp.* TO 'wpuser';

Затем снимите привилегии и выйдите из оболочки MariaDB с помощью следующей команды:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

После этого можно переходить к следующему шагу.

Загрузите и установите WordPress

Сначала измените директорию на Apache web root и дайте соответствующие разрешения с помощью следующей команды:

cd /var/www/html
chown -R www-data:www-data /var/www/html/

Затем загрузите исходный код WordPress, запустив WP-CLI от имени пользователя www-data:

sudo -u www-data wp core download

Вы должны увидеть следующий результат:

md5 hash verified: aea5bb5e4fd51034f67c85e6d8bc6bbf
Success: WordPress downloaded.

Далее создайте файл wp-config.php с помощью следующей команды:

sudo -u www-data wpcli core config --dbname='wp' --dbuser='wpuser' --dbpass='password' --dbhost='localhost' --dbprefix='wp_'

Вы должны увидеть следующий результат:

Success: Generated 'wp-config.php' file.

Не забудьте заменить wpuser и password на пользователя и пароль вашей базы данных WordPress.

Теперь запустите установку WordPress с помощью следующей команды:

sudo -u www-data wpcli core install --url='http://example.com' --title='My WordPress Blog' --admin_user='wpadmin' --admin_password='password' --admin_email='[email protected]'

Пожалуйста, замените имя домена, администратора и пароль в соответствии с вашими потребностями.

Теперь откройте веб-браузер и введите URL http://example.com/wp-admin. Вы будете перенаправлены на страницу входа в WordPress, как показано ниже:

Вход в WordPress

Введите имя пользователя и пароль администратора, затем нажмите на кнопку Войти кнопку. Вы должны увидеть приборную панель WordPress на следующей странице:

WordPress

После этого можно переходить к следующему шагу.

Установка тем и плагинов

Вы можете легко установить плагины и темы с помощью инструмента командной строки WP-CLI.

Сначала выведите список всех установленных плагинов с помощью следующей команды:

sudo -u www-data wpcli plugin list

Вывод:

+---------+----------+--------+---------+
| name    | status   | update | version |
+---------+----------+--------+---------+
| akismet | inactive | none   | 4.1.2   |
| hello   | inactive | none   | 1.7.2   |
+---------+----------+--------+---------+

Вы также можете перечислить все установленные темы с помощью следующей команды:

sudo -u www-data wpcli theme list

Вывод:

+-----------------+----------+--------+---------+
| name            | status   | update | version |
+-----------------+----------+--------+---------+
| twentynineteen  | active   | none   | 1.4     |
| twentyseventeen | inactive | none   | 2.2     |
| twentysixteen   | inactive | none   | 2.0     |
+-----------------+----------+--------+---------+

Теперь найдите и установите плагин “WP Super Cache” с помощью следующей команды:

sudo -u www-data wpcli plugin search "WP Super Cache"

Выход:

Success: Showing 10 of 508 plugins.
+------------------------------------------------------------------+--------------------------------------+--------+
| name                                                             | slug                                 | rating |
+------------------------------------------------------------------+--------------------------------------+--------+
| WP Super Cache                                                   | wp-super-cache                       | 86     |
| Autoptimize                                                      | autoptimize                          | 94     |
| WP Fastest Cache                                                 | wp-fastest-cache                     | 96     |
| WP-Optimize – Clean, Compress, Cache.                            | wp-optimize                          | 98     |
| WP Super Cache – Clear all cache                                 | wp-super-cache-clear-cache-menu      | 66     |
| WPS Hide Login                                                   | wps-hide-login                       | 98     |
| Cerber Security, Antispam & Malware Scan                         | wp-cerber                            | 98     |
| Minimal Coming Soon & Maintenance Mode – Coming Soon Builder     | minimal-coming-soon-maintenance-mode | 96     |
| Hummingbird – Speed up, Cache, Optimize Your CSS and JS          | hummingbird-performance              | 96     |
| CAOS | Host Google Analytics Locally                             | host-analyticsjs-local               | 96     |
+------------------------------------------------------------------+--------------------------------------+--------+

Теперь установите и активируйте плагин wp-super-cache с помощью следующей команды:

sudo -u www-data wpcli plugin install wp-super-cache
sudo -u www-data wpcli plugin activate wp-super-cache

Вы должны увидеть следующий результат:

Plugin 'wp-super-cache' activated.
Success: Activated 1 of 1 plugins.

Далее установите и активируйте тему islemag с помощью следующей команды:

sudo -u www-data wpcli theme install islemag
sudo -u www-data wpcli theme activate islemag

Обновление WordPress и плагинов

Если вы хотите обновить определенный плагин WordPress, выполните следующую команду:

sudo -u www-data wpcli plugin update wp-super-cache

Если вы хотите обновить свой WordPress, выполните следующие команды:

sudo -u www-data wpcli core update
sudo -u www-data wpcli core update-db

Основная команда WP-CLI

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

sudo -u www-data wpcli core version

Вы должны увидеть следующий результат:

5.2.2

Чтобы проверить, доступно ли какое-либо обновление для WordPress, выполните следующую команду:

sudo -u www-data wpcli core check-update

Чтобы очистить кэш WordPress, выполните следующую команду:

sudo -u www-data wpcli cache flush

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

sudo -u www-data wpcli plugin update --all

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

sudo -u www-data wpcli plugin deactivate --all

Вы также можете просмотреть список команд, доступных в WP-CLI, с помощью следующей команды:

sudo -u www-data wpcli --help

Вы должны увидеть следующий результат:

NAME

  wp

DESCRIPTION

  Manage WordPress through the command-line.

SYNOPSIS

  wp 

SUBCOMMANDS

  cache                 Adds, removes, fetches, and flushes the WP Object Cache object.
  cap                   Adds, removes, and lists capabilities of a user role.
  cli                   Review current WP-CLI info, check for updates, or see defined aliases.
  comment               Creates, updates, deletes, and moderates comments.
  config                Generates and reads the wp-config.php file.
  core                  Downloads, installs, updates, and manages a WordPress installation.
  cron                  Tests, runs, and deletes WP-Cron events; manages WP-Cron schedules.
  db                    Performs basic database operations using credentials stored in wp-config.php.
  embed                 Inspects oEmbed providers, clears embed cache, and more.
  eval                  Executes arbitrary PHP code.
  eval-file             Loads and executes a PHP file.
  export                Exports WordPress content to a WXR file.
  help                  Get help on WP-CLI, or on a specific command.
  i18n                  Provides internationalization tools for WordPress projects.
  import                Imports content from a given WXR file.
  language              Installs, activates, and manages language packs.
  maintenance-mode      Activates, deactivates or checks the status of the maintenance mode of a site.
  media                 Imports files as attachments, regenerates thumbnails, or lists registered image sizes.
  menu                  Lists, creates, assigns, and deletes the active theme's navigation menus.
  network               Perform network-wide operations.
  option                Retrieves and sets site options, including plugin and WordPress settings.
  package               Lists, installs, and removes WP-CLI packages.
  plugin                Manages plugins, including installs, activations, and updates.
  post                  Manages posts, content, and meta.

Заключение

Из этого руководства вы узнали, как установить WP-CLI на сервер Debian. Вы также узнали, как использовать WP-CLI для установки и управления WordPress, плагинами и темами. Для получения дополнительной информации о команде WP-CLI, посетите документацию WP-CLI по адресу WP-CLI.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *