サポート » 使い方全般 » カスタム投稿・タクソノミ設定時のURLと、tegory%にコンテンツを持たせる

  • カスタム投稿タイプとタクソノミをうまく理解できず、苦しんでおります…。

    以下のような構成のサイトを、カスタム投稿タイプとタクソノミの組み合わせで構築するとします。

    ホーム – 生き物 – 鳥
    – 魚 -淡水魚 – コイ
    – アユ
    海水魚 – カツオ

    カスタム投稿タイプ:
    生き物 -> ikimono(一番上の親カテゴリー)

    タクソノミ:
    鳥 -> bird / 魚 -> fish(子カテゴリー)
    淡水魚 -> tan / 海水魚 -> kai(孫カテゴリー)
    コイ -> koi / アユ -> ayu

    この構造で、以下のようなことを実現したいと考えております。

    1)コイなど個別の魚のコンテンツを表示する時のURLを以下のようにする。
    http://example.com/ikimono/fish/tan/koi
    2)”生き物(ikimono)”や”魚(fish)”などにもコンテンツを含める。つまり、
    http://example.com/ikimono
     と指定した場合は、生き物についてのトップページを表示する。
     http://example.com/ikimono/fish
     と指定したときは、魚についてのトップページを表示する。

    カスタム投稿タイプはプラグインを使わずに、functions.phpに以下のようなコードを書いております。

    register_post_type( 'ikimono',
      array(
        'label' => '生き物',
        'labels' => array(
          'singular_name' => '生き物',
          'add_new_item' => '生き物追加',
          'add_new' => '新規追加',
          'new_item' => '新規の生き物',
          'view_item' => 'このページを表示',
          'not_found' => '生き物は見つかりませんでした',
          'not_found_in_trash' => 'ゴミ箱に生き物はありません',
          'search_items' => '生き物を検索',
        ),
        'public' => true,
        'show_ui' => true,
        'query_var' => true,
        'capability_type' => 'post',
        'hierarchical' => true,
        'menu_position' => 5,
        'has_archive' => true,
        'rewrite' => array('slug' => 'activity'),
        'supports' => array('title','editor','author','thumbnail','author','page-attributes','revisions')
      )
    );

    このように、ikimonoという名前でカスタム投稿タイプを作成して、新規にikimonoというスラッグで投稿を追加しますと、URLが以下のようになってしまいます。
    “生き物” -> http://example.com/ikimono/ikimono

    また、そのikimonoを親にして”魚(fish)”を表示させると、以下のようなURLになってしまいます。
    “魚” -> http://example.com/ikimono/ikimono/fish

    上述(2)のように、”http://example.com/ikimono”で生き物についての投稿を表示させるにはどうしたらよいのでしょうか。
    また、それが実現すれば、上述(1)も実現すると考えてよいのでしょうか。

    こちらのフォーラムをはじめ、様々なサイトを参考にさせてもらいましたが、どうしてもうまい方法が見つかりません。カスタム投稿タイプとタクソノミの親子カテゴリーの関連付けで、静的URLのように組めるというのがそもそも間違っているのでしょうか。

    分かりづらい質問のしかたになってしまったかもしれませんが、ご存知の方がいらしたら教えていただけると本当に助かります。どうぞ宜しくお願いいたします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • Ecoさん。こんにちは。
    「%category%にコンテンツを持たせる」というのが、何を指しているのか
    ちょっとわからないのですが…。

    上記の内容をfunctions.phpに書いているのであれば、
    「生き物」タイプのアーカイブページのアドレスは、
    'rewrite' => array('slug' => 'activity'),と指定していますので
    サイトアドレス/activity
    になるのではないでしょうか?

    個別の記事につきましては、パーマリンクの設定にもよりますが、
    %post_id%
    を使う指定をしているのであれば、
    サイトアドレス/activity/ikimono
    で表示されていませんか?

    /activity/
    を削除したアドレスにするのは難しいかと思います。
    参照:http://wpdocs.sourceforge.jp/%E6%8A%95%E7%A8%BF%E3%82%BF%E3%82%A4%E3%83%97

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「カスタム投稿・タクソノミ設定時のURLと、tegory%にコンテンツを持たせる」には新たに返信することはできません。