Làm thế nào để cài đặt và sử dụng WP-CLI để quản lý blog WordPress

  • Home / Web development / Làm thế nào…
Auto Draft

Làm thế nào để cài đặt và sử dụng WP-CLI để quản lý blog WordPress

WP-CLI là gì?

WP-CLI là công cụ giúp bạn có thể quản trị WordPress qua giao diện dòng lệnh. Bạn có thể thực thi một số hàm, như là cài đặt plugins, cũng như lệnh không được hỗ trợ trong WordPress back-end. Ưu điểm lớn nhất của WP-CLI là thời gian bạn tiết kiệm khi sử dụng, cấu hình và vận hành WordPress website. Nếu bạn có nhiều site, không cần phải đăng nhập vào từng cái để làm những tác vụ cơ bạn, commands WP-CLI có thể tự động hóa.

Bạn cần chuẩn bị gì?

Trước khi bắt đầu, bạn cần chuẩn bị:

  • Truy cập vào giao diện command line

Cài đặt WP-CLI

Trên TINET.VN, WP-CLI đã được cài đặt sẵn. Vì vậy bạn chỉ cần kết nối tới SSH để sử dụng nó.

Nếu bạn muốn cài WP-CLI lên VPS hoặc các máy Linux, làm theo hướng dẫn sau:

1. Tải WP-CLI tool từ Github với lệnh sau

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

2. Xác nhận bạn đã tải thành công:

php wp-cli.phar --info

3. Bây giờ bạn cần phân quyền thực thi file wp-cli.phar.Hãy gõ:

chmod +x wp-cli.phar

4. Để hoàn tất cài đặt, di chuyển WP-CLI tới vị trí cuối cùng:

sudo mv wp-cli.phar /usr/local/bin/wp

Bây giờ WP-CLI đã được cài, bạn có thể bắt đầu làm việc với dữ liệu WordPress qua dòng lệnh.

Hiểu về WP-CLI Commands

WP-CLI là một công cụ dễ dùng nếu bạn đã quen với môi trường dòng lệnh. Bạn có thể quản trị blog qua dòng lệnh, nhanh hơn nhiều so với việc vào trang quản trị và phải click vào nhiều tùy chọn. Bạn có cơ hội tạo scripts command dùng cho các processes được sắp xếp hợp lý.

WP-CLI có sẵn một vài lệnh được tích hợp. Đây là danh sách các lệnh có sẵn của WP-CLI có thể được mở rộng qua plugins hỗ trợ WP-CLI, các plugins có commands có thể xem tại đây. Hãy xem qua một vài lệnh cơ bản WP-CLI:

Lệnh xem phiên bản WP-CLI:

wp --info

Một output ví dụ:

PHP binary:        /opt/alt/php70/usr/bin/php
 PHP version:        7.0.16
 php.ini used:        /opt/alt/php70/etc/php.ini
 WP-CLI root dir:        phar://wp-cli.phar
 WP-CLI packages dir:
 WP-CLI global config:
 WP-CLI project config:
 WP-CLI version:        1.1.0

Lệnh dùng để truy cập danh sách các lệnh được hỗ trợ bởi WP-CLI và hướng dẫn:

wp help

Kết quả ví dụ:

DESCRIPTION

Manage WordPress through the command-line.

SYNOPSIS

wp <command>

SUBCOMMANDS

cache               Manage the object cache.
 cap                 Manage user capabilities.
 cli                 Manage WP-CLI itself.
 comment             Manage comments.
 core                Download, install, update and manage a WordPress install.
 cron                Manage WP-Cron events and schedules.
 db                  Perform basic database operations using credentials stored in wp-config.php
 eval                Execute arbitrary PHP code.
 eval-file           Load and execute a PHP file.
 .....

Để thoát giao diện WP-CLI, nhấn nút Q trên bàn phím.

Bạn có thể xem hướng dẫn cho từng lệnh riêng biệt. Ví dụ, nếu bạn muốn biết về lệnh comment, gõ lệnh:

wp help comment

Kết quả:

NAME

wp comment

DESCRIPTION

Manage comments.

