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プログラム版

サイト内を検索して記事を探す

wordpress_pins.jpg

この記事が気に入ったら「いいね!」しよう

  • follow us in feedly Feedlyで最新記事を購読
  • Twitterで更新情報を1番にゲット!
  • LINEで楽しくトークしましょう!(スマホでLINEを起動 > その他 > 友だち追加 > QRコード)

この記事に関連するまとめ

4件のコメント

  1. Masato Ikeda より:

    https://gist.github.com/a2ikm/5500239

    こんな感じのif文で動かないかねー。

  2. kanakogi より:

    「&exclude=1」のようにカテゴリID指定するとカテゴリの除外ができますよ。

    例:get_terms( “category”, “fields=all&get=all&exclude=1” );

  3. 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

    配列での指定のほうが見やすいと思うのですが、どうなんでしょうね。

この記事にコメントする

投稿内容を確認し、問題がなければ下記の「コメントを投稿する」ボタンを押してください。