Mình thường quản lý các website WordPress thông qua giao diện dòng lệnh WP CLI để đỡ mất thời gian điều hướng trên giao diện web, vừa tiết kiệm thời gian, vừa dễ debug trong trường hợp gặp lỗi.
Mục Lục
I. Cài đặt WP-CLI
WP-CLI thường đã được cài đặt sẵn khi bạn tạo WordPress thông qua các công cụ Centminmod, Cyberpanel, Cloudpanel,… Có thể kiểm tra bằng cách di chuyển đến thư mục cài đặt WordPress và gõ lệnh
wp info --allow-rootCode language: Nginx (nginx)Nếu không thấy kết quả trả về thì nghĩa là máy chủ chưa có WP-CLI. Trong trường này, cài đặt WP-CLI vào máy chủ bằng lệnh sau
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
php wp-cli.phar --info
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wpCode language: Nginx (nginx)Nếu bạn cài đặt WordPress thông qua Docker, cần bổ sung thêm phần khai báo wpcli vào trong file docker-compose.yml tương tự như bên dưới.
wpcli:
depends_on:
- db
- wordpress
image: wordpress:cli
entrypoint: wp
command: "--info"
env_file: .env
volumes:
- ./wordpress/html:/var/www/htmlCode language: YAML (yaml)Bạn có thể tham khảo ví dụ trong bài viết hướng dẫn cài đặt WordPress bằng Caddy bên dưới
Dưới đây là tổng hợp lại các câu lệnh WP CLI thường dùng để lâu lâu lỡ quên còn tìm lại được để tham khảo
II. Quản lý Plugins
Hiển thị danh sách tất cả plugin đang có
wp plugin listCode language: PHP (php)Hiển thị các plugin đang kích hoạt
wp plugin list --status=activeCode language: PHP (php)Hiển thị các plugin có sẵn bản cập nhật mới
wp plugin list | grep "available" | awk '{print $1}' # Hiển thị theo dánh sách từng hàng
wp plugin list | grep "available" | awk '{print $1}' ORS=' ' # Hiển thị tất cả chung 1 dòngCode language: Nginx (nginx)Cài đặt, kích hoạt, cập nhật, tắt và xóa plugin mới, ví dụ Advanced Custom Fields
wp plugin install advanced-custom-fields ## Cài đặt
wp plugin activate advanced-custom-fields ## Kích hoạt
wp plugin update advanced-custom-fields ## Cập nhật
wp plugin deactivate advanced-custom-fields ## Tắt
wp plugin delete advanced-custom-fields ## Xóa
Code language: Nginx (nginx)Cập nhật tất cả plugin
wp plugin update --allCode language: Nginx (nginx)III. Quản lý theme
Hiển thị danh sách theme
wp theme listCode language: PHP (php)Cập nhật theme, ví dụ Kadence
wp theme update kadenceCode language: Nginx (nginx)IV. Quản lý database
Sao lưu (Backup) database
wp db exportCode language: JavaScript (javascript)Phục hồi (Restore) database
wp db import < database.sqlCode language: JavaScript (javascript)Truy cập vào CLI của database để gõ lệnh
wp db cliCode language: Nginx (nginx)V. Thay đổi URL website
Lệnh này được dùng khi cần tạo staging cho website chính, đổi từ tên miền A qua tên miền B, hoặc ngược lại.
wp search-replace 'https://thuanbui.dev' 'https://thuanbui.me' --skip-columns=guidCode language: Nginx (nginx)VI. Sử dụng WP-CLI thông qua Docker
Trong trường hợp sử dụng WP-CLI thông qua docker, các câu lệnh cần được sửa lại thành
docker-compose run --rm wpcli commandCode language: Dockerfile (dockerfile)Ví dụ lệnh
wp plugin listCode language: PHP (php)cần được thay bằng
docker-compose run --rm wpcli wp plugin list --allow-rootCode language: Dockerfile (dockerfile)Lệnh này cần được thực thi tại thư mục chứa file docker-compose.yml thiết lập WordPress.
Còn rất nhiều các lệnh khác của WP-CLI, có thể tham khảo thêm bằng lệnh sau
wp --helpCode language: Bash (bash)





