這周已經相當瘋狂,還只是星期三。
正如你們中的許多人所知,我在星期一晚上啓動了一項 Kickstarter 眾籌活動:更加 RESTful 的 WP-CLI 。令人難以置信的是,它在不到 12 小時內就完成了 100% 的籌款。點擊鏈接查看有關我將在 2016 年初開展的更多詳細信息。
但是,我有一個更加重要的説明,涉及支持的 WordPress 版本:
- WP-CLI v0.22.0(下一個版本) 將將最低支持的 WordPress 版本從 3.5 提高到 3.7(背景信息) 。
- WP-CLI 版本在 0.20.3 之前將與 WordPress 4.4 不兼容 (背景信息) 。
這個重要説明可能與您有關,請相應採取行動。
WP-CLI v0.21.0 解決了 109 個問題和拉取請求。以下是新內容。
使用WP_CLI::get_runner()->load_wordpress();
加載 WordPress
現在,您可以通過將@when before_wp_load
添加到您的命令文檔來在 WordPress 加載之前運行 WP-CLI 命令一段時間了。現在,您可以使用相同的命令加載 WordPress 。
查看wp eval
如何使用WP_CLI::get_runner()->load_wordpress()
:
class Eval_Command extends WP_CLI_Command { /** * 执行任意的 PHP 代码。 * * <php-code> * : 要执行的代码,作为字符串。 * * [--skip-wordpress] * : 在不加载 WordPress 的情况下执行代码。 * * @when before_wp_load * * ## 示例 * * wp eval 'echo WP_CONTENT_DIR;' */ public function __invoke( $args, $assoc_args ) { if ( null === Utilsget_flag_value( $assoc_args, 'skip-wordpress' ) ) { WP_CLI::get_runner()->load_wordpress(); } eval( $args[0] ); } }
使用wp eval --skip-wordpress
來執行PHP
而不加載 WordPress 。或者,使用wp eval-file --skip-wordpress
,例如,執行一個快速而不需要 WordPress 安裝的髒髒髒髒髒髒。
類似地,當您使用wp core verify-checksums
與--version=
時,WP-CLI 將檢查以確保core
文件未被修改,而無需加載 WordPress 。
創建這個新功能幾乎就像更換行駛中的汽車引擎。
使用--debug
獲得更多詳細信息
當您提供--debug
標誌時,您將獲得更多關於 WP-CLI 執行您的命令的上下文信息。
之前:
$ wp option get home --debug http://wordpress-test.dev
之後:
$ wp option get home --debug Debug: 使用默认全局配置:/home/vagrant/.wp-cli/config.yml(0.026s)Debug: 未找到项目配置 (0.027s)Debug: 从配置中获取所需文件:/srv/www/wp-rest-cli/wp-rest-cli.php(0.059s)Debug: 定义了 ABSPATH:/srv/www/wordpress-test.dev/(0.06s)Debug: 开始加载 WordPress(0.063s)Debug: wp-config.php 路径:/srv/www/wordpress-test.dev/wp-config.php(0.065s)Debug: 设置 URL:wordpress-test.dev/(0.066s)Debug: 已加载 WordPress(0.515s)Debug: 正在运行命令:option get(0.516s)http://wordpress-test.dev
通過在關鍵檢查點包含WP_CLI::debug( $debug_message );
,可以使您的命令更加有幫助。
v0.21.0 的其他變化
增強功能:
- 使用
wp core update-db --network
來升級整個網絡中的數據庫;還通過提供from
和to
數據庫版本來改善此命令的詳細程度。 - 添加
wp comment recount
命令以重新計算文章的評論數。 - 包括
wp taxonomy list
、wp taxonomy get
、wp post-type list
和wp post-type get
以獲取關於已註冊的分類和文章類型的詳細信息。 - 使用
wp post update
或wp post delete
時,使用--defer-term-counting
在操作結束時重新計算術語計數,以提高性能。 - 在使用無效的 plugin slug 運行
wp scaffold plugin-tests
時返回更有用的錯誤消息。 - 在
wp theme list
中,通過設置status=parent
來表示父母主題。這更清晰地區分了真正不活動的主題與被用作父母主題的 「不活動」 主題。 - 嘗試在 multisite 安裝上使用
wp rewrite flush --hard
時顯示錯誤消息,因為 WordPress 不為多站點安裝生成.htaccess
文件。 - 允許
wp core download
使用--path
,即使檢測到 WP 。這允許自定義 WP-CLI 命令在現有 WP 安裝範圍內從子目錄下載 WP 。 - 為
wp export
添加--post_type__not_in
參數,現在可以生成一個不包括feedbacks
等內容的導出文件。 - 支持使用
wp export --post__in
的空格分隔的 ID 。這使得更容易傳遞wp post list --format=ids
返回的 ID 。 - 在使用
wp scaffold plugin
時包括一個.editorconfig
。 - 新生成的
install-wp-tests.sh
文件支持$WP_VERSION=trunk
或$WP_VERSION=nightly
,以便對 WordPress trunk 運行您的插件測試。 - 在
wp core multisite-convert
中,當wp-config.php
不可寫時為用户提供更有用的錯誤消息。 - 當無效的子命令具有有效的父命令時,為用户提供更有幫助的錯誤消息。
- 在警告並要求確認後,支持在由 APC 緩存支持的 WordPress 實例上使用 WP-CLI 。
- 如果 WP-CLI 是較大的 Composer 項目的一部分,則 sniffs 出自定義供應商路徑。
- 不再需要通用參數
wp post create
和wp comment create
,可以在不提供標題等信息的情況下使用這些命令。 - 接受沒有右側數據的關聯參數。
- 在查找具有
wp cli update
的 PHP 二進制文件時,耗盡所有可能的選項。以前,WP-CLI 會嘗試直接調用php
,但在 PHP 未公開為這樣的系統上會失敗。 - 根據 WordPress 版本,接受
wp_new_user_notification()
的棄用第二個參數。
您可以在 Github 上瀏覽已解決問題的完整列表。
此版本的貢獻者:aaemnnosttv 、 borekb 、 danielbachhuber 、 gmcinnes 、 JRGould 、 johnbillion 、 kraftbj 、 miya0001 、 ntwb 、 rodrigoprimo 、 rmccue szepeviktor 、 torounit 、 voldemortensen 、 ypid
發表回覆