人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ワードプレスでカテゴリーを複数指定している場合に、任意のカテゴリースラッグ、及びカテゴリー名を表示させる方法を教えてください。

<span class="<?php $cat = get_the_category(); $cat = $cat[0]; {echo "$cat->category_nicename";} ?>"><?php echo $cat->cat_name; ?></span>

上記のコードでスラッグでクラス指定して、カテゴリー名と合わせてカテゴリーページに表示させていますが、カテゴリーを複数選択している場合に、表示させたいスラッグやカテゴリー名ではなく別のカテゴリーのものが表示される場合があります。(※多分ID順とかで選択されるのだと思います。。。)

複数のカテゴリーを選択している場合でも希望のカテゴリースラッグとカテゴリー名を表示させる方法を教えてください。

よろしくお願いします。

●質問者: kamefactory
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● a-kuma3
●300ポイント ベストアンサー

「希望の」というのはぼくには想像するしかないのですが、複数指定されてるカテゴリーを全て表示するなら、こんな感じになるのかなあと思います。

<?php
 $cat = get_the_category(); 
 foreach($cat as $c) {
 echo '<span class="' . $c->category_nicename . '">' . $c->cat_name . '</span>';
 }
?>

kamefactoryさんのコメント
ご回答ありがとうございます! 説明が下手ですいません。 例えば、AカテゴリーとBカテゴリーを選択した「投稿記事1」と、BとCカテゴリーを選択した「投稿記事2」、それぞれ記事毎に希望のカテゴリーを選択できるようにしたいという意味です。 「投稿記事1」の場合はAカテゴリーを表示したい。 「投稿記事2」の場合はCカテゴリーを表示したい。 という風に。 選択できるようにするって難しいですかね? 複数カテゴリーの中からパンくずリストに表示するものをカスタムフィールドで選択できるようにするfunction.phpへの記述を見たことがあったもので…できるかなと。 どんな方法でも構いません。 可能であればご教示くださいませ。 よろしくお願いいたします。

a-kuma3さんのコメント
その投稿記事1についてるふたつのカテゴリで、Bが希望ではなく、Aの方が希望する方だ、というのがどうやって分かるのでしょうか? 表示したくないカテゴリがひとつだけ決まってる、ということではないんですよね。

kamefactoryさんのコメント
ご連絡ありがとうございます。 AとBのカテゴリーに入れてるけど、表示させたいスラッグはBの方だけ。という感じです。この場合で言うとAの方のカテゴリーは表示させたくありません。 Bの方を選択するという機能も含めて何か方法はありませんかね? よろしくお願いいたします。

a-kuma3さんのコメント
記事毎に設定していくイメージなんですね。 つけるタグがふたつとは限らないとしたら、表示したいものをカスタムフィールドで設定するとか、ですかね。 >|php| <?php $cat = get_the_category(); $disp_cat = get_field('disp_cat'); // カスタムフィールド foreach($cat as $c) { if ($c->category_nicename == $disp_cat) { echo '<span class="' . $c->category_nicename . '">' . $c->cat_name . '</span>'; } } ?> ||< そもそも、カテゴリーを複数設定しているところがどうなんだろう、という気がしないでもないですが。

kamefactoryさんのコメント
ありがとうございました! 希望通り作成することができました。 いつもありがとうございます。 ちょっとまた初歩的な部分でわからないことが出てきたので またご質問させて頂きますね。 よろしくお願いいたします。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