[WordPress] 外掛分享: Rewrite Rule Testing

首頁外掛目錄 › Rewrite Rule Testing
300+
安裝啟用
★★★★★
5/5 分(2 則評價)
4319 天前
最後更新
問題解決
WordPress 3.9+ v0.1.1 上架:2014-05-19

內容簡介

這個外掛提供一個簡單的介面,可以測試您的自訂重新導向規則。

這個外掛的目的是為了能夠測試您自己的重新導向規則,所以您可能最感興趣的是如何進行測試,對吧?這個外掛提供了一個過濾器 rewrite_testing_tests,讓您添加自己的測試。此過濾器傳遞一個名稱 => 測試的關聯陣列。測試陣列是一個 URI => 預期匹配的關聯陣列。在外層陣列中,「名稱」是任意的,僅供您參考。在內層陣列中,「URI」是您要測試的路徑,而「預期匹配」則是 WordPress 應該找到的重新導向匹配項。

夠聊了,這裡有個示例:

function my_rewrite_tests( $tests ) {
return array(
'Events' => array(
'/event/super-bowl/' => 'index.php?event=$matches[1]',
'/event/super-bowl/page/2/' => 'index.php?event=$matches[1]&paged=$matches[2]'
)
);
}
add_filter( 'rewrite_testing_tests', 'my_rewrite_tests' );

您可以查看 test_cases() 方法,其中包含一套完整的「日期和名稱」永久連結結構的測試。當然,您不必把這些留在這裡(事實上,上面的示例會清除它們),除非您想確保您自定義的重新導向未影響 WordPress 核心的重新導向。如果您不使用「日期和名稱」永久連結,您需要調整測試以符合您的永久連結結構。

待完成事項

添加「除錯條」擴展,讀取瞬時;瞬時會在重新導向規則被刷新時進行更新。此「除錯條」擴展將顯示通過/失敗狀態並直接連結至設定頁面。
為其他永久連結結構添加測試?
添加以 phpunit 的形式運行此外掛的方法。

外掛標籤

開發者團隊

⬇ 下載最新版 (v0.1.1) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Rewrite Rule Testing」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

This plugin provides a simple interface for testing your custom rewrite rules.
The purpose of this plugin is to be able to test your own rewrite rules, so
you’re probably most interested in knowing how to do that, right? The plugin
provides a filter, rewrite_testing_tests to add your own tests. That filter
passes an associative array of name => tests. The tests array is an associative
array of URI => expected match. In the outer array, the “name” is arbitrary and
for your own reference. In the inner array, the “URI” is the path you want to
test, and the “expected match” is what WordPress should find as a rewrite
match.
Enough chit-chat, here’s an example:
function my_rewrite_tests( $tests ) {
return array(
'Events' => array(
'/event/super-bowl/' => 'index.php?event=$matches[1]',
'/event/super-bowl/page/2/' => 'index.php?event=$matches[1]&paged=$matches[2]'
)
);
}
add_filter( 'rewrite_testing_tests', 'my_rewrite_tests' );

You can see the test_cases() method for a full suite of tests for the “Day
and Name” permalink structure. It’s not necessary to leave these in (in fact,
the above demo would wipe them out), unless you want to make sure that your
custom rewrites aren’t affecting core rewrites. If you aren’t using “Day and
Name” permalinks, you’ll need to adjust the tests to fit your permalink
structure.
Todo

Add a debug bar extension which reads a transient; the transient would be
updated whenever rewrite rules are flushed. The debug bar extension would
show pass/fail status and link directly to the settings page.
Add tests for other permalink structures?
Add a way to run this as part of phpunit

延伸相關外掛

文章
Filter
Apply Filters
Mastodon