問題描述

我一直在試圖弄清楚如何獲取當前頁面的特定分類術語,以便隨後可以在頁面上填充具有相同術語的其他帖子型別的查詢。

基本上:

  • 第 1 頁有分類術語 – 教育政策

  • page.php 有四個部分:

    1. 標準迴圈輸出頁面,但後來有三個後續查詢

    2. 迴圈為具有分類術語 – 教育政策的事件

    3. 迴圈了具有分類術語 – 教育政策的報告

    4. 為具有分類術語教育政策的人們迴圈

我做了頁面特定的模板,我可以把這個術語硬編碼到額外的迴圈中,但是我需要弄清楚如何動態地執行 (原來應該是四到五頁現在是四十或五十) 。

我發現了一些類似的問題,但是沒有一個可以透過實現找到我的方式。

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 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。