ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)
Среда, 18 декабря, 2024

Как управлять сайтом WordPress из терминала

Как управлять сайтом WordPress из терминала

WordPress, обслуживающий более 60,8% веб-сайтов, несомненно, является одной из самых популярных и мощных систем управления контентом (CMS). Будь то личные блоги или корпоративные сайты, WordPress очень интуитивно понятен и прост в использовании как при разработке, так и при проектировании и обслуживании.

Однако большинство пользователей WordPress знакомы только с его графическим рабочим процессом; очень немногие исследовали его конечную сторону.

Эта статья познакомит вас с WP-CLI, инструментом командной строки для управления сайтами WordPress.

Давайте погрузимся в мир WP-CLI:

 

Как установить WP-CLI

Установить WP-CLI относительно просто. Инструмент представляет собой PHP-архив, который вы можете скачать и запустить.

Начните с загрузки архива с помощью wget или cURL как:

wget https://raw.github.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

 

Для пользователей cURL используйте команду:

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

 

После загрузки сделайте файл исполняемым и переместите архив в PATH в вашей системе, например /usr/local/bin, как:

chmod +x wp-cli.phar sudo mv wp-cli.phar /usr/local/bin/wp

 

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

wp --info

 

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

OS:     Linux 4.4.0-19041-??? Mon Sep 01 13:43:00 PST 2021 x86_64 Shell:  /bin/bash PHP binary:     /usr/bin/php7.3 PHP version:    7.3.19-1~deb10u1 php.ini used:   /etc/php/7.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:       /home/root
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 2.4.0

 

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

WP-CLI — это терминал или командная строка, альтернативная панели инструментов wp-admin. Следовательно, существует команда WP-CLI для всех задач, которые вы можете выполнять с помощью веб-интерфейса администратора WordPress.

Давайте узнаем, как ими пользоваться, но перед этим:

 

Как включить завершение WP-CLI Bash

Инструмент WP-CLI позволяет вам включить функцию завершения Bash для просмотра и автозаполнения команд с помощью клавиши TAB. Давайте включим его, чтобы облегчить наши задачи.

Начнем с загрузки сценария Bash с помощью команды:

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

 

Чтобы загружать сценарий завершения Bash в каждый сеанс терминала, давайте отредактируем наш файл конфигурации профиля bash. Введите следующую запись в файл .bashrc.

source $HOME/wp-completion.bash

 

Затем перезагрузите профиль bash, чтобы загрузить все изменения:

source .bashrc

 

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

Чтобы проверить, работает ли он, введите команду wp + TAB. Это должно дать вам все доступные команды:

cache              core               eval-file          language
option             rewrite            shell              term cap
cron               export             maintenance-mode   package
role               sidebar            theme cli          db
help               media              plugin             scaffold
site               transient comment  embed              i18n
menu               post               search-replace     super-admin
user config        eval               import             network
post-type          server             taxonomy           widget

 

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

Прежде чем мы перейдем к админке WordPress, нам нужно сначала установить WordPress. Давайте обсудим, как установить его с помощью WP-CLI.

 

Сначала войдите в оболочку MySQL и создайте базу данных

sudo mysql -u root -p
Enter Password:

 

Далее нам нужно создать базу данных:

CREATE DATABASE wp;

 

Затем нам нужно создать пользователя и предоставить ему все права:

CREATE USER "wpadmin" IDENTIFIED BY "password";
GRANT ALL PRIVILEGES ON wp.* TO wpadmin;
FLUSH PRIVILEGES;

 

Следующим шагом будет загрузка установочного файла WordPress. Для этого мы собираемся использовать каталог /var/www/html.

Измените на /var/www/html

cd /var/www/html/

 

Чтобы убедиться, что у нас есть разрешение на чтение/запись для этого каталога, выберите пользователя www-data, созданного apache, как:

sudo chown -R www-data .
sudo chown www-data:www-data .

 

Затем загрузите WordPress с помощью WP-CLI. Вам нужно будет вызвать команду wp как www-data, поскольку пользователь должен разрешить запись в каталог /var/www/html. Избегайте использования root.

sudo -u www-data wp core download

 

Это загрузит WordPress и распакует его в текущий каталог. Игнорируйте ошибку, показанную ниже:

Downloading WordPress 5.6.1 (en_US)...
Warning: Failed to create directory '/var/www/.wp-cli/cache/': mkdir(): Permission denied.
md5 hash verified: e9377242a433acbb2df963966f98c31d Success: WordPress downloaded.

 

Убедитесь, что у вас установлен WordPress, перечислив содержимое каталога /var/www/html:

$:/var/www/html$ ls -l total 240
-rw-r--r-- 1 www-data www-data   405 Feb  5 22:22 index.php
-rw-r--r-- 1 www-data www-data 19915 Feb  5 22:22 license.txt
-rw-r--r-- 1 www-data www-data  7278 Feb  5 22:22 readme.html
-rw-r--r-- 1 www-data www-data  7101 Feb  5 22:22 wp-activate.php drwxr-xr-x 1 www-data www-data  4096 Feb  5 22:23 wp-admin
-rw-r--r-- 1 www-data www-data   351 Feb  5 22:23 wp-blog-header.php
-rw-r--r-- 1 www-data www-data  2328 Feb  5 22:23 wp-comments-post.php
-rw-r--r-- 1 www-data www-data  2913 Feb  5 22:23 wp-config-sample.php drwxr-xr-x 1 www-data www-data  4096 Feb  5 22:23 wp-content
-rw-r--r-- 1 www-data www-data  3939 Feb  5 22:23 wp-cron.php drwxr-xr-x 1 www-data www-data  4096 Feb  5 22:24 wp-includes

 

