問題描述
我一直在試圖弄清楚如何獲取當前頁面的特定分類術語,以便隨後可以在頁面上填充具有相同術語的其他帖子類型的查詢。
基本上:
-
第 1 頁有分類術語 – 教育政策
-
page.php 有四個部分:
-
標準循環輸出頁面,但後來有三個後續查詢
-
循環為具有分類術語 – 教育政策的事件
-
循環了具有分類術語 – 教育政策的報告
-
為具有分類術語教育政策的人們循環
-
我做了頁面特定的模板,我可以把這個術語硬編碼到額外的循環中,但是我需要弄清楚如何動態地執行 (原來應該是四到五頁現在是四十或五十) 。
我發現了一些類似的問題,但是沒有一個可以通過實現找到我的方式。
Get current page’s taxonomy 在實際被問到的方面有點令人困惑。
Get the term id belonging to custom taxonomy on a custom single-post-type.php template page
我希望這是有道理的,非常感謝。
最佳解決方案
嗯,如果你正確地為”page” 對象類型註冊了一個分類法,然後將這個分類法的術語分配給一個頁面… 我相信你可以通過以下方式訪問分類法和術語段落:
get_query_var( 'taxonomy' )
get_query_var( 'term' )
如果您使用 print_r($wp_query),則會在生成顯示當前頁面時看到所有參數。使用上面的代碼,您正在從 $wp_query 訪問這些參數。
然後用完整的信息獲取術語對象,可以使用 get_term_by 函數,就像這樣
$term = get_term_by( 'slug', get_query_var('term'), get_query_var('taxonomy') );
echo $term->name;
這將打印該術語的”nice” 名稱。
我相信如果您使用 get_query_var('term')或 $term->slug(獲取術語對象後),您可以在所有其他查詢中使用該插件。
希望有幫助。我從來沒有為頁面使用分類。讓我知道你怎麼樣
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。