2014年08月27日 WordPressphp
WordPressでカテゴリ一覧を表示させるには、wp_list_categoriesというテンプレートタグがありますが、出力結果が思い通りにならないことが多いので、get_termsを使って、カテゴリ一覧を表示させる方法です。

カテゴリ一覧を表示させる

get_termsでカテゴリ情報を取得するには、最初の引数にcategoryを指定します。

echo '<ul>';
    $terms = get_terms( 'category', 'orderby=count&hide_empty=0' );
    foreach($terms as $value):
echo '<li><a href="'.get_category_link($value->term_id).'">'.$value->name.'('.$value->count.')</a></li>';
     endforeach;
echo '</ul>';

タグ一覧を表示させる

タグ一覧の表示は、上記のカテゴリ一覧を表示させるコードのcategoryの箇所をpost_tagに、get_category_linkget_tag_linkに変更すれば、タグの一覧を表示させることが出来ます。

echo '<ul>';
    $terms = get_terms( 'post_tag', 'orderby=count&hide_empty=0' );
    foreach($terms as $value):
echo '<li><a href="'.get_tag_link($value->term_id).'">'.$value->name.'('.$value->count.')</a></li>';
     endforeach;
echo '</ul>';

引数

引数の形式は、orderby=count&hide_empty=0の形式でも、配列形式でもかまいません。

配列形式の場合

$args = array(
  'orderly' => 'count',
  'hide_empty' => 0
);

   $terms = get_terms( 'post_tag', $args );
関数リファレンス/get terms
関数リファレンス/wp parse args

余談・・・

カテゴリの一覧表示とタグの一覧表示が並んでいるようなサイトを作ったりする場合は、PHPコードが見づらくなるので、以下のようにオリジナル関数を作って、使うことも有ります。

functions.php

function my_get_terms($term,$args){ 
echo '<ul>';
    $term = get_terms( $term, $args );
    foreach($term as $value):
    if($term == "category"):
      $url = get_category_link($value->term_id);
    elseif($term == "post_tag"):
      $url = get_tag_link($value->term_id);
    endif;
echo '<li><a href="'.$url.'">'.$value->name.'('.$value->count.')</a></li>';
     endforeach;
echo '</ul>';
}

出力側.php

my_get_terms('category','orderby=count&hide_empty=0');

この投稿へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

CAPTCHA


ピックアップ記事

WordPressにtwitterのログを自動投稿するプラグイン

2011年05月29日 WordPress
タイトル通り、Twitterの一日分のツイートをWordPressへ自動投稿してくれるプラグインについてですが、tweet digestというプラグインを使っていたのですが、これを有効にすると、他のプラグイン(SyntaxHighlighterやフロントエンド・エディタなんか)が動かなくなる事が分かったので、Twitter Toolsに変更しました。 なので、Twitter Tools の使い方…
「WordPressにtwitterのログを自動投稿するプラグイン」をはてなブックマークに追加

wordpress 現在のuser_idやdisplay_nameを取得

2020年01月14日 WordPress
現在のuser_idを取得 [php] $user_id = get_current_user_id();[/php] 現在のdisplay_nameを取得 [php]$user = wp_get_current_user(); $display_name = $user->display_name;[/php]
「wordpress 現在のuser_idやdisplay_nameを取得」をはてなブックマークに追加

WordPress flickrRSSで画像をランダムに表示させる

2011年05月28日 WordPressphp
このサイトでは、Instagramから投稿した画像を同時にFlickrにも投稿し、その画像を flickrRSS というWordPressのプラグインを使って、Flickrから呼び出して、表示させています。 デフォルトでは、RSSというだけあって、投稿日時順に表示されてしまいます。 これだと、毎回画像の並びが同じで、おもしろくないので、ランダムに表示させています。 ランダムにするには、flic…
「WordPress flickrRSSで画像をランダムに表示させる」をはてなブックマークに追加

カテゴリIDからカテゴリ名またはスラッグを取得する

2012年01月24日 WordPress
<?php //カテゴリIDからカテゴリ情報取得 $category = get_category('123'); //カテゴリ名表示 echo $category->cat_name; //スラッグ名表示 echo $category->slug; ?> …
「カテゴリIDからカテゴリ名またはスラッグを取得する」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy