- 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細)
テンプレートタグ/wp tag cloud
この項目「テンプレートタグ/wp tag cloud」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。
目次
説明
wp_tag_cloud は、各タグが記事に付けられた回数によってタグの文字サイズを決める、「タグクラウド」というタグの一覧を表示します。
注: このタグは WordPress バージョン 2.3 以上でのみ使えます。
バージョン 2.8 以降、タクソノミーをもとにクラウド作成できるよう、taxonomy パラメータが追加されています。これは例えば(投稿のタグだけではなく)投稿カテゴリーのクラウドを作ることもできるということです。
使い方
<?php wp_tag_cloud('引数'); ?>
用例
初期設定での使用
<?php wp_tag_cloud(); ?>
初期値:
<?php $defaults = array( 'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45, 'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC', 'exclude' => '', 'include' => '', 'link' => 'view', 'taxonomy' => 'post_tag', 'echo' => true ); ?>
デフォルトでは次のように表示します。各タグの文字サイズは、付けられた記事数に応じて smallest~largest の間で段階的に変化します。
- smallest - 一番小さいタグを 8(pt) で表示(件数が少ないタグ)
- largest - 一番大きいタグを 22(pt) で表示(件数が多いタグ)
- unit - 最少・最多値のフォントサイズの単位として 'pt' (point) を使用
- number - 最大 45 タグを表示
- format - flat(ホワイトスペース区切り)形式でタグを表示
- orderby - タグ名順に表示
- order - 昇順でソート(前項でタグ名を指定しているので「タグ名の昇順」となる)
- exclude - 除外タグなし
- include - 全タグ対象
- link - view
- taxonomy - Use post tags for basis of cloud
- echo - echo the results
タイトル「人気のタグ」の下にタグクラウドを表示
<?php if ( function_exists('wp_tag_cloud') ) : ?> <li><h2>人気のタグ</h2> <?php wp_tag_cloud('smallest=8&largest=22'); ?> </li> <?php endif; ?>
注: 全体が <li>~</li>
で括られているのは、デフォルトテーマなどのサイドバー用の形式です。サイドバー全体が順不同リスト(<ul>)の入れ子になっています(サイドバーのカスタマイズ/en 参照)。
サイズ指定、タグ名ではなく使用数順のタグクラウド
<?php wp_tag_cloud('smallest=8&largest=22&number=30&orderby=count'); ?>
タグクラウドを表示せずに配列として取得
タグクラウドのデータを他の PHP コードで使うために、変数 $a
に格納
<?php $a = wp_tag_cloud('format=array' );?>
パラメータ
- smallest
- (整数) 最少使用数のタグの表示に使うフォントサイズ。初期値は 8。
- largest
- (整数) 最多使用数のタグの表示に使うフォントサイズ。初期値は 22。
- unit
- (文字列) smallest・largest の値の単位。
pt, px, em, %
等、CSS でフォントサイズに用いる単位を指定可能。初期値は point の pt。 - number
- (整数) クラウドに表示するタグ数。初期値は 45。
'0'
を指定すると全タグを表示。 - format
- (文字列) クラウド表示のフォーマット
-
'flat'
(初期値) タグをホワイトスペースで区切る -
'list'
タグをclass='wp-tag-cloud'
付きのul
(番号なし箇条書き)内に表示 -
'array'
タグを配列に格納し、タグクラウドデータを PHP で扱えるように配列のまま返す。注: 配列の取得(表示ではなく)は WordPress 2.5 以上で使えます。
-
- orderby
- (文字列) タグの表示順とする項目。有効値:
-
'name'
- タグ名(初期値) -
'count'
- 使用数
-
- order
- (文字列) ソート順。有効値(大文字):
-
'ASC'
- 昇順(初期値) -
'DESC'
- 降順 -
'RAND'
- ランダム(WordPress 2.5 以上で指定可能)
-
- exclude
- (文字列) 除外するタグの
term_id
をカンマ区切りで指定。例えば、'exclude=5,27'
とすればterm_id
が 5 と 27 のタグは表示されない。デフォルトでは除外なし。 - include
- (文字列) 表示対象とするタグの
term_id
をカンマ区切りで指定。例えば、'include=5,27'
とすればterm_id
が 5 または 27 のタグのみを表示。デフォルトでは全てのタグが対象。 - link
- (文字列) 特定のタグを編集できるようリンクを設定
- 注: このパラメータは WordPress 2.7 にて導入
- 'view'(初期値)
- 'edit'
- taxonomy
- (文字列) クラウドの生成に使われるタクソノミー。
- 注: このパラメータは WordPress 2.8 にて導入
- 'post_tag' -(初期値)クラウドのソースとして投稿タグを使う
- 'category' - クラウドのソースとして投稿カテゴリーを使う
- 'link_category' - クラウドのソースとしてリンクカテゴリーを使う
- echo
- (真偽値) 結果を出力するか、変数として保存するかを決定する。初期値は true(タグクラウドを表示)。
- 注: このパラメータは WordPress 2.8 にて導入
- 1 (true) -(初期値)
- 0 (false)
タグアーカイブの作成
素晴らしいタグ機能がバージョン 2.3 で追加されましたが、wp_tag_cloud タグはタグアーカイブを表示するのにも使えます。つまり、読者があるタグをクリックするとタグクラウドとそのタグが付いている全ての記事を表示することができます。テンプレート階層によると、tag.php テンプレートが存在しない場合は archives.php テンプレートが使われます。この tag.php テンプレートを作ることによって、タグアーカイブの表示をカスタマイズすることができるし、タグクラウドを最上位に表示させてより便利なナビゲーションを付けることも出来ます。
そうするには、あなたのテーマにテンプレートを追加する必要があります。以下はテンプレートやテンプレート階層に関係した良い見本です。
基本的な手順は、
- コンテンツを作成し、tag.php という名前のファイルに保存する
- ファイルをあなたが使用しているテーマのディレクトリにアップロードする
- これは任意です。ページナビゲーションにタグアーカイブへのリンクを入れたい場合は行ってください。行わない場合は、タグをクリックしたときにこのテンプレートが使用されます。
- 新しくページを作成し、このテンプレートを適用し、ページ名を Tag Archive とする。
3 番目のステップを詳しく説明します。
WordPress は異なるページテンプレートを各ページごとに使用することができます。管理パネルの作成 > ページ作成で表示されるページの下に (使用中の WordPress バージョンによってはサイドバーにあります) 「ページテンプレート」という名前のドロップダウンがあります。そこでどのテンプレートを使ってページを表示するかを選択できます。
<?php /* Template Name: タグアーカイブ */ ?> <div> <?php get_header(); ?> <h2>タグアーカイブ</h2> <?php wp_tag_cloud(''); ?> <div class="navigation"> <div class="alignleft"><?php next_posts_link('« 古い投稿') ?></div> <div class="alignright"><?php previous_posts_link('新しい投稿 »') ?></div> </div> <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <h2> <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>へのパーマリンク"><?php the_title(); ?></a> </h2> <div class="entry"> <?php the_content('続きを読む »'); ?> </div> <?php endwhile; ?> <?php endif; ?> </div> <?php get_footer(); ?>
このテンプレートはスタイリングされていないことに注意してください。使用中のテーマの single.php ファイルを見て構造を決めると良いでしょう。
変更履歴
- 2.8 :
taxonomy
、echo
パラメータが追加されました。 - 2.7 :
link
パラメータが追加されました。 - 2.5 :
- パラメータ
order
(ソート順)の値として'RAND'
を指定できるようになりました。 - パラメータ
format
(表示形式) で'array'
を指定したとき、表示せずに値を返すようになりました。
- パラメータ
- 2.3 : 新規テンプレートタグ
関連
タグ: get_tag(), get_tag_link(), get_tags(), get_the_tag_list(), get_the_tags(), is_tag(), the_tags(), single_tag_title(), tag_description(), wp_generate_tag_cloud(), wp_tag_cloud()
最新英語版: WordPress Codex » Template Tags/wp_tag_cloud (最新版との差分)