SYNOPSIS

wp comment <command>

SUBCOMMANDS

approve        Approve a comment.
 count          Count comments, on whole blog or on a given post.
 create         Create a new comment.
 delete         Delete a comment.
 exists         Verify whether a comment exists.
 generate       Generate some number of new dummy comments.
 .....

Như bạn thấy output trên, mỗi lệnh WP-CLI đều có danh sách các lệnh phụ. Như là, biết số lượng comments có thể sử dụng bằng lệnh phụ sau:

wp comment count

Và vẫn chưa hết, bạn có thể xem hướng dẫn cho lệnh phụ như sau:

wp help comment count

Kết quả:

AME

wp comment count

DESCRIPTION

Count comments, on whole blog or on a given post.

SYNOPSIS

wp comment count [<post-id>]

OPTIONS

[<post-id>]
 The ID of the post to count comments in.
 .....

WP-CLI Commands Cheat Sheet

Nếu đây là lần đầu bạn sử dụng WP-CLI, cheat sheet này hữu dụng cho bạn. Nó có đầy đủ tất cả các lện chính thức của WP-CLI, đi kèm ví dụ và biến global WP-CLI.

WP-CLI Commands Cheat Sheet

Sử dụng WP-CLI để cài đặt WordPress

Bạn có thể cài đặt WordPresss chỉ qua WP-CLI commands. Tuy nhiên, bạn cần phải tạo database cho blog của bạn trước khi tiến hành. Tại TINET.VN, Bạn có thể tạo MySQL database tại mục Control Panel -> MySQL Databases.

Nếu bạn sử dụng WP-CLI trên VPS hoặc máy cá nhân, hãy làm các bước sau để tạo MySQL database:

1. Đăng nhập MySQL:

mysql -u yourusername -p

2. Tạo database cho việc cài đặt WordPress:

create database wordpress;

3. Cài đặt username và password cho database:

grant all on wordpress.* to 'username' identified by 'yourpassword';

4. Tải file cài đặt WordPress:

Khi MySQL database sẵn sàng, bạn có thể tiến hành cài WordPress. Đầu tiên, bạn tải bản cài đặt mới nhất của WordPress bằng lệnh:

wp core download

Kết quả:

Downloading WordPress 4.7.3 (en_US)...
 md5 hash verified: 044729d30b720809f19e14ece49e119b
 Success: WordPress downloaded.

QUAN TRỌNG: hãy đảm bảo bạn nằm trong cùng một thư mục trước khi thực thi lệnh này. Thông thường, tất cả các website files nên đặt trong cùng thư mục public_html. Bạn có thể xem thư mục nào bạn đang ở đâu bằng lệnh pwd.

Khi hoàn tất download, hãy truy cập website của bạn. Bạn có thể thấy form cài đặt WordPress. Tất nhiên, bạn có thể tiếp tục và điền các thông tin cần thiết qua trình duyệt. Nhưng vì đã cài WP-CLI, dùng lệnh sẽ dễ hơn.

WordPress Installation Form

Bạn sẽ cần dùng lệnh wp core để thêm thông tin đăng nhập của MySQL database vào WordPress:

wp core config --dbname=wordpress --dbuser=user --dbpass=password --dbhost=localhost --dbprefix=wp_
  • dbname – MySQL database name.
  • dbuser – MySQL database username.
  • dbpass – MySQL user password.
  • dbhost – MySQL server hostname.
  • dbprefix – MySQL database table prefix. Bạn có thể để là wp_.

Như bạn thấy, thông tin đăng nhập MySQL có thể được chuyển biến qua wp core config. Nếu bạn điền thông tin MySQL đúng, WP-CLI sẽ tạo ra file wp-config.php:

Kết quả:

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

Bây giờ, nếu bạn truy cập WordPress site lần nữa, bạn sẽ thấy cần điền thêm một vài thông tin cần thiết nữa.

WordPress Installation Form Enter Site Details

Chúng ta cũng dùng lệnh wp core để thêm các thông tin này:

wp core install --url="yourdomain.com"  --title="Site Title" --admin_user="admin_username" --admin_password="admin_password" --admin_email="[email protected]"

