2014年08月27日 phpWordPress
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>

ピックアップ記事

PHP で 配列をGET送信する

2012年02月02日 php
http_build_query PHPで配列をGET送信するには、「http_build_query」を使って、URLエンコードされたクエリ文字列を生成します。 サンプルコード [php]<?php $data = array('foo', 'bar', 'baz', 'boom', 'cow' => 'milk', 'php' =>'hypertext processor…
「PHP で 配列をGET送信する」をはてなブックマークに追加

検索フォームを設置し、検索結果を表示させる

2012年01月23日 WordPress
1.まずは検索フォームを設置します searchform.php 2.次に検索結果を取得、表示させる search.phpの検索結果を表示させる部分…
「検索フォームを設置し、検索結果を表示させる」をはてなブックマークに追加

WordPressサイトのトップページのURL取得

2011年11月21日 WordPress
[php] <a href="<?php bloginfo('url'); ?>"> [/php] anastrozole side effects…
「WordPressサイトのトップページのURL取得」をはてなブックマークに追加

WordPress ウィジェットに個別のid,classを設定する

2014年08月11日 web関連WordPress
WordPressのウィジェットに個別のid,classを設定して、違うデザインを適用したい場合は、functions.php内でサイドウィジェットを有効にする設定項目の「before_widget」の箇所を以下のように変更します。 [php]register_sidebar(array( 'name' => 'side-widget', 'before_wid…
「WordPress ウィジェットに個別のid,classを設定する」をはてなブックマークに追加

WordPressのWP-PageNaviが動かない場合の対処法

2012年02月04日 WordPress
WP-PageNaviは、WordPressでページングを可能にしてくれるプラグインですが、以下のように「query_posts」を指定していると、正常に動かないようです。 WP-PageNaviが正常に動かない例 [php]<?php if ( have_posts() ) : query_posts('cat=1&showposts=5' ); ?> [/php] 上記…
「WordPressのWP-PageNaviが動かない場合の対処法」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy