2011-06-03 102 views
2

我創建了一些具有一些自定義分類法的自定義帖子類型(產品)。其中之一是'類別'。我希望在自動生成的產品下使用自定義分類「分類」的菜單,以便在菜單上點擊PRODUCTS -> <category>,它會將它們帶到具有該分類的特定產品的列表中(我已經有一個頁面顯示單個產品以及列出所有產品的頁面)。請注意,有些category分類法將會有孩子,我也想在菜單中顯示。從自定義分類標準生成wordpress菜單

我對wordpress有些新鮮,我知道如何創建菜單的唯一方法是通過wp-admin,但我不想進入併爲每個類別和子類別創建一個頁面/菜單。

我說的是甚麼可能?謝謝!

自定義文章類型是在這裏:

add_action('init', 'create_product_post_type'); 

function create_product_post_type() 
{ 
    $labels = array(
     'name' => _x('Products', 'post type general name'), 
     'singular_name' => _x('Product', 'post type singular name'), 
     'add_new' => _x('Add New', 'product'), 
     'add_new_item' => __('Add New Product'), 
     'edit_item' => __('Edit Product'), 
     'new_item' => __('New Product'), 
     'view_item' => __('View Product'), 
     'search_item' => __('Search Products'), 
     'not_found' => __('No products found'), 
     'not_found_in_trash' => __('No products found in Trash'), 
     'parent_item_colon' => '', 
     'menu_name' => 'Products'   
     ); 

    $args = array(
     'label' => __('Products'), 
     'labels' => $labels, 
     'public' => true, 
     'can_export' => true, 
     'show_ui' => true, 
     '_builtin' => false, 
     'capability_type' => 'post', 
     'menu_icon' => get_bloginfo('template_url').'/functions/images/product.png', 
     'hierarchical' => false, 
     'rewrite' => array("slug" => "product"), 
     'supports' => array('title'), //MAYBE add thumbnail later! 
     'show_in_nav_menus' => true 

     ); 

     register_post_type('product', $args); 
} 

這裏是分類:

function create_productcategory_taxonomy() { 
    $labels = array(
     'name' => _x('Categories', 'taxonomy general name'), 
     'singular_name' =>_x('Category', 'taxonomy singular name'), 
     'search_items' => __('Search Categories'), 
     'popular_items' => __('Popular Categories'), 
     'all_items' => __('All Categories'), 
     'parent_item' => null, 
     'parent_item_colon' => null, 
     'edit_item' => __('Edit Product Category'), 
     'update_item' => __('Update Product Category'), 
     'add_new_item' => __('Add New Product Category'), 
     'new_item_name' => __('New Product Category'), 
     'separate_items_with_commas' => __('Separate categories with commas'), 
     'add_or_remove_items' => __('Add or remove product categories'), 
     'choose_from_most_used' => __('Choose from the most used categories') 
     ); 

    register_taxonomy('productcategory', 'product', array (
     'label' => __('Product Category'), 
     'labels' => $labels, 
     'hierarchical' => true, 
     'show_ui' => true, 
     'query_var' => true, 
     'rewrite' => array('slug' => 'product-category'), 
     )); 
} 
+0

不清楚。什麼是帖子類型,什麼是分類法等。 – mozillanerd 2011-06-03 20:22:00

+0

對不起,自定義帖子類型被稱爲產品。分類是類別。我會更新我的帖子,向您展示每個代碼。 – drpcken 2011-06-03 20:27:09

回答

4

嘗試wp_list_categories。它從分類中導出類別,並鏈接到您選擇的深度。 (如你想要的許多兒童類別)格式化爲列表(例如使用<ul><li>元素)。
我想添加這個你想要替換的菜單在你的模板中。希望有所幫助,但如果沒有,我會回來並更具體。
我忘了提及它鏈接到的頁面轉到類別頁面。請參閱here.

+0

啊,謝謝!在周圍玩耍我能夠成功列出我所有的類別和子類別。我在wp-admin中創建了我的菜單,但是看起來我可以使用wp-nav-menu函數使用它。我可以編輯已經編程的菜單嗎?還是需要從頭開始創建新的菜單? – drpcken 2011-06-05 01:03:09

+0

您可以使用過濾器來編輯wp_nav_menu的輸出,但對於更多信息,我會看看[這裏。](http://www.kriesi.at/archives/improve-your-wordpress-navigation-menu - 輸出)。 – Sean 2011-06-05 08:44:15

+0

哎喲,這有點壓倒性。我可能只是使用get_categories來代替。謝謝。 – drpcken 2011-06-06 22:20:56

相關問題