2011-03-30 124 views
0

嗨當​​我通過這段代碼在主題選項嘗試get_terms();get_terms返回錯誤

$catalogs_terms = get_terms('catalogs'); 
    $mycatalogs = array(-1 => 'Select a catalog'); 
    if ($catalogs_terms) { 
     foreach ($catalogs_terms as $catalog_term) { 
     $mycatalogs[$catalog_term->term_id] = $catalog_term->name; 
     } 
    } 

回空的,但是這個代碼是其中的網頁等 每一個工作正常,當我嘗試print_r($catalogs_terms)輸出我得到的錯誤

Array ([errors] => Array ([invalid_taxonomy] => Array ([0] => Invalid Taxonomy)) [error_data] => Array ()) 

我不明白我在哪裏錯了? 我的註冊分類功能

add_action('init', 'my_taxonomies', 0); 

function my_taxonomies() { 
    // Add new taxonomy, make it hierarchical (like categories) 
    $labels = array(
     'name' => _x('Catalogs', 'taxonomy general name'), 
     'singular_name' => _x('Catalog', 'taxonomy singular name'), 
     'search_items' => __('Search Catalogs', 'mytextdomain'), 
     'all_items' => __('All Catalogs', 'mytextdomain'), 
     'parent_item' => __('Parent Catalog', 'mytextdomain'), 
     'parent_item_colon' => __('Parent Catalog:', 'mytextdomain'), 
     'edit_item' => __('Edit Catalog', 'mytextdomain'), 
     'update_item' => __('Update Catalog', 'mytextdomain'), 
     'add_new_item' => __('Add New Catalog', 'mytextdomain'), 
     'new_item_name' => __('New Catalog Name', 'mytextdomain'), 
     'menu_name' => __('Catalogs', 'mytextdomain'), 
    ); 

    // register catalogs hierarchical (like categories) 
    register_taxonomy('catalogs', 
     array('news'), 
     array('hierarchical' => true, 
      'labels' => $labels, 
      'show_ui' => true, 
      'public' => true, 
      'query_var' => true, 
      'rewrite' => array('slug' => 'catalogs') 
     ) 
    ); 
} 

回答

1

!我曾在t31os

幫助,您可以FINDE解決了這個更here

3

這應該讓你在正確的軌道上......

$qt = 'SELECT * FROM '.$wpdb->terms.' AS t INNER JOIN '.$wpdb->term_taxonomy.' AS tt ON t.term_id = tt.term_id WHERE tt.taxonomy = "<-- your taxonomy -->" AND tt.count > 0 ORDER BY t.term_id DESC LIMIT 0 , 30'; 

$terms = $wpdb->get_results($qt, ARRAY_A);