jekyll-theme-CMS 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,19 @@
1
+ {% include header.html %} <!-- 所有文章头部 -->
2
+
3
+ <div id="bigDiv">
4
+ {% include topbar.html %}
5
+ {% include main.html %}
6
+ </div>
7
+
8
+
9
+ <!-- 绝对定位 导航条 右下角: 三个箭头而已. -->
10
+ <div id="arrowNav">
11
+ <span style="font-size: 25px; display: inline-block; transform: rotate(180deg);" id="leftBtn">➟</span>
12
+ <span style="font-size: 25px; display: inline-block; transform: rotate(270deg);" onclick="toTop()">➼</span>
13
+ <span style="font-size: 25px" id="rightBtn">➟</span>
14
+ </div>
15
+
16
+ {% include footer.html %} <!-- 所有文章尾部 -->
17
+
18
+
19
+
@@ -0,0 +1,817 @@
1
+ {% assign tags = "all" %}
2
+ {% for post in site.posts %}
3
+ {% for tag in post.tags %}
4
+ {% unless tags contains tag %}
5
+ {% capture tags %}{{ tags }}|{{ tag }}{% endcapture %}
6
+ {% endunless %}
7
+ {% endfor %}
8
+ {% endfor %}
9
+
10
+ {% assign alltags = tags | split: '|' %}
11
+ <ul class="tags">
12
+ {% for tag in alltags %}
13
+ <a href="javascript:;" data-rel="{{ tag }}" class="filter tag {% if tag == 'all' %}active{% endif %}" >{{ tag }}</a>
14
+ {% endfor %}
15
+ </ul>
16
+
17
+
18
+ <!-- 方法2 列出 tags -->
19
+
20
+
21
+
22
+
23
+ github_category_index.html
24
+
25
+ ---
26
+ layout: page
27
+ ---
28
+
29
+
30
+ <div class="posts-list">
31
+ {% for post in site.categories[page.category] %}
32
+ <article class="post-preview">
33
+ <a href="{{ post.url | prepend: site.baseurl }}">
34
+ <h2 class="post-title">{{ post.title }}</h2>
35
+
36
+ {% if post.subtitle %}
37
+ <h3 class="post-subtitle">
38
+ {{ post.subtitle }}
39
+ </h3>
40
+ {% endif %}
41
+ </a>
42
+
43
+ <p class="post-meta">
44
+ <!-- Posted on {{ post.date | date: "%B %-d, %Y" }} -->
45
+ Posted on {{ post.date | date: "%Y-%m-%d" }}
46
+ </p>
47
+
48
+ <div class="post-entry">
49
+ {{ post.content | truncatewords: 20 | strip_html | xml_escape}}
50
+ <a href="{{ post.url | prepend: site.baseurl }}" class="post-read-more">[Read&nbsp;More]</a>
51
+ </div>
52
+
53
+ </article>
54
+ {% endfor %}
55
+ </div>
56
+
57
+
58
+
59
+
60
+
61
+
62
+
63
+ github_tag_index.html
64
+
65
+ ---
66
+ layout: page
67
+ ---
68
+
69
+ <div class="posts-list">
70
+ {% for post in site.tags[page.tag] %}
71
+ <article class="post-preview">
72
+ <a href="{{ post.url | prepend: site.baseurl }}">
73
+ <h2 class="post-title">{{ post.title }}</h2>
74
+
75
+ {% if post.subtitle %}
76
+ <h3 class="post-subtitle">
77
+ {{ post.subtitle }}
78
+ </h3>
79
+ {% endif %}
80
+ </a>
81
+
82
+ <p class="post-meta">
83
+ <!-- Posted on {{ post.date | date: "%B %-d, %Y" }} -->
84
+ Posted on {{ post.date | date: "%Y-%m-%d" }}
85
+ </p>
86
+
87
+ <div class="post-entry">
88
+ {{ post.content | truncatewords: 20 | strip_html | xml_escape}}
89
+ <a href="{{ post.url | prepend: site.baseurl }}" class="post-read-more">[Read&nbsp;More]</a>
90
+ </div>
91
+
92
+ </article>
93
+ {% endfor %}
94
+ </div>
95
+
96
+
97
+
98
+ <ul class="posts">
99
+ {% for post in site.posts %}
100
+ {% if post.categories contains 'demography' %}
101
+ <li><span>{{ post.date | date_to_string }}</span> &raquo; <a href="{{ BASE_PATH }}{{ post.url }}">{{ post.title }}</a></li>
102
+ {% endif %}
103
+ {% endfor %}
104
+ </ul>
105
+
106
+
107
+
108
+
109
+
110
+
111
+ js 获取 liquid 变量方法:
112
+
113
+
114
+ 1. 先给 html里 那个变量加上个 id/或者class
115
+ 2. js 里 先定义变量 .
116
+ 3. 然后输出就可以了....
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+ {% capture tags %}
125
+ {% for tag in site.tags %}
126
+ {{ tag[0] }}
127
+ {% endfor %}
128
+ {% endcapture %}
129
+ {% assign sortedtags = tags | split:' ' | sort %}
130
+
131
+ {% for tag in sortedtags %}
132
+ <h3 id="{{ tag }}">{{ tag }}</h3>
133
+ <ul>
134
+ {% for post in site.tags[tag] %}
135
+ <li><a href="{{ post.url }}">{{ post.title }}</a></li>
136
+ {% endfor %}
137
+ </ul>
138
+ {% endfor %}
139
+
140
+
141
+
142
+
143
+
144
+ {% capture tags %}
145
+ {% for tag in site.tags %}
146
+ {{ tag[0] }}
147
+ {% endfor %}
148
+ {% endcapture %}
149
+ {% assign sortedtags = tags | split:' ' | sort %}
150
+ {% for tag in sortedtags %}
151
+ <a href="/tags/{{ tag }}/">{{ tag }}</a><br>
152
+ {% endfor %}
153
+ This will generate a list of links like this:
154
+
155
+ <ul>
156
+ <li><a href="/tags/.net/">.net</a></li>
157
+ <li><a href="/tags/authentication/">authentication</a></li>
158
+ <li><a href="/tags/backup/">backup</a></li>
159
+ </ul>
160
+
161
+
162
+ 逻辑操作
163
+
164
+ 如下例,可以通过条件语句调整输出结果,只有当 show_heading 为 true 时才显示 <h1>:
165
+
166
+ ---
167
+ heading: I like cupcakes
168
+ show_heading: true
169
+ ---
170
+ ...
171
+
172
+ {% if page.show_heading %}
173
+ <h1>{{ page.heading | upcase | truncate: 8 }}</h1>
174
+ {% endif %}
175
+
176
+ ...
177
+ 下例增加了 elsif 语句进行多个条件的判断,当 show_heading 不为真时,判断 heading 中是否包含 “cupcake”:
178
+
179
+ ---
180
+ heading: I like cupcakes
181
+ show_heading: false
182
+ ---
183
+ ...
184
+
185
+ {% if page.show_heading %}
186
+ <h1>{{ page.heading | upcase | truncate: 8 }}</h1>
187
+ {% elsif page.heading contains "cupcake" %}
188
+ <h1>I want cupcakes</h1>
189
+ {% else %}
190
+ <h1>I don't want cupcakes</h1>
191
+ {% endif %}
192
+
193
+ ...
194
+ 除了 if 外,Liquid 中的 for 循环也很简单:
195
+
196
+ ---
197
+ heading: I like cupcakes
198
+ show_heading: false
199
+ cupcakes:
200
+ - chocolate
201
+ - lemon
202
+ - strawberry
203
+ ---
204
+ ...
205
+ <ul>
206
+
207
+ {% for cupcake in page.cupcakes %}
208
+ <li>{{ cupcake }}</li>
209
+ {% endfor %}
210
+
211
+ </ul>
212
+ ...
213
+ 上面,将 front matter 中定义的 “cupcakes” 循环输出到列表中。另外 case 也是支持的:
214
+
215
+ <p class="rating">
216
+
217
+ {% case cupcake.rating %}
218
+ {% when 1 %}
219
+ <img src="/images/rating/sick.png"/>
220
+ {% when 2 %}
221
+ <img src="/images/rating/unhappy.png"/>
222
+ {% when 3 %}
223
+ <img src="/images/rating/ok.png"/>
224
+ {% when 4 %}
225
+ <img src="/images/rating/happy.png"/>
226
+ {% when 5 %}
227
+ <img src="/images/rating/super_happy.png"/>
228
+ {% endcase %}
229
+
230
+ </p>
231
+ LIQUID 中的 FILTER
232
+
233
+ 下表是 Liquid 中常用的 filter,你也可以访问 Jekyll Cheat Sheet 查看所有可用的 filter 及样例。
234
+
235
+ filter 输出
236
+ {{ "cupcake" | prepend: "chocolate " }} chocolate cupcake
237
+ {{ "lemon" | append: " cake" }} lemon cake
238
+ {{ "i like cupcakes" | capitalize }} I like cupcakes
239
+ {{ "BakeryStore" | downcase }} bakerystore
240
+ {{ "apple pie" | upcase }} APPLE PIE
241
+ {{ "muffin&cupcake?" | cgi_escape }} muffin%26cupcake%3F
242
+ {{ "<h1>Banana Split</h1>" | escape }} <h1>Banana Split</h1>
243
+ {{ "blueberry muffin.html" | slugify }} blueberry-muffin-html
244
+ {{ "<h1>Greentea cheesecake</h1>" | strip_html }} Greentea cheesecake
245
+ {{ "**Sour dough** bread" | markdownify }} Sour dough bread
246
+ {{ "I really really like cupcakes" | remove_first: 'really' }} I really like cupcakes
247
+ {{ "I really really like cupcakes" | remove: 'really' }} I like cupcakes
248
+ {{ "I really really like cupcakes" | replace_first: "really", "truly" }} I truly really like cupcakes
249
+ {{ "I really really like cupcakes" | replace: "really", "truly" }} I truly truly like cupcakes
250
+ {{ "Carrot cake" | size }} 11
251
+ {{ "Peanut butter cheesecake" | number_of_words }} 3
252
+ {{ "Souffle" | slice: 0 }} S
253
+ {{ "Souffle" | slice: 1 }} o
254
+ {{ "Souffle" | slice: -2 }} l
255
+ {{ "Souffle" | slice: 2,4 }} uffl
256
+ {{ "apple,banana,carrot" | split:"," | jsonify }} [“apple”,”banana”,”carrot”]
257
+ {{ "The freshest bread in San Francisco" | truncate: 15 }} The freshest…
258
+ {{ "Who ate all the cupcakes?" | truncatewords: 3 }} Who ate all…
259
+
260
+
261
+
262
+
263
+ 上面这个网页中,不同图片使用了不同的 filter 样式,我们可以结合 Liquid 中的 cycle 和 for 循环实现:
264
+
265
+ ---
266
+ layout: page
267
+ title: Muffins
268
+ ---
269
+ <h1>Our cupcakes</h1>
270
+
271
+ <div class="cupcakes">
272
+
273
+ {% for cupcake in site.cupcakes %}
274
+ <div class="cupcake">
275
+ <div class="image">
276
+ <img src="{{ cupcake.image_path }}" alt="{{ cupcake.type }}" style="-webkit-filter: {% cycle "grayscale", "sepia", "invert" %}(100%)" />
277
+ </div>
278
+ <h2>{{ cupcake.type }}</h2>
279
+ <p>{{ cupcake.description }}</p>
280
+ </div>
281
+ {% endfor %}
282
+
283
+ </div>
284
+ 通过 forloop.index 还能获得当前循环的次数:
285
+
286
+ ...
287
+ <h2>{{ forloop.index }}. {{ cupcake.type }}</h2>
288
+
289
+
290
+
291
+
292
+
293
+
294
+
295
+ 如果要从 “0” 还是计数,可以改为:
296
+
297
+ ...
298
+ <h2>{{ forloop.index0 }}. {{ cupcake.type }}</h2>
299
+ ...
300
+ 另外,可以使用 reversed 使 for 循环逆向进行:
301
+
302
+ ...
303
+
304
+ {% for cupcake in site.cupcakes reversed %}
305
+
306
+ ...
307
+ 要限制 for 循环的输出个数可以使用 limit,而要跳过前 x 个输出可以使用 offset:
308
+
309
+ ...
310
+
311
+ {% for cupcake in site.cupcakes reversed limit: 3 offset: 3 %}
312
+
313
+ ...
314
+
315
+
316
+
317
+
318
+
319
+
320
+
321
+
322
+
323
+ {{testpara}}
324
+
325
+ {% assign xujian = site.tags %}
326
+
327
+ {% capture test %}
328
+ {{ "site.tags" | append: ".Jekyll" }}
329
+ {% endcapture %}
330
+ test: {{ test }}
331
+ {% for cab in test %}
332
+ {{cab.title}}
333
+ {% endfor %}
334
+
335
+ <hr> 哈哈
336
+
337
+ {% for ca in site.tags.AJAX %}
338
+ {{ca.title}}
339
+ {% endfor %}
340
+ <hr> 爸爸
341
+
342
+ <hr> xx
343
+
344
+
345
+
346
+ <ul class="tagsLink">
347
+ <li class="tagLink" data-filter="all">全部文章</li>
348
+ {% for tagName in post.tags.AJAX %}
349
+ <a href="{{ tagName.url | prepend: site.baseurl }}">
350
+ <li class="tagLink" data-filter="{{ tagName | first }}">
351
+ {{ tagName | first }}
352
+ </li>
353
+ {% endfor %}
354
+ </ul>
355
+
356
+ <br> 哈哈哈 <br>
357
+
358
+
359
+
360
+
361
+
362
+
363
+ <!--
364
+ 这里 要改的就是 .code 改成别的
365
+ 给这行加个 id标签xx 好用JavaScript 来改.
366
+ 然后就是js了
367
+ 别人用的 是 data-filter..... 然后js里用 data.filter....
368
+
369
+ <ul id="sidebar-tags">
370
+ <li class="sidebar-tag active" data-filter="all">全部文章</li>
371
+ {% for tag in site.tags %}
372
+ <li class="sidebar-tag" data-filter="{{ tag | first }}">{{ tag | first }}</li>
373
+ {% endfor %}
374
+ </ul>
375
+
376
+
377
+ // Tags Filter
378
+ $('#sidebar-tags').on('click', '.sidebar-tag', function() {
379
+ var filter = $(this).data('filter');
380
+ if (filter === 'all') {
381
+ toc.fadeIn(350);
382
+ } else {
383
+ toc.hide();
384
+ $('.toc-link[data-tags~=' + filter + ']').fadeIn(350);
385
+ }
386
+ $(this).addClass('active').siblings().removeClass('active');
387
+ });
388
+
389
+
390
+
391
+
392
+ -->
393
+
394
+
395
+
396
+
397
+
398
+ <p class="tagFor1"> for tagName in site.tags </p>
399
+ <p class="tagFor2" > {{ tagName | first }} </p>
400
+ <p class="tagFor3">endfor</p>
401
+
402
+
403
+
404
+
405
+
406
+ if(window.location.hash) {
407
+ var tag = window.location.hash.split('#')[1];
408
+ console.log(tag);
409
+ // 丫的 这是 一个函数啊... 而不是 jquery的 那个filter??
410
+ filter(tag);
411
+
412
+ }
413
+
414
+
415
+
416
+
417
+
418
+
419
+
420
+
421
+ <hr> 所有标签 ✔︎ <hr>
422
+ <ul class="blog-tags-list">
423
+ {% assign sorted_tags = site.tags | sort %}
424
+
425
+ {% for tag in sorted_tags %}
426
+ {% assign tt = tag | first %}
427
+ {% assign postst = tag | last %}
428
+ <li class="blog-tag-item" id="{{ tt }}-item">
429
+ <a href onclick="filter('{{ tt }}'); return false;">{{ tt }}</a>
430
+ </li>
431
+ {% endfor %}
432
+ </ul>
433
+
434
+
435
+ {% for tag in site.tags %}
436
+ {% assign t = tag | first %}
437
+ {% assign posts = tag | last %}
438
+ <div class="blog-list-container hidden" id="{{ t }}-container">
439
+ <ul class="blog-list">
440
+ {% for post in posts %}
441
+ {% if post.tags contains t %}
442
+ <li>
443
+ <span class="blog-item-date">{{ post.date | date: "%d %b %Y" }}</span>
444
+ <a href="{{ post.url }}">{{ post.title }}</a>
445
+ </li>
446
+ {% endif %}
447
+ {% endfor %}
448
+ </ul>
449
+
450
+ {% assign numPosts = posts | size %}
451
+ {% if numPosts == 1 %}
452
+ <p>{{ posts | size }} post containing tag <b>{{ t }}</b></p>
453
+ {% else %}
454
+ <p>{{ posts | size }} posts containing tag <b>{{ t }}</b></p>
455
+ {% endif %}
456
+ </div>
457
+ {% endfor %}
458
+
459
+
460
+
461
+
462
+
463
+
464
+
465
+
466
+ <hr> coe类标签✔︎ <hr>
467
+ {% for someCate in site.categories.coe %}
468
+ {{ someCate.tags }} <br>
469
+ {% endfor %}
470
+ <hr><br><br>
471
+
472
+
473
+
474
+
475
+
476
+
477
+ <hr> 所有类✔︎ testing <hr>
478
+
479
+ <ul class="cateUL">
480
+
481
+ {% for cateDiv in site.categories %}
482
+ 某分类✔︎: {{ cateDiv.first }} <br>
483
+
484
+ 所有标签✔︎: <br>
485
+ {% for sometag in site.tags %}
486
+ {{sometag.first}}
487
+ {% endfor %} <br>
488
+
489
+
490
+
491
+ <!-- 循环输出 所有分类 ✔︎ -->
492
+
493
+
494
+ <li class="cateLI" data-catefilter="{{cateDiv.first }}">
495
+
496
+ <a href="#" class="cateLIa">
497
+ {% capture haha %}
498
+ {{ site.categories }}
499
+ {% endcapture%}
500
+ 类数组✔︎: <br> {{ site.categories }} <br>
501
+ <!-- haha : {"code"=>[#, #], "code5"=>[#], "code2"=>[#], "jekyll"=>[#]}
502
+ 某文章有两个大类 就会出现两个# 所以用,号分割不准确.用 => 来分割最好.
503
+ -->
504
+
505
+ 类数量✔︎: {{ site.categories | split: "," | size }} <br>
506
+
507
+
508
+
509
+
510
+
511
+ </a>
512
+ </li> <br>
513
+
514
+ {% endfor %}
515
+ </ul> <hr><br><br>
516
+
517
+
518
+
519
+
520
+
521
+
522
+
523
+
524
+ <hr> 所有分类+文件名+url ✔︎ <hr>
525
+ {% for category in site.categories %}
526
+ <span>分类:{{ category | first }}</span>
527
+ <span>文章数:{{ category | last | size }}</span>
528
+ <ul class="arc-list">
529
+ {% for post in category.last %}
530
+ <li>{{ post.date | date:"%d/%m/%Y"}}
531
+ <a href="{{ post.url }}">{{ post.title }}</a>
532
+ </li>
533
+ {% endfor %}
534
+ </ul> <br>
535
+ {% endfor %}
536
+ <hr><br><br>
537
+
538
+
539
+
540
+
541
+ <hr> 各签各文章数 方法1 ✔︎ <hr>
542
+ {% for tag in site.tags %}
543
+ {% assign TagName = tag | first %}
544
+ {% assign TagNum = tag | last %}
545
+ {{TagName | downcase | replace:" ","-" }} has {{ TagNum | size }} posts <br>
546
+ {% endfor %}
547
+ <hr><br><br>
548
+
549
+ <hr> 各签各文章数 方法2 ✔︎ <hr>
550
+ {% for tag in site.tags %}
551
+ <a href="#{{ tag[0] }}">{{ tag[0] }}</a> <sup>{{ tag[1].size }}</sup>
552
+ {% endfor %}
553
+ <hr><br><br>
554
+
555
+ <hr> code类标签(单标签适用)✔︎ <hr>
556
+ {% for someCate in site.categories.code %}
557
+ {{ someCate.tags }} <br>
558
+ {% endfor %}
559
+ <hr><br><br>
560
+
561
+ <hr> code类标签(多标签适用)✗ <hr>
562
+ {% for someCate in site.categories.code %}
563
+ {{ someCate.tags }} <br>
564
+ {% endfor %}
565
+ <hr><br><br>
566
+
567
+
568
+
569
+ <hr> AJAX标签文章名+url ✔︎ <hr>
570
+ {% for ca in site.tags.AJAX %}
571
+ {{ ca.title }}<br>
572
+ {{ ca.url }} <br>
573
+ {% endfor %}
574
+ <hr><br><br>
575
+
576
+
577
+ <hr> Misc标签文章名+url ✔︎ <hr>
578
+ {% for ca in site.tags.Misc %}
579
+ {{ ca.title }} <br>
580
+ {{ ca.url }} <br>
581
+ {% endfor %}
582
+ <hr><br><br>
583
+
584
+
585
+ <hr> 各标签文章名+url ✔︎ <hr>
586
+ <ul class="listing">
587
+ {% for tag in site.tags %}
588
+ <li class="listing-seperator" id="{{ tag[0] }}">{{ tag[0] }}</li>
589
+ {% for post in tag[1] %}
590
+ <li class="listing-item">
591
+ <time >{{ post.date | date:"%Y-%m-%d" }}</time>
592
+ <a href="{{ post.url }}" >{{ post.title }}</a>
593
+ </li>
594
+ {% endfor %}
595
+ {% endfor %}
596
+ </ul>
597
+
598
+
599
+
600
+
601
+ <!--
602
+
603
+ 获取 code 类的长度...
604
+ html 存数据. css 获取数据 然后用 capture 捕获数据 给liquid用.
605
+
606
+ 一旦 jekyll 开始编译 . 就可以获得几乎所有数据.
607
+ 但是 怎么把数据 保存出来. 然后在点击标签/类的时候 提取数据就可以了.
608
+ 怎么保存数据.
609
+ 先 定义一个数组. 定义变量试试.
610
+ 然后 push 进去.... push.
611
+
612
+
613
+
614
+ 怎么循环出 某标签下的所有.
615
+
616
+ 分类以及确定.
617
+ 分类下 第一个标签也有了.
618
+ 第二个标签 怎么循环出来.
619
+
620
+ 也就是某类下的 所有标签.
621
+ <hr> code类标签(单标签适用)✔︎ <hr>
622
+ {% for someCate in site.categories.code %}
623
+ {{ someCate.tags }} <br>
624
+ {% endfor %}
625
+ <hr><br><br>
626
+
627
+
628
+ 怎么把一个变量 输入到 html中.....
629
+
630
+ 列出所有的 大类.
631
+ 把大类 储存进一个数组
632
+
633
+ 然后再遍历 数组里面的每一个值.
634
+
635
+
636
+ -->
637
+
638
+
639
+
640
+
641
+
642
+
643
+ <hr> code类 所有文件名✔︎+URL <hr>
644
+ {% for ca in site.categories.code %}
645
+ <a href="{{ca.url}}"> {{ ca.title }} </a>
646
+ {% endfor %}
647
+ <hr><br><br>
648
+
649
+ <hr> 所有标签✔︎ <hr>
650
+ {% for tag in site.tags %}
651
+ {{tag | first }} <br>
652
+ {% endfor %}
653
+ <hr><br><br>
654
+
655
+
656
+
657
+
658
+ <!--
659
+ 解析:
660
+
661
+ 显示所有 分类.
662
+
663
+ 给每一个分类 一个特别的id: 自己的分类名-cateItem
664
+
665
+ 然后 一旦点击这个分类 就执行一个 函数: cateFilter()
666
+ 这个函数会把当前点击的 分类名 当作参数 传入到js 函数里面进行 操作.
667
+
668
+
669
+
670
+
671
+
672
+
673
+
674
+ -->
675
+
676
+
677
+
678
+
679
+
680
+
681
+ tagDiv:
682
+ div1: 全部标签 class: tags-container; id: all-tagsContainer
683
+ div2: 某类标签 class: tags-container hidden; id: 某类-tagsContainer.
684
+
685
+ 全部标签.点击 触发 对应的tag. 隐藏filename 下 所有的 blog-list-container . 显示某签-container .
686
+
687
+
688
+ filenameDiv:
689
+ div1: 全部文章名 class: blog-list-container; id: all-container
690
+ div2: 某签文章名 class: blog-list-container hidden; id: 某签-container
691
+
692
+
693
+ {% assign finalTags = "all" %}
694
+ {% for cate in site.categories %} <!-- 遍历出所有的大类. -->
695
+ {% assign Ca = cate | first %} <!-- Ca 是分类名. -->
696
+ {% assign PP = cate | last %} <!-- PP 是该类下的所有数据集合... -->
697
+
698
+ <div class="tagDiv2-catetags" id="{{Ca}}-cate"> <!-- 给每个分类一个ID -->
699
+ {% for A in PP %}
700
+ {% if A.categories contains Ca %}
701
+ {% unless finalTags contains A.tags %}
702
+ {% capture finalTags %}
703
+ {{ finalTags }}|{{ A.tags }}
704
+ {% endcapture %}
705
+ {% endunless %}
706
+
707
+ <div class="tagDiv3-catetags" id="{{A.tags}}-cate">
708
+ <a href onclick="filter('{{ t }}'); return false;">
709
+ div2:{{ A.tags }}
710
+ </a>
711
+ </div> <br>
712
+ {% endif %}
713
+ {% endfor %}
714
+ </div>
715
+ {% endfor %}
716
+
717
+
718
+
719
+
720
+ {% for cate in site.categories %} <!-- 遍历出所有的大类. -->
721
+ {% assign Ca = cate | first %} <!-- Ca 是分类名. -->
722
+ {% assign PP = cate | last %} <!-- PP 是该类下的所有文章集合... -->
723
+
724
+ <div class="tagDiv2-catetags" id="{{Ca}}-cate"> <!-- 给每个分类一个ID -->
725
+ {% for A in PP %} <!-- 遍历每篇文章中的数据 -->
726
+ {% if A.categories contains Ca %} <!-- 如果这篇文章yml信息.包含当前分类 -->
727
+
728
+ <div class="tagDiv3-catetags" id="{{A.tags}}-cate">
729
+ <a href onclick="filter('{{ t }}'); return false;">
730
+ div2:{{ A.tags }}<br> <!-- 那么就输出这篇文章的 标签. -->
731
+
732
+ </a>
733
+ </div> <br>
734
+
735
+
736
+
737
+ {% capture capturedTag %}
738
+ {{A.tags}}
739
+ {% endcapture %}
740
+ <!-- 捕获每次遍历出来的 tags. 这里还是有重复的. 要先过滤重复的.应为你是根据文章来过滤的. 如果 遍历出所有tag先. 然后 如果tag下的文章 -->
741
+
742
+ {% endif %}
743
+ {% endfor %}
744
+ </div>
745
+ {% endfor %}
746
+
747
+
748
+
749
+
750
+
751
+
752
+ {% for A in site.categories %} <!-- 循环处理所有的大类. -->
753
+ {% assign A1 = A | first %} <!-- 开始处理一个个大类 -->
754
+ <hr>循环类:{{A1}}<br>
755
+ {% for B in site.tags %} <!-- 循环处理所有标签. -->
756
+ {% assign B1 = B | first %} <!-- 开始处理一个标签. -->
757
+ {% assign B2 = B | last %} <!-- 第一个标签.的所有文章 -->
758
+ {% for C in B2 %} <!-- 遍历 第一个标签下的所有文章 -->
759
+ {% capture xxoo %}
760
+ {% if C.categories contains A1 %}
761
+ {{ B1 }}
762
+ {% endif %}
763
+ {% endcapture %}
764
+ {% endfor %} <!-- 结束第一个标签下. 所有文章的处理 -->
765
+ {{ xxoo }} <!-- 这个就是当前类下的 标签!!!!!! -->
766
+ {% endfor %} <!-- 结束第一个大类下的. 所有标签的处理 -->
767
+ {% endfor %}
768
+
769
+ ★★★★★ 这段可用. 每个类下 的标签.
770
+
771
+
772
+
773
+
774
+ <div class="tagDiv3-catetags" id="{{A.tags}}-cate">
775
+ <a href onclick="filter('{{ t }}'); return false;">
776
+
777
+ {% unless xxoo == '' %}
778
+ div2:{{xxoo}}<br>
779
+ {% endunless %}
780
+
781
+
782
+ </a>
783
+ </div> <br>
784
+
785
+
786
+
787
+
788
+
789
+
790
+ {% for A in site.categories %} <!-- 循环处理所有的大类. -->
791
+ {% assign A1 = A | first %} <!-- 开始处理一个个大类 -->
792
+ <div class="tagDiv2-catetags" id="{{A1}}-cate">
793
+ <!-- <hr>循环类:{{A1}} -->
794
+ {% for B in site.tags %} <!-- 循环处理所有标签. -->
795
+ {% assign B1 = B | first %} <!-- 开始处理一个标签. -->
796
+ {% assign B2 = B | last %} <!-- 第一个标签.的所有文章 -->
797
+ {% for C in B2 %} <!-- 遍历 第一个标签下的所有文章 -->
798
+ {% capture xxoo %}
799
+ {% if C.categories contains A1 %}
800
+ {{ B1 }}
801
+ {% endif %}
802
+ {% endcapture %}
803
+ {% endfor %} <!-- 结束第一个标签下. 所有文章的处理 -->
804
+ <div class="tagDiv3-catetags" id="{{B1}}-cate">
805
+ <a href onclick="filter('{{ xxoo }}'); return false;">
806
+ {% unless xxoo == '' %}
807
+ <span class="delEmptyrow-C"; id="{{xxoo}}-id">{{xxoo}}</span>
808
+ {% endunless %}
809
+ </a>
810
+ </div>
811
+ {% endfor %} <!-- 结束第一个大类下的. 所有标签的处理 -->
812
+ </div>
813
+ {% endfor %}
814
+
815
+
816
+
817
+