WP-CLI 是 WordPress 的命令列介面。您可以更新外掛程式、設定多網站安裝等等,而無需使用 Web 瀏覽器。
透過以下方式可以進行持續維護:
目前的穩定版本是版本 2.11.0。如需公告,請在 Twitter 上關注 @wpcli 或註冊電子郵件更新。查看路線圖,了解即將發布的版本的計劃概述。
快速連結:使用|安裝|支持|延伸|貢獻 |製作人員
WP-CLI 為您可能在 WordPress 管理員中執行的許多操作提供了命令列介面。例如, wp plugin install --activate
(doc) 可讓您安裝並啟用 WordPress 外掛程式:
$ wp plugin install user-switching --activate
Installing User Switching (1.0.9)
Downloading installation package from https://downloads.wordpress.org/plugin/user-switching.1.0.9.zip...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Activating ' user-switching ' ...
Plugin ' user-switching ' activated.
Success: Installed 1 of 1 plugins.
WP-CLI 還包含許多在 WordPress 管理員中無法執行的操作的命令。例如, wp transient delete --all
(doc)可讓您刪除一個或所有瞬態:
$ wp transient delete --all
Success: 34 transients deleted from the database.
有關使用 WP-CLI 的更完整介紹,請閱讀快速入門指南。或者,與 shell 朋友聯繫以了解有用的命令列實用程式。
已經對基礎知識感到滿意了嗎?跳到完整的命令列表,以了解有關管理主題和外掛程式、匯入和匯出資料、執行資料庫搜尋替換操作等的詳細資訊。
下載 Phar 檔案是我們推薦大多數使用者的安裝方法。如果您需要,請另參閱我們有關替代安裝方法(Composer、Homebrew、Docker)的文件。
在安裝 WP-CLI 之前,請確保您的環境符合最低要求:
驗證要求後,使用wget
或curl
下載 wp-cli.phar 檔案:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
接下來,檢查 Phar 文件以驗證其是否正常工作:
php wp-cli.phar --info
若要透過鍵入wp
從命令列使用 WP-CLI,請使檔案可執行並將其移至 PATH 中的某個位置。例如:
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
如果 WP-CLI 安裝成功,當您執行wp --info
時,您應該會看到類似以下內容:
$ wp --info
OS: Linux 5.10.60.1-microsoft-standard-WSL2 # 1 SMP Wed Aug 25 23:20:18 UTC 2021 x86_64
Shell: /usr/bin/zsh
PHP binary: /usr/bin/php8.1
PHP version: 8.1.0
php.ini used: /etc/php/8.1/cli/php.ini
MySQL binary: /usr/bin/mysql
MySQL version: mysql Ver 8.0.27-0ubuntu0.20.04.1 for Linux on x86_64 (( Ubuntu ))
SQL modes:
WP-CLI root dir: /home/wp-cli/
WP-CLI vendor dir: /home/wp-cli/vendor
WP_CLI phar path:
WP-CLI packages dir: /home/wp-cli/.wp-cli/packages/
WP-CLI global config:
WP-CLI project config: /home/wp-cli/wp-cli.yml
WP-CLI version: 2.11.0
您可以使用wp cli update
(doc) 或重複安裝步驟來更新 WP-CLI。
如果 WP-CLI 由 root 或其他系統使用者擁有,您需要執行sudo wp cli update
。
想要過著邊緣生活嗎?執行wp cli update --nightly
以使用 WP-CLI 的最新每晚版本。每晚建置或多或少足夠穩定,足以讓您在開發環境中使用,並且始終包含最新和最好的 WP-CLI 功能。
WP-CLI 也附帶了適用於 Bash 和 ZSH 的製表符補全腳本。只需下載 wp-completion.bash 並從~/.bash_profile
獲取它:
source /FULL/PATH/TO/wp-completion.bash
不要忘記之後執行source ~/.bash_profile
。
如果您的 shell 使用 zsh,您可能需要在採購之前載入並啟動bashcompinit
。將以下內容放入您的.zshrc
中:
autoload bashcompinit
bashcompinit
source /FULL/PATH/TO/wp-completion.bash
WP-CLI 的維護者和貢獻者解決一般支援問題的時間有限。目前版本的 WP-CLI 是唯一官方支援的版本。
尋求支援時,請先在以下地方搜尋您的問題:
如果您在上述任一地點沒有找到答案,您可以:
#cli
頻道,與當時有空的任何人聊天。此選項最適合快速提問。GitHub 問題旨在追蹤現有命令的增強功能和錯誤,而不是一般支援。在提交錯誤報告之前,請查看我們的最佳實踐,以幫助確保您的問題得到及時解決。
請不要在 Twitter 上詢問支援問題。 Twitter 不是一個可接受的支援場所,因為:1) 很難在 280 個字元以下進行對話,2) Twitter 不是一個可以讓有相同問題的人在之前的對話中搜尋答案的地方。
請記住,自由!開源許可證授予您使用和修改的自由,但不承諾佔用其他人的時間。請保持尊重,並相應地設定您的期望。
指令是 WP-CLI 函數的原子單元。 wp plugin install
(doc)是一個指令。 wp plugin activate
(doc)是另一個。
WP-CLI 支援將任何可呼叫類別、函數或閉包註冊為命令。它從回調的 PHPdoc 中讀取使用詳細資訊。 WP_CLI::add_command()
(doc) 用於內部和第三方命令註冊。
/**
* Delete an option from the database.
*
* Returns an error if the option didn't exist.
*
* ## OPTIONS
*
* <key>
* : Key for the option.
*
* ## EXAMPLES
*
* $ wp option delete my_option
* Success: Deleted 'my_option' option.
*/
$ delete_option_cmd = function ( $ args ) {
list ( $ key ) = $ args ;
if ( ! delete_option ( $ key ) ) {
WP_CLI :: error ( " Could not delete ' $ key ' option. Does it exist? " );
} else {
WP_CLI :: success ( " Deleted ' $ key ' option. " );
}
};
WP_CLI :: add_command ( ' option delete ' , $ delete_option_cmd );
WP-CLI 附帶了數十個指令。建立自訂 WP-CLI 命令比看起來更容易。閱讀命令手冊以了解更多資訊。瀏覽內部 API 文件以發現可在自訂 WP-CLI 命令中使用的各種實用功能。
我們感謝您主動為 WP-CLI 做出貢獻。正是因為您和您周圍的社區,WP-CLI 成為一個如此偉大的項目。
貢獻不僅限於程式碼。我們鼓勵您以最適合您能力的方式做出貢獻,例如編寫教學課程、在本地聚會上進行演示、幫助其他使用者解決支援問題或修改我們的文件。
仔細閱讀手冊中的貢獻指南,以了解如何參與的全面介紹。遵循這些準則有助於傳達您尊重專案其他貢獻者的時間。反過來,他們會在跨越時區和世界各地與您合作時盡最大努力回報您的尊重。
WP-CLI 有一位專案維護者:schlessera。
有時,我們會向在一段時間內證明自己有能力並投入推動專案前進的貢獻者授予寫入權限。
請閱讀手冊中的治理文檔,以了解有關該項目的更多操作細節。
除了composer.json中定義的庫之外,我們還使用了以下項目的程式碼或想法:
wp shell
wp media regenerate
的縮圖wp search-replace
的搜尋替換資料庫wp export
的 WordPress-CLI-Exporterwp import
的導入器wp scaffold plugin-tests