Skip to content

Commit ad2b528

Browse files
committed
Fix the numeric sort of trending tags size.
1 parent 062c27d commit ad2b528

File tree

1 file changed

+24
-15
lines changed

1 file changed

+24
-15
lines changed

_includes/trending-tags.html

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,24 +8,33 @@
88

99
{% assign MAX = 10 %}
1010

11-
{% capture tags_array %}
12-
{% for tag in site.tags %}
13-
{{ tag[1] | size }}::{{ tag[0] | replace: ' ', '-' }}
14-
{% endfor %}
15-
{% endcapture %}
11+
{% assign size_list = "" | split: "" %}
12+
{% assign tag_list = "" | split: "" %}
1613

17-
{% assign all_tags = tags_array | split: " " | sort | reverse %}
18-
{% assign count = 0 %}
14+
{% for tag in site.tags %}
15+
{% assign size = tag | last | size %}
16+
{% assign size_list = size_list | push: size %}
1917

20-
{% assign trending_tags = "" | split: "" %}
18+
{% assign tag_str = tag | first | replace: " ", "-" | append: "::" | append: size %}
19+
{% assign tag_list = tag_list | push: tag_str %}
20+
{% endfor %}
2121

22-
{% for iter in all_tags %}
23-
{% assign count = count | plus: 1 %}
24-
{% assign tag = iter | split: "::" | last %}
22+
{% assign size_list = size_list | sort | reverse %}
2523

26-
{% assign trending_tags = trending_tags | push: tag %}
24+
{% assign tag_list = tag_list | sort_natural %}
2725

28-
{% if count >= MAX %}
29-
{% break %}
30-
{% endif %}
26+
{% assign trending_tags = "" | split: "" %}
27+
28+
{% for size in size_list limit: MAX %}
29+
{% for tag_str in tag_list %}
30+
{% assign tag = tag_str | split: "::" %}
31+
{% assign tag_name = tag | first %}
32+
{% assign tag_size = tag | last | plus: 0 %}
33+
{% if tag_size == size %}
34+
{% unless trending_tags contains tag_name %}
35+
{% assign trending_tags = trending_tags | push: tag_name %}
36+
{% break %}
37+
{% endunless %}
38+
{% endif %}
39+
{% endfor %}
3140
{% endfor %}

0 commit comments

Comments
 (0)