Kết quả:

Success: WordPress installed successfully.

WordPress Installed with WP-CLI

Sử dụng WP-CLI để cài đặt và quản lý WordPress Themes

Trong mục này, bạn sẽ học cách sử dụng WP-CLI để cài đặt WordPress themes. Hãy bắt đầu bằng cách liệt kê các theme có sẵn:

wp theme list

Kết quả:

+-----------------+----------+--------+---------+
 | name            | status   | update | version |
 +-----------------+----------+--------+---------+
 | twentyfifteen   | inactive | none   | 1.7     |
 | twentyseventeen | active   | none   | 1.1     |
 | twentysixteen   | inactive | none   | 1.3     |
 +-----------------+----------+--------+---------+

Như thông báo, bạn có thể thấy theme đang hoạt động là twentyseventeen. Ví dụ bạn muốn kích hoạt twentyfifteen:

wp theme activate  twentyfifteen

Kết quả:

Success: Switched to 'Twenty Fifteen' theme.

Bạn có thể sử dụng WP-CLI để tìm theme mới trong thư mục theme của WordPress. Hãy tìm một theme với bootstrap:

wp theme search bootstrap

Kết quả:

Success: Showing 10 of 292 themes.
 +---------------------+---------------------+--------+
 | name                | slug                | rating |
 +---------------------+---------------------+--------+
 | edsBootstrap        | edsbootstrap        | 100    |
 | Bootstrap Basic4    | bootstrap-basic4    | 0      |
 | ultrabootstrap      | ultrabootstrap      | 100    |
 | Bootstrap Four      | bootstrap-four      | 80     |
 | Simple Bootstrap    | simple-bootstrap    | 60     |
 | Bootstrap Canvas WP | bootstrap-canvas-wp | 92     |
 | Flat Bootstrap      | flat-bootstrap      | 100    |
 | Bootstrap Basic     | bootstrap-basic     | 100    |
 | DevDmBootstrap3     | devdmbootstrap3     | 100    |
 | Arouse              | arouse              | 0      |
 +---------------------+---------------------+--------+

Không có gì nhiều để xem vì bạn chỉ thấy tên, tuy nhiên ultrabootstrap được đánh giá tới 100. Để cài đặt và kích hoạt theme, hãy dùng:

wp theme install ultrabootstrap --activate

Kết quả:

Installing ultrabootstrap (1.1.5)
 Downloading install package from https://downloads.wordpress.org/theme/ultrabootstrap.1.1.5.zip...
 Unpacking the package...
 Installing the theme...
 Theme installed successfully.
 Activating 'ultrabootstrap'...
 Success: Switched to 'ultrabootstrap' theme.
 Success: Installed 1 of 1 themes.

WordPress sẽ như sau:

WordPress New Theme Activated with WP-CLI

Bạn cũng có thể chỉ định file theme được nén dạng zip trên tài khoản hosting của bạn. Lệnh này cũng hoạt động với URLs.

Sử dụng WP-CLI để cài đặt và quản lý WordPress Plugins

Như themes, plugins cũng có thể cài và quản lý bằng cách dùng WP-CLI. Để liệt kê danh sách các plugin được cài, hãy dùng:

wp plugins list

Kết quả:

+---------+----------+--------+---------+
 | name    | status   | update | version |
 +---------+----------+--------+---------+
 | akismet | inactive | none   | 3.3     |
 | hello   | inactive | none   | 1.6     |
 +---------+----------+--------+---------+

Như bạn thấy, chúng ta không có nhiều plugins. Hãy cài một vài plugins bằng lệnh.

Đầu tiên, tìm plugin contact form 7 :

wp plugin search "contact form 7"

Kết quả:

