WordPressでカテゴリ一覧を取得する方法!デザインしやすい形で出力する記述

WordPress Images

ゴールデンウィーク前半は実家でモリモリとブログの裏周りを修正していたg.O.R.i(@planetofgori)デス!

主な作業としてはこれまであったカテゴリをさらに細分化して各記事を分類していた。新たに今回追加したカテゴリを含めて現在のカテゴリ数は以下の通り!

Amazon / Android / Androidアプリ / Apple / Facebook / Google / iMac / iOS / iPad / iPadアクセサリー / iPadアプリ / iPhone / iPhoneアクセサリー / iPhoneアプリ / IT / Jailbreak(脱獄) / LINE / Mac / Mac mini / Mac OS X / Mac Pro / MacBook Air / MacBook Pro / Macアクセサリー / Macアプリ / Microsoft / Samsung / Twitter / Windows / WordPress / おもしろネタ / アカペラ / アプリ / ウェブ / カメラ / ガジェット / グルメ情報 / セール情報 / デザイン / ニュース・時事ネタ / ブログ運営 / ミュージック / モバイル / 健康 / 商品レビュー / 教育 / 渋谷グルメ情報 / 英語 / 雑記 / 音楽アクセサリー

これらを現在フッターに表示しているのだが、すべてのカテゴリをいちいちベタ書きで書き出すのは面倒だ。WordPressでカテゴリ一覧を取得する方法を調べたので、紹介する!

WordPressですべてのカテゴリを取得する記述

もっとも簡単な方法としては以下が有名のようだ。

wp_list_categories()

ただし、この記述だと自動的にリストとして書き出されてしまうため、デザインで使う上では不便になることも少なくない。

そこで、見つけたのが下記コード。これを貼り付けるだけですべてのカテゴリを取得してくれる!

<?php
    $cat_all = get_terms( "category", "fields=all&get=all" );
    foreach($cat_all as $value):
 ?>
<p><a href="<?php echo get_category_link($value->term_id); ?>"><?php echo $value->name;?></a></p>
<?php endforeach; ?>

あとは好みのデザインに合わせてCSSを変更するだけ!非常に便利なコードだ!

ただ、欠点としては良くも悪くもすべてのカテゴリを取得してしまうこと。特定のカテゴリを除外する方法がよく分からずにいるので、もし分かる人がいたら是非とも教えて頂きたい!

(via ダリの雑記:WEBプログラム版

コメントを残す(4件)

コメントは承認後に表示されます。良識のあるコメントを心がけ、攻撃的な表現や他人が傷つく発言は避けましょう。なお、コメント投稿時に「利用規約」に同意したとみなします。

コメント一覧(4件)
  1. uno

    あるいは第二引数("fields=all&get=all" )の部分を配列で指定し、そのうえでexcludeを指定してもいいと思います。 http://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_terms 配列での指定のほうが見やすいと思うのですが、どうなんでしょうね。

  2. kanakogi

    「&exclude=1」のようにカテゴリID指定するとカテゴリの除外ができますよ。 例:get_terms( "category", "fields=all&get=all&exclude=1" );

  3. Masato Ikeda

    https://gist.github.com/a2ikm/5500239 こんな感じのif文で動かないかねー。

「WordPress」新着記事
トレンド検索