WP-CLI

WP-CLI 管理指令整理

Written by

WP-CLI 是一個命令列工具,供開發人員管理 WordPress 安裝的常見任務,可以增加 / 刪除用戶、文章、類別、插入測試資料、在資料庫中搜尋和替換、重置密碼、解決網站效能問題等等 !

在管理多個網站時,WP-CLI 是一個好用的工具,不須登入 WordPress 管理後台,避免增加主機的負載,在 SSH 端指令操作。

什麼是 WP-CLI ?

WP-CLI 是一個命令列工具,提供開發人員管理 WordPress 安裝的常見任務,例如:它可以增加 / 刪除用戶、管理佈景主題、外掛更新、停用、刪除,導入、出文章、分類、圖片資料、在資料庫中搜尋和替換、重置密碼、幫助你快速的管理網站各項問題等等 !

我整理出常用的 WP-CLI 指令:

使用 WP-CLI 重新產生 WordPress 縮圖

這個指令在媒體庫分離到第三方雲端空間時,可以觸發 WP Offload Media Lite 外掛將所有的圖片上傳到 S3 空間。

使用 WP-CLI 重新產生所有縮圖

wp media regenerate --yes

使用 WP-CLI 重新產生特定縮圖,更新的圖片的 ID 重新產生特定縮圖。

wp media regenerate 12 34 567

WP-CLI 縮圖指令只能對 png / jpg 副檔名圖片有效。

使用 WP-CLI 匯入 WordPress 內容

WordPress 本身的 Tools 工具匯入文章和圖片時,常常會遇到 PHP 超時匯入失敗,可以改用 WP-CLI 來執行。

wp import my-file.xml --authors=create

如果用戶尚未存在的情況下將文章的作者留空,則可以將 –authors 選項的值設為 skip

wp import my-file.xml --authors=skip

使用 WP-CLI 管理佈景主題和外掛

查看佈景主題

wp theme list

刪除佈景主題

wp theme delete twentytwenty

更新佈景主題

wp theme update twentytwenty

查看外掛

wp plugin list

更新外掛

wp plugin update elementor

停用外掛

wp plugin deactivate elementor

刪除外掛

wp plugin delete elementor

驗證網站伺服器上安裝的所有外掛程式

wp plugin verify-checksums --all

使用 WP-CLI 管理 WordPress 核心

查看 WordPress 目前的版本

wp core version

升級 WordPress 核心版本

 wp core update

重新安裝 WordPress 核心

wp core download --skip-content --force

驗證 WordPress 核心檔案

wp core verify-checksums

這是一個非常棒的指令,當懷疑有惡意軟體時,這是我首先使用的命令之一。

WP-CLI 資料庫指令

大型 WordPress 網站遷移遇到最多的問題,資料庫太大無法導入新的主機資料庫,一般資料庫大於 200MB 後,常發生導入 phpMyAdmin 失敗。

資料庫導入

wp db import wordpress_dbase.sql

資料庫最佳化

wp db optimize

WP-CLI 的功能非常強大,還有非常多的指令,請到 wordpress 開發者網頁查詢。

清除 Scheduled Actions log 文件

Scheduled Actions (已排程動作) 會用來處理和訂單相關的排程工作,當執行完排程工作之後,也會將完成工作的紀錄儲存在資料庫中,但長時間累積下來,儲存記錄的表單就會變成非常的臃腫,進而直接影響資料庫的效能。

Scheduled Actions Log

清除 Scheduled Actions 的方式:

wp db query "DROP TABLE IF EXISTS wp_actionscheduler_actions;"

檢查相關資料庫的表單大小

wp db size --tables --human-readable

另外,你也可以用 phpMyAdmin 進行刪除,就不在這裡介紹了。

新的 i18n make-php 指令

此命令與 WordPress 6.5 中包含的高效能翻譯功能一致,該功能在透過使用 PHP 檔案而不是 MO 檔案來加快翻譯速度。

使用這個新命令,開發人員現在可以為目前目錄中的所有 PO 檔案或指定目錄中的特定 PO 檔案建立 PHP 檔案。

對目錄下所有 PO 檔產生 PHP 檔:

# Create PHP files for all PO files in the current directory.
$ wp i18n make-php .
Success: Created 3 files.

對特定目錄、特定 PO 檔產生 PHP 檔:

# Create a POT file for the WordPress plugin/theme in the current directory
$ wp i18n make-pot . languages/my-plugin.pot

批量刪除大量文章數據

如果,在 WordPress 控制台內刪除大量的文章,這是一項繁重的工作,使用 WP-CLI 命令一次刪除所有這些文章資料。

一次刪除所有發布的文章資料。

wp post delete $(wp post list --post_type='post' --format=ids) --force

post_type 如果你想從自訂文章類型中刪除數據,可以在選項中指定文章類型

# Delete post type 'news'
wp post delete $(wp post list --post_type='news' --format=ids) --force

非官方 WP CLI 文件庫

WP-CLI 文件的更好替代品,透過深入的指南、實踐教學和實踐幫助您掌握 WordPress 的命令列介面用例場景。

Photo by Annie Spratt on Unsplash

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Your Mastodon Instance