最新の記事や関連記事をお探しの方は下の「サイト内検索」で検索してみてください。
WordPressの標準装備されているタグクラウドについては以前簡単カスタマイズの方法を紹介しました。ですが、タグの一覧とそのタグの記事件数をを表示するだけで、見た目の調整が難しいので自分で記事件数を表示する方法を探して実装してみました。
get_tags() 関数を使う
get_tag()
とはWordpressに登録されているタグをまとめて取得する関数です。
これを使ってすべてのタグを一気に取得してリンクを書き出す方法がこちらです。
1 2 3 4 5 6 7 8 9 |
if ($tags = get_tags()) { echo '<ul>' . "\n"; foreach ($tags as $tag) { echo '<li><a href="' . get_tag_link($tag->term_id) . '">' . $tag->name . '<span>'. $tag->count .'</span></a></li>' . "\n"; } echo '</ul>' . "\n"; } |
こうするとリスト状にタグが表示されます。
ウィジェットとして組み込む
と、ここまでは検索するとよく出てくる方法なんですが、ここからさらに踏み込んでサイドバーに設置するウィジェットとして実装してみました。
それがこちら。
ファイル本体はこちらからダウンロードできます。
このファイルを利用中のテーマディレクトリにおいてから functions.php
に次の5行を追記します。
1 2 3 4 5 |
require_once 'widget-tag-cloud.php'; function theme_register_widget() { register_widget('Widget_Tag_Cloud'); } add_action('widgets_init', 'theme_register_widget'); |
これでWordPressの 管理画面>外観>ウィジェット に 件数表示付きタグ一覧 というのが追加されているはずです。
さっそくサイドバーに追加してみてください。
件数表示付きでタグ一覧が表示されました。
ちなみに、リスト表示のulタグには tag_cloud_with_count
というクラス名が設定してあるのでCSSでお好きにスタイル調整しちゃってください。
CSSで実装するタグクラウドのサンプル | NxWorldのなかの件数表示付きとかがいいかと思います。
参考までにtamulab.jpでのスタイルはこんな感じです。
管理画面での設定項目
ウィジェットの設定項目で次の3つを用意しました。
- ウィジェットタイトル
- タグの並び順のキー
- タグの並び順
タグの並び順のキーはタグの並び順をいろいろ選べます。タグの名前順だったり記事件数順だったりが選べます。
タグの並び順は上の並び順で昇順か降順かを選べます。
なので、「タグの記事件数の多い順」だったらタグの並び順のキーは タグの使用件数 を選んで、並び順は 降順 を選ぶといいと思います。
ぜひ使ってみて感想とか希望・要望とかあれば教えてください。