ブログのタグクラウド、ただ並べるだけではもったいないと思いませんか?
本記事では、ブログのタグクラウドを「暗号通貨の資産状況で使われるヒートマップ」のようにに表示する方法をご紹介します。
特徴は以下の3つです。
- タグの人気順に大きさ・色・位置を変える
- ピクセル単位で美しく整列させる
- ショートコードひとつで簡単に設置可能
この3つで、読者にとって視覚的にわかりやすいタグクラウドが完成します。また、自身のブログが雑記ブログだった場合、「どのような記事を中心に投稿しているのか」と分かる手掛かりになります。
コピペだけなので簡単作業です。
では、始めていきましょう。
ヒートマップの完成イメージ
本記事で紹介するタグクラウドは、暗号通貨の資産状況で使われるヒートマップのようなデザインです。色は単色で、細かい設定は、CSSコードで調整できます。
機能は以下の4つになります。
- 1位タグは画面左に大きく表示(420×420px)
- 2位〜9位は右側に階層的に配置
- タグ数に応じて色の濃さと文字サイズが変化
- スマホでも自動縮小で表示崩れなし
メリット
設置したブログが「どんな内容を扱っているのか」を読者に伝える手がかりになります。また、運営者自身にとっても、雑記ブログを長く続けていれば、蓄積されたタグから「自分のブログは何をテーマにしているのか」が見えてくるかもしれません。
ヒートマップ
各暗号通貨の価格変動を色で視覚化しており、緑は上昇、赤は下落を示しています。時価総額が大きいほど表示面積も大きく、直感的に市場全体の動きをつかむのに便利です。
画像こちら
🔗 CoinMarketCap – Crypto Heatmap
ヒートマップ風タグクラウドの設置手順
作業はシンプルです。
「PHPコードを追加」→「CSSコードを追加」→「表示したい場所にショートコードを追加」→「スマホ表示」の4STEPでヒートマップ風タグの設置は完了します。
これらのコードは、AIで作成したもので、環境によっては機能しないかもしれません。そのため、コードを追加する場合は注意してください。
念のためにバックアップを推奨します。
PHPコードを追加
まず、以下のPHPコードを 子テーマの functions.php に貼り付けてください。
※外観メニューに「テーマファイルエディター」が表示されない場合は、セキュリティプラグインの影響が考えられます。
たとえば、「Really Simple Security」では、設定項目にある「ファイルエディターの無効化」が「ON」になっていると、テーマファイルエディターが非表示になります。
この設定を「OFF」に変更することで、「テーマファイルエディター」が再び表示されるようになります。

