2017-08-03 3 views
1

私は何が間違っているのか分かりません。私はmodelsと呼ばれるカスタムポストタイプを持っています。このカスタムポストタイプでは、カスタム分類も登録します。このカスタム分類はカテゴリに使用されます。しかし、毎回404エラーが発生しています。カテゴリーのカスタムポストタイプがエラーになる

$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 

ありがとう:

$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 

これは私が私のカスタム分類を作成する方法である:

は、これは私が私のカスタムポストタイプを作成する方法です!

編集:
言及するかもしれない良い:

  • 私は自分のカスタムプラグイン内のコードを実行します。
  • 私はデフォルトTwenyseventeenのテーマ
  • のWordPress 4.8

ソリューションを使用します。私は何か他のものにカテゴリを変更するために必要な@AmitJoshiに 感謝を。 変更されたコードの上に変更があります。

+0

は、[設定]に行っていると、「保存をクリック:

$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); 

は、これは私が私のカスタム分類を作成する方法でありますPermalinks "ボタン?実際に何かを変更する必要はありません。ボタンをクリックしてからもう一度やり直してください。 – JakeParis

+0

'register_taxonomy_for_object_type()'を呼び出す前にタクソノミーを登録していますか? – JakeParis

+0

@JakeParisいいえ、私はしませんでした。 – justkidding96

答えて

0

あなたは予約語categoryでカスタムタクソノミーを登録しようとしていました。それがなぜ機能していなかったのですか?

0

新しい再書き込みを追加するとき(プラグインやテーマに新しい分類を追加するときなど)、しばしば書き換えルールを更新する必要があります。そうしないと、新しいタクソノミーやカスタム投稿タイプにアクセスしようとすると404エラーが発生します。

書き換えをリフレッシュ/再構築するための最も簡単な方法は、設定>パーマリンクに移動し、「変更の保存」ボタンをクリックすることです。何も変更する必要はありません。ただsaveを押してください。

+0

答えをありがとう、しかし私はすべてを試しました。あなたのソリューション。私は 'flush_rewrite_rules(true);も試したことがあります。通常、WordPressでコードする方法を知っているので、私はこの種の質問をしません。しかし何か私は私が間違っていることを見ることができません... – justkidding96

0

解決策は、更新されたコードの下で@AmitJoshiにハンクします。

これは、私は私のカスタムポストタイプを作成する方法:

$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); 
関連する問題