分類法による複数の投稿タイプのアーカイブのパーマリンク構造


8

最近、高度なWordPressプロジェクトに取り組んでいますが、カスタム投稿タイプのパーマリンク構造を変更することに行き詰まっています。

私は3つの投稿タイプを作成しました。たとえば、type1、type2、type3と、それらすべてに登録された分類テストです。カスタム分類法cat1、cat2、cat3に 3つの用語があります

これが私が達成したいことです:

猫からのすべての投稿にアクセスする代わりに

siteurl / test / cat1

私は次のような分類法の猫によって各投稿タイプのアーカイブにアクセスしたいと思います:

siteurl / type1 / cat1


URL構造とは
アミット

1
カスタムの投稿タイプや分類法と混同していると思いますが、実際に使用している名前を入力すると、理解しやすくなります。たとえば、type1 = vehicle、cat1 = typeおよびterm1 = carです。
chifliiiii

1
私が@chifliiiiiに同意するのは、組織化しようとしている方法/内容を正確に明確にすると私たちの助けになるかもしれないということです。また、カテゴリにはサブカテゴリを含めることができます。これにより、構造化された階層を形成しやすくなります。
クリス

この記事はあなたのためにいくつかの詳細と方向性を持っているかもしれません:wordpress.stackexchange.com/questions/49141/...を
アレックス・V.

回答:


1

これは、パーマリンク(投稿タイプと分類アーカイブの両方に同じベーススラッグ)の同様の構造を設定するための私のプロジェクトのコードの一部です。両方の投稿の 'has_archive'および 'rewrite'パラメータの値に注意してくださいタイプと分類:

add_action( 'init', 'register_my_post_types' );
function register_my_post_types() {

  register_post_type( 'movie',
    array(
        ....

        'has_archive' => 'movies',
        'rewrite' => array(
            'slug' => 'movies/%mv_category%',
            'with_front' => false
        ),
        'taxonomies' => array(
            'mv_category',
        ),
    )
  );

  register_taxonomy(
    'mv_category',
    array(
        'movie'
    ),
    array(
        ...
        'hierarchical' => true,
        'rewrite' => array(
            'slug' => 'movies',
            'with_front' => false,
            'hierarchical' => false
        )
    )
  );
) // end of create_my_post_types function


add_filter('post_type_link', 'filter_post_type_link', 10, 2);
function filter_post_type_link($link, $post)
{
    if ($post->post_type != 'movie')
        return $link;

    if ($cats = get_the_terms($post->ID, 'mv_category'))
        $link = str_replace('%mv_category%', array_pop($cats)->slug, $link);

    return $link;
}

次に、次のURLで映画投稿タイプの「ドキュメンタリー」カテゴリにアクセスできます。

site.com/movies/documentary/

「ドキュメンタリー」カテゴリの「映画A」は次のようになります。

site.com/movies/documentary/movie-a/

注:順序パーマリンクの書き換えルールはWordPressで生成されるため、分類を投稿タイプの後に登録することが重要です。


0

あなたが実際に整理しようとしていることを理解するのに役立つ具体的な用語がないと、私は正しい軌道に乗っているとは思えませんが、このプラグインはあなたがしようとしていることを達成するのに役立ちますか?http://wordpress.org/extend/plugins/cpt-onomies/

カスタムタイプの投稿のタイトルと分類法を奇妙な方法で(そしておそらく便利な方法で)まとめています...

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.