PHPコード
// ヒートマップ型タグクラウドのショートコードを定義
function custom_tag_cloud_boxed_shortcode($atts) {
$atts = shortcode_atts( array(
'number' => 10, // 取得するタグ数(最大9個まで表示)
), $atts, 'custom_tag_cloud_boxed' );
$tags = get_tags( array(
'orderby' => 'count', // 使用頻度の多い順に取得
'order' => 'DESC',
'number' => $atts['number'],
'hide_empty' => true, // 投稿のないタグは除外
) );
if ( empty( $tags ) ) return '';
$html = '<div class="custom-tag-boxed-heatmap">';
foreach ( $tags as $i => $tag ) {
$rank = $i + 1; // タグの順位(1〜9)
if ( $rank > 9 ) break; // 最大9個まで表示
// 背景色を明度で変化(HSL)
$lightness = 15 + (($rank - 1) / 8) * 55; // 濃→薄
$bg_color = "hsl(200, 60%, {$lightness}%)";
// フォントサイズを順位で変化
if ($rank === 1) {
$font_size = 38;
} elseif ($rank === 2) {
$font_size = 26;
} else {
$font_size = 24 - (($rank - 3) / 6) * 16; // 3位〜9位で24→8に分布
}
// タグのHTML出力(リンク+クラス名+インラインスタイル)
$html .= '<a href="' . esc_url(get_tag_link($tag->term_id)) . '"
class="tag-box tag-' . $rank . '"
style="
background-color: ' . $bg_color . ';
font-size: ' . round($font_size, 2) . 'px;
"
title="' . esc_attr($tag->count) . ' 件の投稿">
<span>' . esc_html($tag->name) . '</span>
</a>';
}
$html .= '</div>';
return $html;
}
add_shortcode('custom_tag_cloud_boxed', 'custom_tag_cloud_boxed_shortcode');
PHPコード
以上です。
CSSコードを追加
次に、タグクラウドの見た目を整えるためにCSSコードを追加します。タグの人気順位に応じて、サイズや位置をきれいに並べて表示できるようにします。
※CSSとは、Webサイトの「見た目のルール」を指定するためのコードです。ここでは、タグの「人気順」に基づいて、大きさや配置を細かく制御していきます。
CSSコード
「外観→カスタマイズ→追加CSS」の手順で以下のコードを追加します。
/* ヒートマップ PC表示 */
.custom-tag-boxed-heatmap {
position: relative;
width: 840px;
height: 420px;
box-sizing: border-box;
overflow: hidden;
background: #f7f7f7;
}
.custom-tag-boxed-heatmap .tag-box {
position: absolute;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-weight: bold;
font-size: 16px;
text-decoration: none;
overflow: hidden;
border-radius: 6px;
padding: 0 6px;
box-sizing: border-box;
white-space: nowrap;
text-overflow: ellipsis;
transition: transform 0.2s, box-shadow 0.2s;
}
.custom-tag-boxed-heatmap .tag-box:hover {
transform: scale(1.05);
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}
.custom-tag-boxed-heatmap .tag-box span {
display: block;
max-width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/* === 各タグの位置とサイズ(840×420ベース) === */
/* 1位:420×420 */
.custom-tag-boxed-heatmap .tag-1 {
left: 0;
top: 0;
width: 420px;
height: 420px;
}
/* 2位:420×210 */
.custom-tag-boxed-heatmap .tag-2 {
left: 420px;
top: 0;
width: 420px;
height: 210px;
}
/* 3位:210×210 */
.custom-tag-boxed-heatmap .tag-3 {
left: 420px;
top: 210px;
width: 210px;
height: 210px;
}
/* 4位:210×105 */
.custom-tag-boxed-heatmap .tag-4 {
left: 630px;
top: 210px;
width: 210px;
height: 105px;
}
/* 5位:105×105 */
.custom-tag-boxed-heatmap .tag-5 {
left: 630px;
top: 315px;
width: 105px;
height: 105px;
}
/* 6位:105×52.5 */
.custom-tag-boxed-heatmap .tag-6 {
left: 735px;
top: 315px;
width: 105px;
height: 52.5px;
}
/* 7位:52.5×52.5 */
.custom-tag-boxed-heatmap .tag-7 {
left: 735px;
top: 367.5px;
width: 52.5px;
height: 52.5px;
}
/* 8位:52.5×26.25 */
.custom-tag-boxed-heatmap .tag-8 {
left: 787.5px;
top: 367.5px;
width: 52.5px;
height: 26.25px;
}
/* 9位:52.5×26.25 */
.custom-tag-boxed-heatmap .tag-9 {
left: 787.5px;
top: 393.75px;
width: 52.5px;
height: 26.25px;
}
CSSコード
以上です。
タグの配置
タグの順位ごとの位置とサイズです。
順位 | 表示位置(left / top) | サイズ(幅 × 高さ) |
---|---|---|
1位 | 左上:left: 0; top: 0 | 420px × 420px |
2位 | 右上:left: 420px; top: 0 | 420px × 210px |
3位 | 右中左:left: 420px; top: 210px | 210px × 210px |
4位 | 右中右上:left: 630px; top: 210px | 210px × 105px |
5位 | 右下左:left: 630px; top: 315px | 105px × 105px |
6位 | 右下中央:left: 735px; top: 315px | 105px × 52.5px |
7位 | 右下下左:left: 735px; top: 367.5px | 52.5px × 52.5px |
8位 | 右下下右上:left: 787.5px; top: 367.5px | 52.5px × 26.25px |
9位 | 右下下右下:left: 787.5px; top: 393.75px | 52.5px × 26.25px |
スマホ表示
スマホ表示でヒートマップが画面からはみ出してしまう問題を防ぐため、下記のCSSコードを追加して調整します。
このコードは、STEP2のCSSコードの下に追記してください。
/* ヒートマップ スマホ表示 */
@media screen and (max-width: 767px) {
.custom-tag-boxed-heatmap {
transform: scale(0.4);
transform-origin: top left;
width: 840px;
height: 420px;
overflow: hidden;
}
}
CSSコード
表示したい場所にショートコードを追加
記事やウィジェットなど、表示したい場所に以下のショートコードを貼り付けてください。
[custom_tag_cloud_boxed]
HTMLショートコード
以上で終了です。
おわりに
このように、タグクラウドは工夫次第で、さらに「魅せる導線」に変わります。
人気のタグを視覚的に強調し、読者の関心を誘導できるので、回遊率アップにもつながります。
コードが長く見えるかもしれませんが、手順通りにコピペすればswellでは動作するように作られています。
あなたのブログにも、ぜひ「ヒートマップ風のタグクラウド」を取り入れてみてください!
関連記事

コメント