Success: Showing 10 of 2514 plugins.
 +--------------------------------------+---------------------------+--------+
 | name                                 | slug                      | rating |
 +--------------------------------------+---------------------------+--------+
 | Contact Form 7                       | contact-form-7            | 92     |
 | Contact Bank - Contact Forms Builder | contact-bank              | 86     |
 | Contact Form                         | contact-forms-builder     | 90     |
 | Contact Form                         | contact-form-ready        | 96     |
 | Contact Form                         | contact-form-add          | 76     |
 | Contact Form                         | powr-contact-form         | 100    |
 | Contact Form                         | better-contact-form       | 100    |
 | Contact Form                         | contact-form-master       | 96     |
 | Contact Form                         | contact-form-maker        | 88     |
 | Contact Form by Supsystic            | contact-form-by-supsystic | 92     |
 +--------------------------------------+---------------------------+--------+

Contact Form 7 là đứng đầu. Chúng ta sẽ cài và kích hoạt nó vì nó là một form liên hệ nhẹ:

wp plugin install contact-form-7 --activate

Kết quả:

Installing Contact Form 7 (4.7)
 Downloading install package from https://downloads.wordpress.org/plugin/contact-form-7.4.7.zip...
 Unpacking the package...
 Installing the plugin...
 Plugin installed successfully.
 Activating 'contact-form-7'...
 Plugin 'contact-form-7' activated.
 Success: Installed 1 of 1 plugins.

Cũng như themes, plugins có thể được cài qua zip archive và URL.

Để xóa đổi install thành delete:

wp plugin delete contact-form-7

Kết quả:

Deleted 'contact-form-7' plugin.
 Success: Deleted 1 of 1 plugins.

Sử dụng WP-CLI để cập nhật WordPress

Cập nhật WordPress với WP-CLI là một quá trình 2 bước, vì bạn cần cập nhật file WordPress và database để hoàn thành quá trình này.

Bắt đầu bằng cách cập nhật file gốc của WordPress:

wp core update

Kết quả:

Updating to version 4.7.3 (en_US)...
 Downloading update from https://downloads.wordpress.org/release/wordpress-4.7.3-new-bundled.zip...
 Unpacking the update...
 Cleaning up files...
 Success: WordPress updated successfully.

Chạy command sau để kiểm tra và nếu cần thiết cập nhật database tới phiên bản được yêu cầu:

wp core update-db

Kết quả:

Success: WordPress database already at latest db version 38590.

Để cập nhật themes và plugins của WordPress với WPI-CLI, đổi core sang theme hoặc plugin. Biến –all để cập nhất tất cả themes/plugins được cài đặt, nhưng bạn có thể cập nhật từng theme/plugin riêng:

Cho themes:

wp theme update --all

Cho plugins:

wp plugin update --all

Sử dụng WP-CLI để quản lý nội dung

Posts

WP-CLI cung cấp nhiều cách để quản lý nội dung qua dòng lệnh. Vâng, có thể không thuận tiện để viết bài và quản lý qua dòng lệnh. Nhưng vì lý do hiểu thêm, bạn có thể làm việc này qua WP-CLI.

Để xem tất cả các bài post, có thể dùng lệnh:

wp post list

Kết quả:

+----+--------------+-------------+---------------------+-------------+
 | ID | post_title   | post_name   | post_date           | post_status |
 +----+--------------+-------------+---------------------+-------------+
 | 1  | Hello world! | hello-world | 2017-03-15 11:11:00 | publish     |
 +----+--------------+-------------+---------------------+-------------+

Như bạn thấy, bạn có chỉ có một bài post Hello world! . ID của bài post này là một. Chúng tôi có thể xóa nó với:

wp post delete 1

Kết quả:

Success: Trashed post 1.

Để khởi tạo bài post mới, gõ:

wp post create --post_status=publish --post_title="This Post Was Created With WP-CLI" --edit

Command này sẽ mở text editor vim. Điền nội dung và thoát vim bằng cách nhấn nút ESC, gõ :wq và nhấn ENTER.

WP-CLI Create Post

Bạn cũng có thể tạo một bài viết mới và nhập nội dung trực tiếp từ file .txt:

wp post create ./post.txt --post_title='Sample Post' --post_status=publish

Ngoài việc viết bài, với WP-CLI, bạn cũng có thể tạo ra chúng dễ dàng. Tính năng này hữu dụng nếu bạn muốn kiểm tra xem WordPress site sẽ hoạt động như thế nào với nhiều bài viết. Để tạo 50 bài, hãy thử:

