kururiさん、こんにちは。
価格帯のカスタム分類がテーブルとチェアの投稿タイプで利用できるようになっていれば、価格帯の分類表示では両方の投稿タイプが表示されるようになっているはずです。
今、何がどこまで出来ていて、何が出来ていないのかもう少し詳しく説明いただけますか?
返信頂きありがとうございます。
現在テーブルとチェアにそれぞれ価格帯のカテゴリを作って登録している状態です。
サイドバーに<?php wp_nav_menu(‘menu=chair-type’); ?>と<?php wp_nav_menu(‘menu=table-type’); ?>を設定しており、チェアの「1000円までの商品」カテゴリリンクとテーブルの「1000円までの商品」カテゴリリンクの両方表示されており、それを一つにまとめたいと考えております。
items.phpには、
<?php if(have_posts()): while(have_posts()): the_post(); ?>
“>
<?php the_post_thumbnail(‘thumbnail’); ?>
<?php endwhile; endif; ?>
を記載し「1000円までの商品」を表示しております。
こちらにチェアとテーブル両方の「1000円までの商品」を表示したいと考えております。
何かfunction.phpにチェアとテーブルをひもづけるコードを書かないといけないのでしょうか。
言葉足らずの所や説明不足な所があり大変申し訳ございません。
お時間のあるときでよろしいので何卒ご教授賜りたく存じます。
よろしくお願いいたします。
【チェアタイプのコード】※下記は正常通り動いております。
add_action(‘init’,’create_chair_post_type’,0);
function create_chair_post_type() {
register_post_type(
‘chair’,
array(
‘label’ => ‘チェア’,
‘public’ => true,
‘hierarchical’ => false,
‘menu_position’ => 5,
‘rewrite’ => false,
‘query_var’ => false,
‘supports’ => array(
‘title’,
‘editor’
),
‘register_meta_box_cb’ => ‘chair_meta_box’
)
);
}
add_action(‘init’,’create_chair_ct’,0);
function create_chair_ct() {
register_taxonomy(
‘chairtype’,
‘chair’,
array(
‘hierarchical’ => true,
‘label’ => ‘チェアタイプ’,
‘singular_name’ => ‘チェアタイプ’,
‘query_var’ => true,
‘rewrite’ => true
)
);
}
kururiさん
カスタム分類(タクソノミー)を利用するには、その分類を登録する register_taxonomy を実行する必要があります。
リンクを貼ったCODEXにも記述されていますが、 register_taxonomy は大別すると
<?php register_taxonomy($taxonomy, $object_type, $args); ?>
$taxonomy:(文字列)(必須)分類の名称。
$object_type:(配列/文字列)(必須)分類オブジェクトのオブジェクトタイプ。
$args:(配列/文字列)(オプション)引数の配列。
の3つで構成されています。ご呈示いただいたコードの register_taxonomy では沢山のパラメータが指定されているように見えますが、$args が配列で指定されているため多く見えているだけです。
ここで、カスタム分類がどの投稿タイプで使えるか指定しているのは、2番目のパラメータ $object_type になります。呈示頂いたコードでは、'chair'
となっていますので、chairという投稿タイプで利用するという指定になっています。
これを複数の投稿タイプで利用できるようにするには、最初に挙げていただいたフォーラムの回答にもあるように配列で記述する必要がなります。配列が何かを説明するのは長くなりますので避けますが、カスタマイズなど行う場合は必要な知識となりますので、憶えておくと良いです。
具体的な記述方法ですが、register_taxonomyの
'chair',
の部分を
array( 'chair', 'table' ),
とすれば、チェアだけでなくテーブルでもチェアタイプの分類を登録できるようになります。
jim912さん
お早い返信本当にありがとうございます。
register_taxonomyに配列で登録した所、希望する動作を行う事ができました。
わかりやすい説明をして頂き、本当に感謝しております。
ワードプレスを始めてまだ1ヶ月程度ですが、
jim912さんのおかげで少しずつ前進していけそうな気がします。
本当にありがとうございました。