2013-07-10 99 views
1

我試圖在自定義帖子類型的類別存檔頁面上獲取該類別的ID。到目前爲止,我使用下面的代碼,但它似乎沒有工作。此代碼位於我的taxonomy-{taxonomy}.php文件中。獲取自定義帖子類型的存檔類別ID

$cat_name = single_cat_title('', false); 
$cat_id = get_cat_ID($cat_name); 

// $cat_name = 'Category Name', which works fine but, 
// $cat_id = 0, which is obviously not the id of the category 

我是否需要做一些特殊的檢索自定義帖子類別的ID的ID?

作爲一個方面說明,我需要這個,所以我可以通過標識加入get_categories()功能

$args = array(
    'child_of' => $cat_id, 
    'taxonomy' => 'taxonomy' 
); 

$categories = get_categories($args); 

回答

3

有幾種方法來獲取類ID

$category = get_category(get_query_var('cat')); 
$cat_id = $category->cat_ID; 

OR

$category = get_the_category(); 
$cat_id = $category[0]->cat_ID; // or foreach through 

OR

if(is_category()) { $cat_ID = get_query_var('cat'); } 

或只是

var_dump($wp_query->get_queried_object()) 

將給予模板當前對象像一個類別檔案查詢,這是類別對象

,甚至沒有這些工作,然後這裏是自定義查詢

global $wpdb; 
$category=$wpdb->get_results("SELECT * FROM `wp_terms` WHERE `name` ='$cat_name'"); 
$category[0]->term_id; 
+0

我認爲最後一個做到了。其他三個都未能返回類別ID。 – Phil

相關問題