2017-08-03 194 views
1

我不知道我在做什麼錯。我有一個稱爲models的自定義帖子類型。在這個自定義職位類型中,我還註冊了一個自定義分類。此自定義分類法用於類別。但我每次都遇到404錯誤。與類別的自定義帖子類型導致錯誤

這是我如何創建我的自定義文章類型:

$labels = array(
     'name' => __('Modellen', 'models'), 
     'singular_name' => __('Model', 'models'), 
     'add_new' => __('Nieuwe toevoegen', 'models'), 
     'add_new_item' => __('Nieuw model', 'models'), 
     'edit_item' => __('Model bewerken', 'models'), 
     'new_item' => __('Nieuw model', 'models'), 
     'view_item' => __('Model bekijken', 'models'), 
     'search_items' => __('Model zoeken', 'models'), 
     'not_found' => __('Niks gevonden', 'models'), 
     'not_found_in_trash' => __('Niks gevonden in de prullenbak', 'models'), 
     'parent_item_colon' => __('Model', 'models'), 
     'menu_name' => __('Modellen', 'models'), 
    ); 

    $args = array(
     'labels' => $labels, 
     'hierarchical' => false, 
     'supports' => array('title', 'page-attributes', 'editor', 'excerpt', 'author', 'thumbnail', 'custom-fields', 'revisions'), 
     //'taxonomies' => array('category'), // Old 
     //'taxonomies' => array('category'), // New not used any more 
     'public' => true, 
     'show_ui' => true, 
     'show_in_menu' => true, 
     'menu_position' => 20, 
     'show_in_nav_menus' => true, 
     'publicly_queryable' => true, 
     'exclude_from_search' => false, 
     'has_archive' => true, 
     'query_var' => true, 
     'can_export' => true, 
     'rewrite' => false, 
     'capability_type' => 'post', 
    ); 

    register_post_type('models', $args); 
    //register_taxonomy_for_object_type('category', 'models'); // Old 
    //register_taxonomy_for_object_type('category', 'models'); // New not used any more 

這是我如何創建我的自定義分類:

$labels = array(
     'name'    => _x('Categorieën', 'taxonomy general name', 'textdomain'), 
     'singular_name'  => _x('Categorie', 'taxonomy singular name', 'textdomain'), 
     'search_items'  => __('Zoek Categorieën', 'textdomain'), 
     'all_items'   => __('All Categorieën', 'textdomain'), 
     'parent_item'  => __('Hoofd categorie', 'textdomain'), 
     'parent_item_colon' => __('Hoofd categorie:', 'textdomain'), 
     'edit_item'   => __('Bewerk categorie', 'textdomain'), 
     'update_item'  => __('Update Categorie', 'textdomain'), 
     'add_new_item'  => __('Nieuwe categorie', 'textdomain'), 
     'new_item_name'  => __('Nieuwe categorie naam', 'textdomain'), 
     'menu_name'   => __('Categorieën', 'textdomain'), 
    ); 
    $args = array(
     'labels' => $labels, 
     'hierarchical' => true, 
     'public' => true, 
     'publicly_queryable' => true, 
     'show_ui' => true, 
     'show_in_menu' => true, 
     'show_in_nav_menus' => true, 
     'show_in_rest' => false, 
     'show_tagcloud' => false, 
     'show_in_quick_edit' => true, 
     'show_admin_column' => false, 
     'rewrite' => array('slug' => 'models', 'hierarchical' => true), 
    ); 
    //register_taxonomy('category', array('models'), $args); // Old 
    register_taxonomy('cat_models', array('models'), $args); // New 

謝謝!

編輯:
也許好提:

  • 我執行我自己的自定義插件中的代碼。
  • 我使用默認的Twenyseventeen主題
  • 的WordPress 4.8

解決方案: 感謝@AmitJoshi我需要改變的類別到別的東西。 在更新後的代碼上方進行更改。

+0

你已經進入設置,並點擊「保存永久鏈接「按鈕?你實際上並不需要改變任何東西,只需點擊按鈕,然後再試一次 – JakeParis

