描述
_wp_preview_terms_filter
()是一個WordPress私有函數(shù),用于在預(yù)覽文章時過濾術(shù)語(terms)查詢,以便設(shè)置文章格式(post format)。這個函數(shù)主要用于處理文章預(yù)覽時的術(shù)語查詢,特別是文章格式的設(shè)置。由于它是私有的,通常不建議插件或主題開發(fā)者直接使用它。
參數(shù)
- $terms (array) (必需) – 當(dāng)前文章的術(shù)語數(shù)組。
- $post_id (int) (必需) – 文章ID。
- $taxonomy (string) (必需) – 稅收分類(taxonomy)名稱。
返回值
- (array) 過濾后的術(shù)語數(shù)組。
源代碼位置
- 文件:
wp-includes/revision.php
函數(shù)講解
function _wp_preview_terms_filter( $terms, $post_id, $taxonomy ) {
// 獲取當(dāng)前文章對象
if ( ! $post = get_post() )
return $terms;
// 檢查請求中是否有文章格式參數(shù),并且文章ID匹配,稅收分類為文章格式,且文章類型不是修訂版本
if ( empty( $_REQUEST['post_format'] ) || $post->ID != $post_id || 'post_format' != $taxonomy || 'revision' == $post->post_type )
return $terms;
// 處理標(biāo)準(zhǔn)格式
if ( 'standard' == $_REQUEST['post_format'] )
$terms = array();
// 處理其他格式
elseif ( $term = get_term_by( 'slug', 'post-format-' . sanitize_key( $_REQUEST['post_format'] ), 'post_format' ) )
$terms = array( $term ); // 只能有一個文章格式
return $terms;
}
注意事項
- 私有函數(shù):由于這是私有函數(shù),不建議在插件或主題中直接調(diào)用。如果你需要處理文章格式,建議使用公共的鉤子和過濾器。
- 文章格式:文章格式是 WordPress 中的一種特殊稅收分類,用于標(biāo)識文章的顯示樣式(如標(biāo)準(zhǔn)、鏈接、引用等)。
- 預(yù)覽功能:這個函數(shù)主要用于文章預(yù)覽時的術(shù)語查詢,確保預(yù)覽的文章格式正確顯示。
術(shù)語解釋
- 術(shù)語:在 WordPress 中,術(shù)語是指屬于某個稅收分類的具體條目,例如類別(categories)和標(biāo)簽(tags)。
- 稅收分類:稅收分類是用于組織文章的一組術(shù)語,常見的稅收分類包括類別(categories)和標(biāo)簽(tags)。
- 文章格式:文章格式是一種特殊的稅收分類,用于標(biāo)識文章的顯示樣式,如標(biāo)準(zhǔn)、鏈接、引用等。
- 預(yù)覽:預(yù)覽功能允許用戶在發(fā)布文章之前查看文章的最終效果。
示例
假設(shè)你在編輯一篇文章并選擇了“鏈接”格式,然后點擊預(yù)覽。_wp_preview_terms_filter
函數(shù)會檢查請求中的 post_format
參數(shù),并確保預(yù)覽的文章顯示為“鏈接”格式。
相關(guān)函數(shù)
get_post()
:獲取文章對象。get_term_by()
:通過不同的字段獲取術(shù)語對象。sanitize_key()
:對鍵名進行清理,確保安全。
未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » WordPress函數(shù)_wp_preview_terms_filter()用法