私は github でブログをホストしていますが、Github ではカスタム プラグインが許可されていないため (jekyll ブートストラップもこれを試みます)、jekyll プラグインを含まないタグ リストをソートするソリューションが必要でした。サイズではなくタグ名で並べ替えているため、ここでの私の投稿は実際には質問に答えていません。このメソッドを適応させて、タグのサイズも文字列に出力し、さらに手の込んだ分割を行って、別の並べ替え順序を取得できます (ただし、面倒です)。
次のコードでこれを行うことができました。
{% capture tagString %}{% for tag in site.tags %}{{ tag[0] }}{% unless forloop.last %}|{% endunless %}{% endfor %}{% endcapture %}
{% assign tags = tagString | split: '|' | sort: 'downcase' %}
<div id="cloud">
{% for tag in tags %}
{% assign number = site.tags[tag].size %}
{% assign slug = tag | downcase | replace: ' ', '_' %}
<span class="{% if number == 1 %}small{% elsif number <= 5 %}medium{% elsif number <= 10 %}large{% else %}huge{% endif %}">
<a href="#tag-{{ slug }}">{{ tag | downcase }}</a>
</span>
{% endfor %}
</div>
|
タグの文字列を (セパレーターとして使用して) キャプチャし、それを使用して配列を作成するので、ちょっと奇妙です。その時点の後 (ループ内) としてタグを参照し、tag
そのタグを使用するサイトのリストをとして参照できますsite.tags[tag]
。
これをブログで使用しています:
https://github.com/kelsin/kelsin.github.io/blob/master/tags/index.html
コードの残りの部分は、タグ ページでタグ クラウドを作成するために選択した方法です。これが解決策を探している他の人に役立つことを願っています (プラグインなし)!