wp post generate --count=50

Media

Với WP-CLI bạn có thể tự động tạo ảnh với process import. Ví dụ bạn muốn import tất cả các hình từ thư mục images_for_site. Bạn có thể dùng lệnh sau:

wp media import images_for_site/*

Sử dụng WP-CLI để Export/Import WordPress

Với WP-CLI bạn có thể dễ dàng export và import nội dung từ một website WordPress này sang một web khác. Lệnh sau sẽ export các bài posts, terms, authors, comments, và attachments tới một file XML:

wp export

Kết quả:

Writing to file /home/u694443746/public_html/hostingertutorials.wordpress.2017-03-16.000.xml
 Success: All done with export.

Ví dụ bạn muốn import từ một file XML tới trang WordPress khác. Đầu tiên, bạn cần cài đặt plugin wp-importer:

wp plugin install wordpress-importer --activate

Khi cài đặt hoàn thành, bạn có thể tiến hành import. Chúng tôi sẽ tạo một tác giả bằng biến –authors:

wp import hostingertutorials.wordpress.2017-03-16.000.xml --authors=create

Kết quả:

<p>All done. <a href="http://hostinger-tutorials.com/wp-admin/">Have fun!</a></p><p>Remember to update the passwords and roles of imported users.</p>
 Success: Finished importing from 'hostingertutorials.wordpress.2017-03-16.000.xml' file.

Sử dụng WP-CLI để quản lý Database

Bạn có thể chạy SQL queries thông thường với lệnh wp db query. Ví dụ, để thấy tất cả các user WordPress được đăng ký, hãy dùng:

wp db query "SELECT user_login,ID FROM wp_users;"

Kết quả:

+------------+----+
 | user_login | ID |
 +------------+----+
 | user       |  1 |
 +------------+----+

Bạn có thể chạy một số thao tác hữu dụng khác như export. Nó sẽ tạo một file SQL dump của database WordPress:

wp db export

Kết quả:

Success: Exported to 'u694443746_dapyz-a0d3f2a.sql'.

Để import một file SQL vào trong WordPress database, hãy dùng lệnh:

wp db import file.sql

Kết quả:

Success: Imported from 'file.sql'.

Sử dụng WP-CLI để tìm kiếm và thay thế

Nếu bạn đã từng chuyển WordPress từ máy cá nhân hoặc staging server sang hosting thông thường, bạn sẽ thấy tìm kiếm và thay thế hữu dụng như thế nào. Dĩ nhiên, nó có thể làm qua SQL query hoặc plugin, nhưng với WP-CLI, việc này có thể thực hiện với chỉ một command. Ví dụ bạn muốn thay đổi tên miền từ hostigner-tutorials.com sang hostinger-tutorials.net và chúng ta cần cập nhật tất cả URLs trong WordPress database.

Chúng tôi khuyên hãy chạy thử ‘dry-run’ trước khi thực sự dùng lệnh tìm kiếm và thay thế. Nó sẽ cho bạn biết có bao nhiêu trường hợp cần thay đổi:

wp search-replace --dry-run 'hostinger-tutorials.com' 'hostinger-tutorials.net'

Kết quả:

Success: 1008 replacements to be made.

Bây giờ, để tiến hành thực hiện tìm kiếm và thay thế với WP-CLI, xóa trường –dry-run :

wp search-replace 'hostinger-tutorials.com' 'hostinger-tutorials.net'

Kết quả:

Success: Made 1008 replacements.

Kết luận

Ngoài những lệnh cơ bản này, WP-CLI có thể được mở rộng bằng cách lệnh của bên thứ ba. Làm việc với WordPress sẽ tiện hơn nếu không cần click chuột qua mỗi section trong trang quản trị của admin. Nếu bạn đã từng làm việc với nhiều site WordPress, việc này sẽ giúp tăng năng xuất. Bài hướng dẫn này sẽ cho bạn nền tảng để xử lý hầu hết các tác vụ và hàm của WP-CLI.

Write a Comment