+0

你在註冊調用'register_taxonomy_for_object_type()'之前註冊了你的分類嗎? – JakeParis

+0

@JakeParis不,我沒有。 – justkidding96

回答

0

是的,你試圖註冊一個自定義分類和保留項category。這就是爲什麼它不起作用。

0

通常當添加新的重寫時(例如在插入或主題中添加新分類時可能會這樣做),您需要刷新重寫規則。如果您不這樣做,則嘗試訪問新的分類或自定義帖子類型時會遇到404錯誤。

重建/刷新重寫最簡單的方法就是去設置>永久鏈接,並點擊「保存更改」按鈕。您無需進行任何更改,只需點擊保存即可。

+0

感謝您的回答,但我嘗試了一切。也是你的解決方案我甚至嘗試過'flush_rewrite_rules(true);'通常我不會問這樣的問題,因爲我知道如何在WordPress中編寫代碼。但是我看不到我做錯了什麼...... – justkidding96

0

該解決方案在更新後的代碼下包含@AmitJoshi。

這是我如何創建我的自定義文章類型:

$labels = array(
     'name' => __('Modellen', 'models'), 
     'singular_name' => __('Model', 'models'), 
     'add_new' => __('Nieuwe toevoegen', 'models'), 
     'add_new_item' => __('Nieuw model', 'models'), 
     'edit_item' => __('Model bewerken', 'models'), 
     'new_item' => __('Nieuw model', 'models'), 
     'view_item' => __('Model bekijken', 'models'), 
     'search_items' => __('Model zoeken', 'models'), 
     'not_found' => __('Niks gevonden', 'models'), 
     'not_found_in_trash' => __('Niks gevonden in de prullenbak', 'models'), 
     'parent_item_colon' => __('Model', 'models'), 
     'menu_name' => __('Modellen', 'models'), 
    ); 

    $args = array(
     'labels' => $labels, 
     'hierarchical' => false, 
     'supports' => array('title', 'page-attributes', 'editor', 'excerpt', 'author', 'thumbnail', 'custom-fields', 'revisions'), 
     'public' => true, 
     'show_ui' => true, 
     'show_in_menu' => true, 
     'menu_position' => 20, 
     'show_in_nav_menus' => true, 
     'publicly_queryable' => true, 
     'exclude_from_search' => false, 
     'has_archive' => true, 
     'query_var' => true, 
     'can_export' => true, 
     'rewrite' => false, 
     'capability_type' => 'post', 
    ); 

    register_post_type('models', $args); 

這是我如何創建我的自定義分類:

$labels = array(
     'name'    => _x('Categorieën', 'taxonomy general name', 'textdomain'), 
     'singular_name'  => _x('Categorie', 'taxonomy singular name', 'textdomain'), 
     'search_items'  => __('Zoek Categorieën', 'textdomain'), 
     'all_items'   => __('All Categorieën', 'textdomain'), 
     'parent_item'  => __('Hoofd categorie', 'textdomain'), 
     'parent_item_colon' => __('Hoofd categorie:', 'textdomain'), 
     'edit_item'   => __('Bewerk categorie', 'textdomain'), 
     'update_item'  => __('Update Categorie', 'textdomain'), 
     'add_new_item'  => __('Nieuwe categorie', 'textdomain'), 
     'new_item_name'  => __('Nieuwe categorie naam', 'textdomain'), 
     'menu_name'   => __('Categorieën', 'textdomain'), 
    ); 
    $args = array(
     'labels' => $labels, 
     'hierarchical' => true, 
     'public' => true, 
     'publicly_queryable' => true, 
     'show_ui' => true, 
     'show_in_menu' => true, 
     'show_in_nav_menus' => true, 
     'show_in_rest' => false, 
     'show_tagcloud' => false, 
     'show_in_quick_edit' => true, 
     'show_admin_column' => false, 
     'rewrite' => array('slug' => 'models', 'hierarchical' => true), 
    ); 
    register_taxonomy('cat_models', array('models'), $args); 
相關問題