カスタム投稿タイプのアーカイブページが表示されない


11

私のウェブサイトに「プロフィール」というカテゴリがあります。現在、このカテゴリを「プロフィール」というカスタム投稿タイプに移動しています。

私の問題は、このカスタム投稿タイプのアーカイブページを表示できないことです。URLにアクセスするmywebsite.com/profilesと、プロファイルカテゴリの投稿の単一の投稿ページに移動します。

に含まhas_archive = true;れていますfunctions.php

同じWebサイトで行った別の種類のカスタム投稿のアーカイブページを作成するのに問題はなかったので、今回はなぜこれが機能しないのか本当にわかりませんでした。

何かアドバイスをいただければ幸いです。

add_action( 'init', 'profile_custom_init' );

/* Here's how to create your customized labels */
function profile_custom_init() {
$labels = array(
    'name' => _x( 'Profiles', 'post type general name' ), // Tip: _x('') is used for localization
    'singular_name' => _x( 'Profile', 'post type singular name' ),
    'add_new' => _x( 'Add New', 'Profile' ),
    'add_new_item' => __( 'Add Profile' ),
    'edit_item' => __( 'Edit Profile' ),
    'new_item' => __( 'New Profile' ),
    'view_item' => __( 'View Profile' ),
    'search_items' => __( 'Search Profile' ),
    'not_found' =>  __( 'No Profile found' ),
    'not_found_in_trash' => __( 'No Profile found in Trash' ),
    'parent_item_colon' => ''
);

// Create an array for the $args
$args = array( 'labels' => $labels, /* NOTICE: the $labels variable is used here... */
    'public' => true,
    'publicly_queryable' => true,
    'has_archive' => true,
    'show_ui' => true,
    'query_var' => true,
    'rewrite' => true,
    'capability_type' => 'post',
    'hierarchical' => false,
    'menu_position' => 10,
    'supports' => array( 'title', 'editor','thumbnail', 'excerpt', 'custom-fields' ),
        'taxonomies' => array('category')
    ); 

    register_post_type( 'profile', $args ); /* Register it and move on */
}

プロファイルのカテゴリスラッグをプロファイル2のようなものに変更してみてください。
Vinod Dalvi 2013年

動作しないようです。また、404ページに移動する代わりに、たとえばmywebsite.com/hisというURLにアクセスした場合(「His」と呼ばれるページや投稿はありません)、「his」で始まる投稿に移動します。これはとても奇妙に見えますか?
Steie 2013年

パーマリンク構造をもう一度保存しようとしましたか?これにより、書き換えルールが再生成されます。
Mike Madern 2013年

パーマリンク設定の[変更を保存]ボタンをクリックして、パーマリンク構造を再度保存してみてください。
Vinod Dalvi 2013年

回答:


18
  1. 設定->パーマリンクに移動します
  2. パーマリンク構造をデフォルトに変更します
  3. 設定を保存する
  4. カスタム構造または投稿名(またはその他の構造)に変更する
  5. 設定を保存する

これにより、htaccessファイルが再書き込みされ、再書き込みが機能するはずです。


上記のソリューションが機能しない場合は、サーバーの構成に関連しているはずです。

Aapache2

実行: a2enmod rewrite && service apache2 reload

Nginx

フォロー:https : //do.co/2LjCF8r


これがあなたの時間を節約することを願っています。


これで解決しました。
user2924019

3

パーマリンク構造を再度保存すると、問題が解決するようです。先端のマイクとヴィノッドをありがとう。


1
私はニキルの前にこれに答えて、それが役立つと思いました。彼がより良い答えを投稿して以来、私はチェックしていませんでした。ですから、回答を投稿した人々にクレジットを与えなかったとして私を非難するのは少し不公平です。
Steie

私の悪い、10月の後に行進を見て、それが次の年だと思った..あなたのまばらな答えとそれを組み合わせたものは、すぐに信用をつかむように見えた。どちらかに見える)、質問と回答の両方に賛成票を投じた
Kender

@ケンダー-他の誰かが答えたり、それをコピーしたりしてクレジットを取得するつもりはなかった。私の経験にもとづいて答えましたが、詳細に答えを説明しました。多くの開発者がサーバーだけでなくCMS側からも問題を解決するのに役立ちます。
Nikhil
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.