Затем нам нужно сгенерировать файл конфигурации WordPress и добавить соответствующую информацию. Используйте команду ниже и замените значения соответствующим образом.

$:/var/www/html$ sudo -u www-data wp core config --dbname="wp" --dbuser="wpadmin" --dbpass="password" --dbhost="localhost" Success: Generated ‘wp-config.php’ file.

 

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

sudo -u www-data wp core install --url="http://127.0.0.1" --admin_user="admin" --admin_password="password" --admin_email="admin@example.com" --title="WP-CLI Tutorial"

 

После этого у вас в системе установлен WordPress. Вы можете протестировать сайт, перейдя по адресу http: // localhost, который должен отображать WordPress по умолчанию.

 

Как управлять сайтом WordPress с помощью интерфейса командной строки

Теперь у вас есть весь сайт WordPress, которым вы управляете с помощью WP-CLI. Как насчет того, чтобы мы попытались выполнить базовые задачи, такие как установка плагина.

 

Установите плагин с WP-CLI

Пока мы все еще в каталоге установки сайта WordPress (/var/www/html), давайте найдем плагин для установки. Давайте использовать в качестве примера Elementor Page Builder:

wp plugin search elementor

 

Выполнение этой команды должно дать вам все возможные плагины в табличной форме.

Круто, правда? Теперь давайте посмотрим, как мы можем установить плагин, когда найдем подходящее имя.

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

sudo -u www-data wp plugin install elementor Installing Elementor Website Builder (3.1.1)
Warning: Failed to create directory '/var/www/.wp-cli/cache/': mkdir(): Permission denied.
Downloading installation package from https://downloads.wordpress.org/plugin/elementor.3.1.1.zip...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Success: Installed 1 of 1 plugins.

 

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

sudo -u www-data wp plugin activate elementor Plugin ‘elementor’ activated.
Success: Activated 1 of 1 plugins.

 

Удалите плагин с помощью WP-CLI

Если вы можете установить плагин с WP-CLI, вы можете удалить его.

sudo -u www-data wp plugin deactivate elementor Plugin ‘elementor’ deactivated.
Success: Deactivated 1 of 1 plugins.

 

После деактивации вы можете легко удалить его как:

sudo -u www-data wp plugin uninstall elementor Uninstalled and deleted ‘elementor’ plugin.
Success: Uninstalled 1 of 1 plugins.

 

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

Темы — обычная функция WordPress. Обсудим, как ими управлять из командной строки.

Для поиска темы используйте команду:

wp theme search astra Success: Showing 2 of 2 themes.
+--------+--------+--------+
| name   | slug   | rating |
+--------+--------+--------+
| Astra  | astra  | 100    |
| Astral | astral | 100    |
+--------+--------+--------+

 

Когда у вас есть тема, которую вы хотите установить, используйте команду, как показано ниже:

sudo -u www-data wp theme install astra Installing Astra (3.0.2)
Warning: Failed to create directory '/var/www/.wp-cli/cache/': mkdir(): Permission denied.
Downloading installation package from https://downloads.wordpress.org/theme/astra.3.0.2.zip...
Unpacking the package...
Installing the theme...
Theme installed successfully.
Success: Installed 1 of 1 themes.

 

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

sudo -u www-data wp theme activate astra Success: Switched to ‘Astra’ theme.

 

Чтобы установить его из zip-файла, используйте команду, показанную ниже:

sudo -u www-data wp theme install oceanwp.2.0.2.zip Unpacking the package...
Installing the theme...
Theme installed successfully.
Success: Installed 1 of 1 themes.

 

Удаление темы WordPress с помощью WP-CLI

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

sudo -u www-data wp theme activate oceanwp && sudo -u www-data wp theme uninstall astra Success: Switched to ‘OceanWP’ theme.
Deleted ‘astra’ theme.
Success: Deleted 1 of 1 themes.

 

Просмотр тем и плагинов

Чтобы перечислить все темы и плагины в экземпляре WordPress, используйте команды, показанные ниже:

wp theme list
wp plugin list

 

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

+-----------------+----------+--------+---------+
| name            | status   | update | version |
+-----------------+----------+--------+---------+
| oceanwp         | active   | none   | 2.0.2   |
| twentynineteen  | inactive | none   | 1.9     |
| twentytwenty    | inactive | none   | 1.6     |
| twentytwentyone | inactive | none   | 1.1     |
+-----------------+----------+--------+---------++---------+----------+--------+---------+
| name    | status   | update | version |
+---------+----------+--------+---------+
| akismet | inactive | none   | 4.1.8   |
| hello   | inactive | none   | 1.7.2   |
+---------+----------+--------+---------+

 

Обновление тем и плагинов с помощью WP-CLI

Вы также можете обновлять плагины и темы с помощью интерфейса командной строки. Например, чтобы обновить все темы, используйте команду;

sudo -u www-data wp theme update --all
Success: Theme already updated.

 

 

Обновление WordPress из CLI

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

Первый шаг — сначала обновить файлы сайта как:

sudo -u www-data wp core update

 

Далее нам нужно обновить базу данных как:

sudo -u www-data wp core update-db
Success: WordPress database already at latest db version 49752.

 

Создание поста в WordPress с помощью интерфейса командной строки

Чтобы создать пост с помощью WP-CLI, используйте команду ниже:

sudo -u www-data wp post create --post_type=page --post_title="WP-CLI Tutorial" --post_date="2021-02-04"
Success: Created post 5.

 

Удаление поста

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

sudo -u www-data wp post delete 5
Success: Trashed post 5.

 

Вывод

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

Exit mobile version