hexo-theme-solitude 1.1.3 → 1.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.
- package/LICENSE +674 -19
- package/_config.yml +244 -193
- package/languages/en-US.yml +1 -0
- package/languages/zh-CN.yml +8 -8
- package/layout/404.pug +24 -0
- package/layout/archive.pug +11 -0
- package/layout/category.pug +16 -0
- package/layout/includes/console.pug +42 -0
- package/layout/includes/footer.pug +71 -0
- package/layout/includes/head/config.pug +79 -0
- package/layout/includes/head/pwa.pug +59 -0
- package/layout/includes/head.pug +29 -0
- package/layout/includes/header.pug +4 -0
- package/layout/includes/inject/body.pug +68 -0
- package/layout/{partial/compoment/inject/head.ejs → includes/inject/head.pug} +61 -35
- package/layout/includes/layout.pug +35 -0
- package/layout/{partial/loading.ejs → includes/loading.pug} +19 -17
- package/layout/includes/mixins/articleSort.pug +14 -0
- package/layout/includes/mixins/pagination.pug +8 -0
- package/layout/includes/nav.pug +22 -0
- package/layout/includes/page/about.pug +10 -0
- package/layout/includes/page/categories.pug +8 -0
- package/layout/includes/page/default.pug +2 -0
- package/layout/includes/page/echarts.pug +7 -0
- package/layout/includes/page/equipment.pug +3 -0
- package/layout/includes/page/links.pug +35 -0
- package/layout/includes/page/moments.pug +5 -0
- package/layout/includes/page/rss.pug +22 -0
- package/layout/includes/page/says.pug +20 -0
- package/layout/includes/page/tags.pug +8 -0
- package/layout/includes/page/tlink.pug +9 -0
- package/layout/includes/recent-posts.pug +9 -0
- package/layout/includes/sidebar.pug +17 -0
- package/layout/includes/widgets/aside/aside.pug +18 -0
- package/layout/includes/widgets/aside/asideAllInfo.pug +8 -0
- package/layout/includes/widgets/aside/asideArchive.pug +9 -0
- package/layout/includes/widgets/aside/asideFlipCard.pug +5 -0
- package/layout/includes/widgets/aside/asideHistory.pug +8 -0
- package/layout/includes/widgets/aside/asideInfoCard.pug +22 -0
- package/layout/includes/widgets/aside/asideNewestPost.pug +16 -0
- package/layout/includes/widgets/aside/asidePower.pug +19 -0
- package/layout/includes/widgets/aside/asideSwitch.pug +26 -0
- package/layout/includes/widgets/aside/asideTag.pug +11 -0
- package/layout/includes/widgets/aside/asideToc.pug +5 -0
- package/layout/includes/widgets/aside/asideWebInfo.pug +40 -0
- package/layout/includes/widgets/aside/asideWelcome.pug +12 -0
- package/layout/includes/widgets/home/banner.pug +16 -0
- package/layout/includes/widgets/home/bbTimeList.pug +8 -0
- package/layout/includes/widgets/home/categoryBar.pug +10 -0
- package/layout/includes/widgets/home/categoryGroup.pug +9 -0
- package/layout/includes/widgets/home/hometop.pug +9 -0
- package/layout/includes/widgets/home/postList.pug +26 -0
- package/layout/includes/widgets/home/rencentPost.pug +26 -0
- package/layout/includes/widgets/home/topGroup.pug +27 -0
- package/layout/includes/widgets/nav/left.pug +10 -0
- package/layout/includes/widgets/nav/menu.pug +16 -0
- package/layout/includes/widgets/nav/right.pug +23 -0
- package/layout/includes/widgets/page/about/authorinfo.pug +12 -0
- package/layout/includes/widgets/page/about/award.pug +34 -0
- package/layout/includes/widgets/page/about/contentinfo.pug +38 -0
- package/layout/includes/widgets/page/about/hobbies.pug +33 -0
- package/layout/includes/widgets/page/about/motto.pug +19 -0
- package/layout/includes/widgets/page/about/other.pug +61 -0
- package/layout/includes/widgets/page/about/personalities.pug +16 -0
- package/layout/includes/widgets/page/about/skillsinfo.pug +41 -0
- package/layout/includes/widgets/page/banner.pug +14 -0
- package/layout/includes/widgets/page/equipment/content.pug +23 -0
- package/layout/includes/widgets/page/links/banner.pug +30 -0
- package/layout/includes/widgets/page/links/linksCard.pug +18 -0
- package/layout/includes/widgets/page/links/linksItem.pug +14 -0
- package/layout/includes/widgets/page/moments/angle.pug +24 -0
- package/layout/includes/widgets/page/moments/index.pug +18 -0
- package/layout/includes/widgets/page/says/saysBottom.pug +11 -0
- package/layout/includes/widgets/page/says/saysContent.pug +6 -0
- package/layout/includes/widgets/page/says/saysFunction.pug +10 -0
- package/layout/includes/widgets/page/says/saysMeta.pug +7 -0
- package/layout/includes/widgets/post/award.pug +48 -0
- package/layout/includes/widgets/post/copyright.pug +27 -0
- package/layout/includes/widgets/post/postMeta.pug +55 -0
- package/layout/includes/widgets/post/postNav.pug +25 -0
- package/layout/includes/widgets/post/wave.pug +9 -0
- package/layout/includes/widgets/randomlink.pug +32 -0
- package/layout/includes/widgets/rightside/index.pug +74 -0
- package/layout/includes/widgets/third-party/comments/comment.pug +14 -0
- package/layout/includes/widgets/third-party/comments/gitalk.pug +0 -0
- package/layout/{partial/compoment/third-party/comments/twikoo.ejs → includes/widgets/third-party/comments/twikoo.pug} +8 -9
- package/layout/includes/widgets/third-party/comments/valine.pug +0 -0
- package/layout/includes/widgets/third-party/music.pug +3 -0
- package/layout/includes/widgets/third-party/pjax.pug +30 -0
- package/layout/includes/widgets/third-party/search/algolia-search.pug +14 -0
- package/layout/includes/widgets/third-party/search/index.pug +7 -0
- package/layout/includes/widgets/third-party/search/local-search.pug +13 -0
- package/layout/index.pug +20 -0
- package/layout/page.pug +32 -0
- package/layout/post.pug +43 -0
- package/layout/tag.pug +19 -0
- package/package.json +4 -4
- package/scripts/event/page.js +20 -2
- package/scripts/filter/checkThemeConfig.js +0 -1
- package/scripts/filter/randomPosts.js +0 -1
- package/scripts/helper/{charts.js → echarts.js} +27 -28
- package/scripts/helper/stylus.js +23 -0
- package/scripts/tags/bvideo.js +1 -36
- package/source/css/_comment/index.styl +121 -0
- package/source/css/_comment/twikoo.styl +515 -0
- package/source/css/_extra/console.styl +354 -0
- package/source/css/_extra/rightmenu.styl +83 -0
- package/source/css/_global/animation.css +756 -0
- package/source/css/_global/function.styl +83 -0
- package/source/css/_global/index.styl +120 -0
- package/source/css/_global/var.styl +1 -0
- package/source/css/_layout/articleSort.styl +199 -0
- package/source/css/_layout/base.styl +392 -0
- package/source/css/_layout/footer.styl +359 -0
- package/source/css/_layout/header.styl +1331 -0
- package/source/css/_layout/index.styl +293 -0
- package/source/css/_layout/sidebar.styl +226 -0
- package/source/css/_mode/index.styl +52 -0
- package/source/css/_page/about.styl +835 -0
- package/source/css/_page/category.styl +141 -0
- package/source/css/_page/equipment.styl +101 -0
- package/source/css/_page/error.styl +161 -0
- package/source/css/_page/home.styl +58 -0
- package/source/css/_page/homeTop.styl +1035 -0
- package/source/css/_page/index.styl +131 -0
- package/source/css/_page/link.styl +433 -0
- package/source/css/_page/moment.styl +179 -0
- package/source/css/_page/rss.styl +87 -0
- package/source/css/_page/says.styl +347 -0
- package/source/css/_page/tag.styl +56 -0
- package/source/css/_post/commentBarrage.styl +149 -0
- package/source/css/_post/externalTags.styl +694 -0
- package/source/css/_post/highlight.styl +96 -0
- package/source/css/_post/index.styl +935 -0
- package/source/css/_post/pagination.styl +467 -0
- package/source/css/_post/postContent.styl +957 -0
- package/source/css/_post/relatedPost.styl +160 -0
- package/source/css/_post/reward.styl +217 -0
- package/source/css/_search/algolia-search.styl +154 -0
- package/source/css/_search/local-search.styl +131 -0
- package/source/css/_widgets/aside/allinfo.styl +134 -0
- package/source/css/_widgets/aside/flip.styl +68 -0
- package/source/css/_widgets/aside/history.styl +35 -0
- package/source/css/_widgets/aside/index.styl +156 -0
- package/source/css/_widgets/aside/info.styl +263 -0
- package/source/css/_widgets/aside/newPost.styl +55 -0
- package/source/css/_widgets/aside/power.styl +90 -0
- package/source/css/_widgets/aside/toc.styl +85 -0
- package/source/css/_widgets/aside/welcome.styl +14 -0
- package/source/css/_widgets/index.styl +3 -0
- package/source/css/index.styl +40 -0
- package/source/js/commentBarrage.js +8 -5
- package/source/js/extend/console/comment.js +60 -63
- package/source/js/extend/covercolor/local.js +1 -1
- package/source/js/extend/search/algolia-search.js +151 -134
- package/source/js/extend/search/local-search.js +137 -162
- package/source/js/main.js +655 -505
- package/source/js/utils.js +168 -145
- package/layout/404.ejs +0 -34
- package/layout/archive.ejs +0 -10
- package/layout/category.ejs +0 -18
- package/layout/index.ejs +0 -20
- package/layout/layout.ejs +0 -30
- package/layout/page/about.ejs +0 -15
- package/layout/page/categories.ejs +0 -12
- package/layout/page/circle.ejs +0 -5
- package/layout/page/echarts.ejs +0 -1
- package/layout/page/equipment.ejs +0 -2
- package/layout/page/links.ejs +0 -46
- package/layout/page/page.ejs +0 -3
- package/layout/page/rss.ejs +0 -39
- package/layout/page/says.ejs +0 -17
- package/layout/page/tags.ejs +0 -12
- package/layout/page/tlink.ejs +0 -11
- package/layout/page.ejs +0 -45
- package/layout/partial/body.ejs +0 -7
- package/layout/partial/compoment/about/authorinfo.ejs +0 -18
- package/layout/partial/compoment/about/award.ejs +0 -59
- package/layout/partial/compoment/about/contentinfo.ejs +0 -33
- package/layout/partial/compoment/about/hobbies.ejs +0 -53
- package/layout/partial/compoment/about/motto.ejs +0 -17
- package/layout/partial/compoment/about/other.ejs +0 -76
- package/layout/partial/compoment/about/personalities.ejs +0 -11
- package/layout/partial/compoment/about/skillsinfo.ejs +0 -62
- package/layout/partial/compoment/aside/aside.ejs +0 -28
- package/layout/partial/compoment/aside/asideAllInfo.ejs +0 -6
- package/layout/partial/compoment/aside/asideArchive.ejs +0 -11
- package/layout/partial/compoment/aside/asideFlipCard.ejs +0 -72
- package/layout/partial/compoment/aside/asideHistory.ejs +0 -49
- package/layout/partial/compoment/aside/asideInfoCard.ejs +0 -39
- package/layout/partial/compoment/aside/asideNewestPost.ejs +0 -31
- package/layout/partial/compoment/aside/asidePower.ejs +0 -31
- package/layout/partial/compoment/aside/asideSwitch.ejs +0 -41
- package/layout/partial/compoment/aside/asideTag.ejs +0 -5
- package/layout/partial/compoment/aside/asideToc.ejs +0 -11
- package/layout/partial/compoment/aside/asideWebInfo.ejs +0 -60
- package/layout/partial/compoment/aside/asideWelcome.ejs +0 -33
- package/layout/partial/compoment/circle/angle.ejs +0 -26
- package/layout/partial/compoment/circle/banner.ejs +0 -11
- package/layout/partial/compoment/circle/content.ejs +0 -19
- package/layout/partial/compoment/dorakika/rightmenu.ejs +0 -100
- package/layout/partial/compoment/equipment/list.ejs +0 -37
- package/layout/partial/compoment/home/homeCategoryBar.ejs +0 -11
- package/layout/partial/compoment/home/postList.ejs +0 -37
- package/layout/partial/compoment/hometop/bbTimeList.ejs +0 -15
- package/layout/partial/compoment/hometop/categoryGroup.ejs +0 -19
- package/layout/partial/compoment/hometop/groupTag.ejs +0 -30
- package/layout/partial/compoment/hometop/topGroup.ejs +0 -41
- package/layout/partial/compoment/inject/body.ejs +0 -70
- package/layout/partial/compoment/links/angle.ejs +0 -26
- package/layout/partial/compoment/links/banner.ejs +0 -42
- package/layout/partial/compoment/links/linksCard.ejs +0 -27
- package/layout/partial/compoment/links/linksItem.ejs +0 -21
- package/layout/partial/compoment/mixins/articleSort.ejs +0 -26
- package/layout/partial/compoment/mixins/pagination.ejs +0 -11
- package/layout/partial/compoment/nav/left.ejs +0 -22
- package/layout/partial/compoment/nav/menu.ejs +0 -25
- package/layout/partial/compoment/nav/right.ejs +0 -42
- package/layout/partial/compoment/post/award.ejs +0 -60
- package/layout/partial/compoment/post/copyright.ejs +0 -39
- package/layout/partial/compoment/post/postMeta.ejs +0 -85
- package/layout/partial/compoment/post/postNav.ejs +0 -41
- package/layout/partial/compoment/post/wave.ejs +0 -14
- package/layout/partial/compoment/says/banner.ejs +0 -10
- package/layout/partial/compoment/says/saysBottom.ejs +0 -18
- package/layout/partial/compoment/says/saysContent.ejs +0 -10
- package/layout/partial/compoment/says/saysFunction.ejs +0 -15
- package/layout/partial/compoment/third-party/comments/comment.ejs +0 -12
- package/layout/partial/compoment/third-party/comments/twikoo_k.ejs +0 -29
- package/layout/partial/compoment/third-party/music.ejs +0 -5
- package/layout/partial/compoment/third-party/pjax.ejs +0 -31
- package/layout/partial/compoment/third-party/search/algolia-search.ejs +0 -20
- package/layout/partial/compoment/third-party/search/index.ejs +0 -10
- package/layout/partial/compoment/third-party/search/local-search.ejs +0 -22
- package/layout/partial/compoment/tlink/banner.ejs +0 -10
- package/layout/partial/console.ejs +0 -68
- package/layout/partial/footer.ejs +0 -109
- package/layout/partial/head.ejs +0 -37
- package/layout/partial/header.ejs +0 -6
- package/layout/partial/hometop.ejs +0 -15
- package/layout/partial/nav.ejs +0 -34
- package/layout/partial/pwa.ejs +0 -40
- package/layout/partial/sidebar.ejs +0 -31
- package/layout/post.ejs +0 -52
- package/layout/tag.ejs +0 -19
- package/scripts/helper/randomLinks.js +0 -16
- package/scripts/helper/themeJsExport.js +0 -79
- package/source/css/commentBarrage.css +0 -174
- package/source/css/custom.css +0 -901
- package/source/css/main.css +0 -16285
- package/source/css/search/algolia-search.css +0 -141
- package/source/css/search/local-search.css +0 -138
- package/source/css/var.css +0 -189
- /package/source/js/{rightmenu.js → rightside.js} +0 -0
@@ -1,20 +0,0 @@
|
|
1
|
-
<div id="algolia-search">
|
2
|
-
<div class="search-dialog">
|
3
|
-
<nav class="search-nav">
|
4
|
-
<span class="search-dialog-title">搜索</span>
|
5
|
-
<button class="search-close-button">
|
6
|
-
<i class="scoicon sco-close-fill"></i>
|
7
|
-
</button>
|
8
|
-
</nav>
|
9
|
-
<div class="search-wrap">
|
10
|
-
<div class="search-box" id="search-input"></div>
|
11
|
-
<div id="search-results">
|
12
|
-
<div id="algolia-hits">
|
13
|
-
</div>
|
14
|
-
<div class="algolia-stats"></div>
|
15
|
-
<div class="algolia-poweredBy"></div>
|
16
|
-
</div>
|
17
|
-
</div>
|
18
|
-
</div>
|
19
|
-
<div id="search-mask"></div>
|
20
|
-
</div>
|
@@ -1,10 +0,0 @@
|
|
1
|
-
<% if(theme.thirdparty.search.local_search.enable){ %>
|
2
|
-
<%- partial('partial/compoment/third-party/search/local-search') %>
|
3
|
-
<%- css('/css/search/local-search.css') %>
|
4
|
-
<%- js('/js/extend/search/local-search.js') %>
|
5
|
-
<% } %>
|
6
|
-
<% if(theme.thirdparty.search.algolia_search.enable){ %>
|
7
|
-
<%- partial('partial/compoment/third-party/search/algolia-search') %>
|
8
|
-
<%- css('/css/search/algolia-search') %>
|
9
|
-
<%- js('/js/extend/search/algolia-search.js') %>
|
10
|
-
<% } %>
|
@@ -1,22 +0,0 @@
|
|
1
|
-
<div id="local-search">
|
2
|
-
<div class="search-dialog">
|
3
|
-
<nav class="search-nav">
|
4
|
-
<span class="search-dialog-title">搜索</span>
|
5
|
-
<button class="search-close-button">
|
6
|
-
<i class="scoicon sco-close-fill"></i>
|
7
|
-
</button>
|
8
|
-
</nav>
|
9
|
-
<div id="loading-database">
|
10
|
-
<i class="scoicon sco-loading-line"></i>
|
11
|
-
<span>加载中</span>
|
12
|
-
</div>
|
13
|
-
<div class="search-wrap">
|
14
|
-
<div class="search-box">
|
15
|
-
<input class="search-box-input" placeholder="<%= __('search.placeholder') %>" type="text" id="search-input" autocomplete="off" spellcheck="false" autocorrect="off" autocapitalize="off">
|
16
|
-
</div>
|
17
|
-
<div id="loading-status"></div>
|
18
|
-
<div id="search-results"></div>
|
19
|
-
</div>
|
20
|
-
</div>
|
21
|
-
<div id="search-mask"></div>
|
22
|
-
</div>
|
@@ -1,10 +0,0 @@
|
|
1
|
-
<div class="author-content author-content-item essayPage single nolazyload" style="background: url(<%= page.cover %>) no-repeat center;background-size: cover;">
|
2
|
-
<div class="card-content">
|
3
|
-
<div class="author-content-item-tips"><%= page.title %></div>
|
4
|
-
<span class="author-content-item-title"><%= page.desc %></span>
|
5
|
-
<div class="content-bottom">
|
6
|
-
<div class="tips"><%- page.tipl %></div>
|
7
|
-
<div class="tips"><%- page.tipr %></div>
|
8
|
-
</div>
|
9
|
-
</div>
|
10
|
-
</div>
|
@@ -1,68 +0,0 @@
|
|
1
|
-
<div id="console" style="zoom: 1;" class="">
|
2
|
-
<div class="close-btn" onclick="sco.hideConsole()" href="javascript:void(0);">
|
3
|
-
<i class="scoicon sco-close-fill"></i>
|
4
|
-
</div>
|
5
|
-
<% if(theme.thirdparty.consolePlus){ %>
|
6
|
-
<div class="console-card-group">
|
7
|
-
<div class="console-card-group-left">
|
8
|
-
<div class="console-card" id="card-newest-comments" onclick="sco.hideConsole()">
|
9
|
-
<div class="card-content">
|
10
|
-
<div class="author-content-item-tips">互动</div>
|
11
|
-
<div class="author-content-item-title">最新评论</div>
|
12
|
-
</div>
|
13
|
-
<div class="aside-list"></div>
|
14
|
-
</div>
|
15
|
-
|
16
|
-
</div>
|
17
|
-
<div class="console-card-group-right">
|
18
|
-
<div class="console-card tags" onclick="sco.hideConsole()">
|
19
|
-
<div class="card-content">
|
20
|
-
<div class="author-content-item-tips">标签</div>
|
21
|
-
<div class="author-content-item-title">寻找感兴趣的领域</div>
|
22
|
-
</div>
|
23
|
-
<div class="card-tag-cloud">
|
24
|
-
<% site.tags.data.forEach(data => { %>
|
25
|
-
<a href="<%= url_for(data.path) %>"
|
26
|
-
style="font-size: 0.8rem; color: #d3d3d3"><%= data.name %>
|
27
|
-
<sup><%= data.length %></sup></a>
|
28
|
-
<% }) %>
|
29
|
-
</div>
|
30
|
-
</div>
|
31
|
-
<div class="console-card history" onclick="sco.hideConsole()">
|
32
|
-
<%- partial('partial/compoment/aside/asideArchive', {type: 'month'}) %>
|
33
|
-
</div>
|
34
|
-
</div>
|
35
|
-
</div>
|
36
|
-
<% } %>
|
37
|
-
|
38
|
-
<div class="button-group">
|
39
|
-
<div class="console-btn-item">
|
40
|
-
<a class="darkmode_switchbutton" onclick="sco.switchDarkMode()" title="显示模式切换"
|
41
|
-
href="javascript:void(0);" rel="external nofollow" data-pjax-state="">
|
42
|
-
<i class="scoicon sco-moon-clear-fill" style="font-size: 1rem;"></i>
|
43
|
-
</a>
|
44
|
-
</div>
|
45
|
-
<div class="console-btn-item" id="consoleHideAside">
|
46
|
-
<a class="asideSwitch" onclick="sco.switchHideAside()" title="边栏显示控制"
|
47
|
-
href="javascript:void(0);" rel="external nofollow" data-pjax-state="">
|
48
|
-
<i class="scoicon sco-side-bar-fill" style="font-size: 1rem;"></i>
|
49
|
-
</a>
|
50
|
-
</div>
|
51
|
-
<% if(theme.thirdparty.aplayer.enable){ %>
|
52
|
-
<div class="console-btn-item" id="consoleMusic" onclick="sco.musicToggle()" title="音乐开关">
|
53
|
-
<a class="music-switch">
|
54
|
-
<i class="scoicon sco-disc-fill"></i>
|
55
|
-
</a>
|
56
|
-
</div>
|
57
|
-
<% } %>
|
58
|
-
<% if(theme.comment.enable) { %>
|
59
|
-
<div class="console-btn-item on" id="consoleCommentBarrage" onclick="sco.switchCommentBarrage()"
|
60
|
-
title="热评开关">
|
61
|
-
<a class="commentBarrage">
|
62
|
-
<i class="scoicon sco-chat-fill"></i>
|
63
|
-
</a>
|
64
|
-
</div>
|
65
|
-
<% }%>
|
66
|
-
</div>
|
67
|
-
<div class="console-mask" onclick="sco.hideConsole()" href="javascript:void(0);" rel="external nofollow"></div>
|
68
|
-
</div>
|
@@ -1,109 +0,0 @@
|
|
1
|
-
<div id="sco-footer-bar">
|
2
|
-
<div class="footer-logo">
|
3
|
-
<% if (theme.site.name.class === 'i_class') { %>
|
4
|
-
<i class="<%= theme.site.name.custom %>" style="font-size: 16px;"></i>
|
5
|
-
<% } else if (theme.site.name.class === 'img') { %>
|
6
|
-
<i style="background-image: url('<%= url_for(theme.site.name.custom) %>')"></i>
|
7
|
-
<% } else if (theme.site.name.class === 'text') { %>
|
8
|
-
<span class="scoicon"><%= theme.site.name.custom %></span>
|
9
|
-
<% } %>
|
10
|
-
</div>
|
11
|
-
<div class="footer-bar-description">来自 <%- config.title %> 最新设计与科技的文章</div>
|
12
|
-
<a class="footer-bar-link" href="/" data-pjax-state="">了解更多</a>
|
13
|
-
</div>
|
14
|
-
<div id="footer_deal">
|
15
|
-
<% for(const i in theme.footer.information.left){ %>
|
16
|
-
<a class="deal_link" href="<%= url_for(theme.footer.information.left[i].url) %>" rel="external nofollow"
|
17
|
-
title="<%= i %>">
|
18
|
-
<i class="<%= theme.footer.information.left[i].icon %>"></i>
|
19
|
-
</a>
|
20
|
-
<% } %>
|
21
|
-
<img class="footer_mini_logo" src="<%= theme.site.icon %>"
|
22
|
-
title="返回顶部" onclick="sco.toTop()">
|
23
|
-
<% for(const i in theme.footer.information.right){ %>
|
24
|
-
<a class="deal_link" href="<%= url_for(theme.footer.information.right[i].url) %>" rel="external nofollow"
|
25
|
-
title="<%= i %>">
|
26
|
-
<i class="<%= theme.footer.information.right[i].icon %>"></i>
|
27
|
-
</a>
|
28
|
-
<% } %>
|
29
|
-
</div>
|
30
|
-
<div id="sco-footer">
|
31
|
-
<% for(const x in theme.footer.group){ %>
|
32
|
-
<div class="footer-group">
|
33
|
-
<h3 class="footer-title"><%= x %></h3>
|
34
|
-
<div class="footer-links">
|
35
|
-
<% for(const y in theme.footer.group[x]){ %>
|
36
|
-
<a class="footer-item" href="<%= url_for(theme.footer.group[x][y]) %>" title="<%= y %>"
|
37
|
-
rel="noopener external nofollow noreferrer"><%= y %></a>
|
38
|
-
<% } %>
|
39
|
-
</div>
|
40
|
-
</div>
|
41
|
-
<% } %>
|
42
|
-
<% if(theme.footer.randomlink){ %>
|
43
|
-
<div class="footer-group">
|
44
|
-
<div class="footer-title-group">
|
45
|
-
<h3 class="footer-title">友链</h3>
|
46
|
-
<a class="random-friends-btn" href="javascript:randomLinksList();" rel="external nofollow">
|
47
|
-
<i class="scoicon sco-refresh-line"></i>
|
48
|
-
</a>
|
49
|
-
</div>
|
50
|
-
<div class="footer-links" id="friend-links-in-footer">
|
51
|
-
</div>
|
52
|
-
</div>
|
53
|
-
<% } %>
|
54
|
-
</div>
|
55
|
-
<div id="footer-bar">
|
56
|
-
<div class="footer-bar-links">
|
57
|
-
<div class="footer-bar-left">
|
58
|
-
<div id="footer-bar-tips">
|
59
|
-
<% if(moment(theme.aside.siteinfo.runtime).year() === new Date().getFullYear()){ %>
|
60
|
-
<div class="copyright">© <%= moment(theme.aside.siteinfo.runtime).year() %>
|
61
|
-
By
|
62
|
-
<a class="footer-bar-link" href="/" rel="external nofollow"><%= config.author %></a>
|
63
|
-
</div>
|
64
|
-
<% }else{ %>
|
65
|
-
<div class="copyright">© <%= moment(theme.aside.siteinfo.runtime).year() %>
|
66
|
-
- <%= new Date().getFullYear() %> By
|
67
|
-
<a class="footer-bar-link" href="/" rel="external nofollow"><%= config.author %></a>
|
68
|
-
</div>
|
69
|
-
<% } %>
|
70
|
-
</div>
|
71
|
-
</div>
|
72
|
-
<div class="footer-bar-right">
|
73
|
-
<% if(theme.footer.rss.enable){ %>
|
74
|
-
<a class="footer-bar-link" href="/rss/" rel="external nofollow"
|
75
|
-
target="_self">订阅</a>
|
76
|
-
<% } %>
|
77
|
-
<a class="footer-bar-link" href="https://github.com/DuoSco/hexo-theme-solitude" rel="external nofollow"
|
78
|
-
target="_self">主题</a>
|
79
|
-
<% if(theme.site.icp){ %>
|
80
|
-
<a class="footer-bar-link" target="_blank" href="https://beian.miit.gov.cn/#/Integrated/index"
|
81
|
-
rel="noopener external nofollow noreferrer noopener">
|
82
|
-
<%= theme.site.icp %>
|
83
|
-
</a>
|
84
|
-
<% } %>
|
85
|
-
<a class="footer-bar-link cc" href="<%- theme.footer.license.url %>" target="_self" rel="external nofollow">
|
86
|
-
<i class="scoicon sco-copyright-line"></i>
|
87
|
-
<i class="scoicon sco-creative-commons-by-line"></i>
|
88
|
-
<i class="scoicon sco-creative-commons-nc-line"></i>
|
89
|
-
<i class="scoicon sco-creative-commons-nd-line"></i>
|
90
|
-
</a>
|
91
|
-
</div>
|
92
|
-
</div>
|
93
|
-
</div>
|
94
|
-
<div class="needEndHide" id="cookies-window">
|
95
|
-
<div class="cookies-window-title">协议提醒助手</div>
|
96
|
-
<div class="cookies-window-content">
|
97
|
-
<span class="cookies-tip">查看本站为你的个人隐私做出的努力</span>
|
98
|
-
<a class="cookies-link" href="/privacy/" title="本站如何保护你的隐私" data-pjax-state="">
|
99
|
-
<i class="scoicon sco-arrow-right-circle-fill"></i>
|
100
|
-
</a>
|
101
|
-
</div>
|
102
|
-
</div>
|
103
|
-
<% if(theme.post.award.enable){%>
|
104
|
-
<div id="quit-box" onclick="RemoveRewardMask()" style="display: none"></div>
|
105
|
-
<%} %>
|
106
|
-
<% if(theme.comment.enable){ %>
|
107
|
-
<div class="comment-barrage">
|
108
|
-
</div>
|
109
|
-
<% } %>
|
package/layout/partial/head.ejs
DELETED
@@ -1,37 +0,0 @@
|
|
1
|
-
<% const cdn = theme.cdn.head %>
|
2
|
-
|
3
|
-
<meta charset="UTF-8">
|
4
|
-
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
|
-
<%
|
7
|
-
var title = '', subtitle = ''
|
8
|
-
if (is_home()) {
|
9
|
-
title = config.title
|
10
|
-
} else if (is_archive()) title = '归档 ' + (page.year || '')
|
11
|
-
else if (is_category()) title = '分类 ' + page.category
|
12
|
-
else if (is_tag()) title = '标签 ' + page.tag
|
13
|
-
else if (page.type === '404') title = '404 ' + theme.errorpage.text
|
14
|
-
else if (is_page() || is_post()) title = page.title
|
15
|
-
if (is_home()) subtitle = config.subtitle ? ' - ' + config.subtitle : ''
|
16
|
-
else subtitle = title ? ' | ' + config.title : config.title
|
17
|
-
var description = page.desc || page.excerpt || config.description
|
18
|
-
-%>
|
19
|
-
<title><%= title + subtitle %></title>
|
20
|
-
<noscript>开启Javascript是必要的</noscript>
|
21
|
-
<link rel="icon" type="image/x-icon" href="<%= url_for(theme.site.siteIcon) %>">
|
22
|
-
<meta name="description" content="<%= description %>">
|
23
|
-
<% if (theme.pwa.enable) { %>
|
24
|
-
<%- partial('partial/pwa') %>
|
25
|
-
<% }else{ %>
|
26
|
-
<meta name="apple-mobile-web-app-title" content="<%= config.title %>">
|
27
|
-
<link rel="bookmark" href="<%= url_for(theme.site.siteIcon) %>">
|
28
|
-
<link rel="apple-touch-icon-precomposed" sizes="180x180" href="<%= url_for(theme.site.siteIcon) %>">
|
29
|
-
<% } %>
|
30
|
-
<link rel="stylesheet" href="/css/var.css">
|
31
|
-
<link rel="stylesheet" href="/css/main.css">
|
32
|
-
<link rel="stylesheet" href="/css/custom.css">
|
33
|
-
<%- partial('partial/compoment/inject/head', {cache: true}) %>
|
34
|
-
<% if (theme.extends.head) for (const i of theme.extends.head){ %>
|
35
|
-
<%- i %>
|
36
|
-
<% } %>
|
37
|
-
<%- export_config() %>
|
@@ -1,15 +0,0 @@
|
|
1
|
-
<div class="recent-top-post-group" id="recent-top-post-group">
|
2
|
-
<div class="recent-post-top" id="recent-post-top">
|
3
|
-
<div id="bannerGroup">
|
4
|
-
<div id="banners">
|
5
|
-
<%- partial('partial/compoment/hometop/groupTag') %>
|
6
|
-
</div>
|
7
|
-
<div class="categoryGroup">
|
8
|
-
<%- partial('partial/compoment/hometop/categoryGroup') %>
|
9
|
-
</div>
|
10
|
-
</div>
|
11
|
-
<div class="topGroup">
|
12
|
-
<%- partial('partial/compoment/hometop/topGroup') %>
|
13
|
-
</div>
|
14
|
-
</div>
|
15
|
-
</div>
|
package/layout/partial/nav.ejs
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
<nav id="nav" class="show">
|
2
|
-
<div id="nav-group">
|
3
|
-
<div id="blog_name">
|
4
|
-
<% if(theme.nav.left.enable){ %>
|
5
|
-
<div class="back-home-button" tabindex="-1">
|
6
|
-
<i class="back-home-button-icon scoicon sco-more-fill"></i>
|
7
|
-
<%- partial('partial/compoment/nav/left') %>
|
8
|
-
</div>
|
9
|
-
<% } %>
|
10
|
-
<a id="site-name" href="/" title="返回博客主页" target="_self">
|
11
|
-
<% if (theme.site.name.class === 'i_class') { %>
|
12
|
-
<i class="<%= theme.site.name.custom %>" style="font-size: 16px;"></i>
|
13
|
-
<% } else if (theme.site.name.class === 'img') { %>
|
14
|
-
<img src="<%= url_for(theme.site.name.custom) %>"></img>
|
15
|
-
<% } else if (theme.site.name.class === 'text') { %>
|
16
|
-
<span class="scoicon"><%= theme.site.name.custom %></span>
|
17
|
-
<% } %>
|
18
|
-
</a>
|
19
|
-
</div>
|
20
|
-
<div id="page-name-mask">
|
21
|
-
<div id="page-name">
|
22
|
-
<a id="page-name-text" onclick="sco.toTop()"><%= page.title || config.title %></a>
|
23
|
-
</div>
|
24
|
-
</div>
|
25
|
-
<div id="menus">
|
26
|
-
<%- partial('partial/compoment/nav/menu') %>
|
27
|
-
</div>
|
28
|
-
<div id="nav-left">
|
29
|
-
</div>
|
30
|
-
<div id="nav-right">
|
31
|
-
<%- partial('partial/compoment/nav/right') %>
|
32
|
-
</div>
|
33
|
-
</div>
|
34
|
-
</nav>
|
package/layout/partial/pwa.ejs
DELETED
@@ -1,40 +0,0 @@
|
|
1
|
-
<meta name="theme-color" content="<%- theme.pwa.theme_color %>">
|
2
|
-
<link rel="manifest" href="<%- theme.pwa.manifest %>">
|
3
|
-
<% if (theme.pwa.theme_color) { %><meta name="msapplication-TileColor" content="<%- theme.pwa.theme_color %>"><% } %>
|
4
|
-
<% if (theme.pwa.mask_icon) { %><link rel="mask-icon" href="<%- theme.pwa.mask_icon %>" color="<%- theme.pwa.theme_color %>"><% } %>
|
5
|
-
<% if (theme.pwa.apple_touch_icon) { %><link rel="apple-touch-icon" sizes="180x180" href="<%- theme.pwa.apple_touch_icon %>">
|
6
|
-
<link rel="apple-touch-icon-precomposed" sizes="180x180" href="<%- theme.pwa.apple_touch_icon %>">
|
7
|
-
<meta name="apple-mobile-web-app-title" content="<%= config.title %>"><% } %>
|
8
|
-
<% if (theme.pwa.favicon_16_16) { %><link rel="icon" type="image/png" sizes="16x16" href="<%- theme.pwa.favicon_16_16 %>"><% } %>
|
9
|
-
<% if (theme.pwa.favicon_32_32) { %><link rel="icon" type="image/png" sizes="32x32" href="<%- theme.pwa.favicon_32_32 %>"><% } %>
|
10
|
-
<% if (theme.pwa.bookmark_icon) { %><link rel="bookmark" href="<%- theme.pwa.bookmark_icon %>"><% } %><% if (theme.pwa.startup_image_enable) { %>
|
11
|
-
<% if (theme.pwa.favicon_2048_2732) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2048_2732 %>" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><% } %>
|
12
|
-
<% if (theme.pwa.favicon_2732_2048) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2732_2048 %>" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)"><% } %>
|
13
|
-
<% if (theme.pwa.favicon_1668_2388) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1668_2388 %>" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><% } %>
|
14
|
-
<% if (theme.pwa.favicon_2388_1668) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2388_1668 %>" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)"><% } %>
|
15
|
-
<% if (theme.pwa.favicon_1536_2048) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1536_2048 %>" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><% } %>
|
16
|
-
<% if (theme.pwa.favicon_2048_1536) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2048_1536 %>" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)"><% } %>
|
17
|
-
<% if (theme.pwa.favicon_1668_2224) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1668_2224 %>" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><% } %>
|
18
|
-
<% if (theme.pwa.favicon_1668_2224) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1668_2224 %>" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)"><% } %>
|
19
|
-
<% if (theme.pwa.favicon_1620_2160) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1620_2160 %>" media="(device-width: 810px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><% } %>
|
20
|
-
<% if (theme.pwa.favicon_2160_1620) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2160_1620 %>" media="(device-width: 810px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)"><% } %>
|
21
|
-
<% if (theme.pwa.favicon_1290_2796) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1290_2796 %>" media="(device-width: 430px) and (device-height: 932px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><% } %>
|
22
|
-
<% if (theme.pwa.favicon_2796_1290) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2796_1290 %>" media="(device-width: 430px) and (device-height: 932px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)"><% } %>
|
23
|
-
<% if (theme.pwa.favicon_1179_2556) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1179_2556 %>" media="(device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><% } %>
|
24
|
-
<% if (theme.pwa.favicon_2556_1179) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2556_1179 %>" media="(device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)"><% } %>
|
25
|
-
<% if (theme.pwa.favicon_1248_2778) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1248_2778 %>" media="(device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><% } %>
|
26
|
-
<% if (theme.pwa.favicon_2778_1248) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2778_1248 %>" media="(device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)"><% } %>
|
27
|
-
<% if (theme.pwa.favicon_1170_2532) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1170_2532 %>" media="(device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><% } %>
|
28
|
-
<% if (theme.pwa.favicon_2532_1170) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2532_1170 %>" media="(device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)"><% } %>
|
29
|
-
<% if (theme.pwa.favicon_1125_2436) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1125_2436 %>" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><% } %>
|
30
|
-
<% if (theme.pwa.favicon_2436_1125) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2436_1125 %>" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)"><% } %>
|
31
|
-
<% if (theme.pwa.favicon_1242_2688) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1242_2688 %>" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><% } %>
|
32
|
-
<% if (theme.pwa.favicon_2688_1242) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2688_1242 %>" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)"><% } %>
|
33
|
-
<% if (theme.pwa.favicon_828_1792) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_828_1792 %>" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><% } %>
|
34
|
-
<% if (theme.pwa.favicon_1792_828) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1792_828 %>" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)"><% } %>
|
35
|
-
<% if (theme.pwa.favicon_1242_2208) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1242_2208 %>" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)"><% } %>
|
36
|
-
<% if (theme.pwa.favicon_2208_1242) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_2208_1242 %>" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)"><% } %>
|
37
|
-
<% if (theme.pwa.favicon_750_1334) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_750_1334 %>" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><% } %>
|
38
|
-
<% if (theme.pwa.favicon_1334_750) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1334_750 %>" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)"><% } %>
|
39
|
-
<% if (theme.pwa.favicon_640_1136) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_640_1136 %>" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"><% } %>
|
40
|
-
<% if (theme.pwa.favicon_1136_640) { %><link rel="apple-touch-startup-image" href="<%- theme.pwa.favicon_1136_640 %>" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)"><% } %><% } %>
|
@@ -1,31 +0,0 @@
|
|
1
|
-
<div id="sidebar" style="zoom: 1;">
|
2
|
-
<div id="menu-mask" style="display: none;"></div>
|
3
|
-
<div id="sidebar-menus" class>
|
4
|
-
<span class="sidebar-menu-item-title">功能</span>
|
5
|
-
<div class="sidebar-menu-item">
|
6
|
-
<a class="darkmode_switchbutton menu-child" onclick="sco.switchDarkMode()" title="显示模式切换"
|
7
|
-
href="javascript:void(0);" rel="external nofollow">
|
8
|
-
<i class="scoicon sco-moon-clear-fill" style="font-size: 1rem;"></i>
|
9
|
-
<span>显示模式</span>
|
10
|
-
</a>
|
11
|
-
</div>
|
12
|
-
<% if(theme.nav.left.enable){ %>
|
13
|
-
<%- partial('partial/compoment/nav/left') %>
|
14
|
-
<% } %>
|
15
|
-
<%- partial('partial/compoment/nav/menu') %>
|
16
|
-
<span class="sidebar-menu-item-title">标签</span>
|
17
|
-
<div class="card-widget card-tags card-archives card-webinfo card-allinfo">
|
18
|
-
<div class="item-headline">
|
19
|
-
<i class="scoicon sco-price-tag-fill"></i>
|
20
|
-
<span>标签</span>
|
21
|
-
</div>
|
22
|
-
<div class="card-tag-cloud">
|
23
|
-
<% site.tags.data.forEach(data => { %>
|
24
|
-
<a href="<%= url_for(data.path) %>" style="font-size: 1em; color: #d3d3d3"><%= data.name %>
|
25
|
-
<sup><%= data.length %></sup>
|
26
|
-
</a>
|
27
|
-
<% }) %>
|
28
|
-
</div>
|
29
|
-
</div>
|
30
|
-
</div>
|
31
|
-
</div>
|
package/layout/post.ejs
DELETED
@@ -1,52 +0,0 @@
|
|
1
|
-
<main class="layout" id="content-inner">
|
2
|
-
<div id="post">
|
3
|
-
<article class="post-content" id="article-container">
|
4
|
-
<%- page.content %>
|
5
|
-
</article>
|
6
|
-
<%- partial('partial/compoment/post/copyright') %>
|
7
|
-
|
8
|
-
<div class="post-tools-right">
|
9
|
-
<div class="tag_share">
|
10
|
-
<div class="post-meta__tag-list">
|
11
|
-
<% page.tags.data.forEach(data => { %>
|
12
|
-
<a href="<%= url_for(data.path) %>" class="post-meta__tags">
|
13
|
-
<span class="tags-punctuation"></span>
|
14
|
-
<%= data.name %>
|
15
|
-
<span class="tagsPageCount"><%= data.length %></span>
|
16
|
-
</a>
|
17
|
-
<% }) %>
|
18
|
-
</div>
|
19
|
-
</div>
|
20
|
-
</div>
|
21
|
-
|
22
|
-
<% if(site.posts.length > 1){ %>
|
23
|
-
<%- partial('partial/compoment/post/postNav') %>
|
24
|
-
<% } %>
|
25
|
-
|
26
|
-
<%- related_posts(page, site.posts) %>
|
27
|
-
|
28
|
-
<% if(page.comment){ %>
|
29
|
-
<%- partial('partial/compoment/third-party/comments/comment') %>
|
30
|
-
<% } %>
|
31
|
-
</div>
|
32
|
-
|
33
|
-
<%- partial('partial/compoment/aside/aside') %>
|
34
|
-
|
35
|
-
<% if(theme.thirdparty.ai.enable){ %>
|
36
|
-
<script data-pjax defer>
|
37
|
-
// AI构造函数
|
38
|
-
new ChucklePostAI({
|
39
|
-
/* 必须配置 */
|
40
|
-
// 文章内容所在的元素属性的选择器,也是AI挂载的容器,AI将会挂载到该容器的最前面
|
41
|
-
el: '#post #article-container',
|
42
|
-
// 驱动AI所必须的key,即是tianliGPT后端服务所必须的key
|
43
|
-
key: '<%= theme.thirdparty.ai.key %>',
|
44
|
-
/* 非必须配置,但最好根据自身需要进行配置 */
|
45
|
-
// 文章标题所在的元素属性的选择器,默认获取当前网页的标题
|
46
|
-
title_el: '.post-title',
|
47
|
-
// 文章推荐方式,all:匹配数据库内所有文章进行推荐,web:仅当前站内的文章,默认all
|
48
|
-
rec_method: '<%= theme.thirdparty.ai.rec_method || 'web' %>',
|
49
|
-
})
|
50
|
-
</script>
|
51
|
-
<% } %>
|
52
|
-
</main>
|
package/layout/tag.ejs
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
<main class="layout" id="content-inner">
|
2
|
-
<div id="tag">
|
3
|
-
<div id="tag-page-tags">
|
4
|
-
<% site.tags.data.forEach(data => { %>
|
5
|
-
<a href="<%= url_for(data.path) %>" class="<%= data.name === page.tag ? 'select' : '' %>">
|
6
|
-
<span class="tags-punctuation"></span>
|
7
|
-
<%= data.name %>
|
8
|
-
<span class="tagsPageCount"><%= data.length %></span>
|
9
|
-
</a>
|
10
|
-
<% }) %>
|
11
|
-
</div>
|
12
|
-
<div class="article-sort-title"><%= page.tag %></div>
|
13
|
-
<div class="article-sort">
|
14
|
-
<%- partial('partial/compoment/mixins/articleSort') %>
|
15
|
-
</div>
|
16
|
-
<%- partial('partial/compoment/mixins/pagination') %>
|
17
|
-
</div>
|
18
|
-
<%- partial('partial/compoment/aside/aside') %>
|
19
|
-
</main>
|
@@ -1,16 +0,0 @@
|
|
1
|
-
hexo.extend.helper.register('randomLinks', function(){
|
2
|
-
const links = []
|
3
|
-
const data = this.site.data.links.links
|
4
|
-
if(!data)return
|
5
|
-
data.forEach(x => {
|
6
|
-
if(x.type === "item"){
|
7
|
-
x.link_list.forEach(y => {
|
8
|
-
links.push({
|
9
|
-
name: y.name,
|
10
|
-
link: y.link
|
11
|
-
})
|
12
|
-
})
|
13
|
-
}
|
14
|
-
});
|
15
|
-
return `<script>const links=${JSON.stringify(links)};function travelling(){const link=links[utils.randomNum(links.length)];utils.snackbarShow('您即将前往 ⌈ '+link.name+' ⌋ , 安全性未知',false,3000);setTimeout(()=>{window.open(link.link,"_blank")},3000)};function randomLinksList(){let data='';let linksCopy = [...links];let count = Math.min(3, linksCopy.length);for (let i = 0; i < count; i++) {let index = utils.randomNum(linksCopy.length);const link = linksCopy[index];data += '<a class="footer-item" href="' + link.link + '" target="_blank" rel="noopener nofollow">' + link.name + '</a>';linksCopy.splice(index, 1);}document.getElementById('friend-links-in-footer').innerHTML = data + '<a class="footer-item" href="/links/">更多</a>';};</script>`
|
16
|
-
})
|
@@ -1,79 +0,0 @@
|
|
1
|
-
hexo.extend.helper.register('export_config', function () {
|
2
|
-
const {config, theme} = this, lang = hexo.theme.i18n.get(config.language || 'zh-CN')
|
3
|
-
let exportGlobalConfig = {
|
4
|
-
root: config.root,
|
5
|
-
runtime: theme.aside.siteinfo.runtimeenable ? theme.aside.siteinfo.runtime : false,
|
6
|
-
lazyload: {
|
7
|
-
enable: theme.lazyload.enable,
|
8
|
-
error: theme.lazyload.errorimg
|
9
|
-
},
|
10
|
-
hightlight: {
|
11
|
-
enable: theme.hightlight.enable,
|
12
|
-
limit: theme.hightlight.hightlimit
|
13
|
-
},
|
14
|
-
lightbox: theme.lightbox,
|
15
|
-
randomlinks: theme.footer.randomlink,
|
16
|
-
lang: {
|
17
|
-
theme: {
|
18
|
-
dark: lang['theme.dark'],
|
19
|
-
light: lang['theme.light'],
|
20
|
-
},
|
21
|
-
copy: {
|
22
|
-
success: lang['copy.success'],
|
23
|
-
error: lang['copy.error'],
|
24
|
-
},
|
25
|
-
backtop: lang['nav.backtop'],
|
26
|
-
time: {
|
27
|
-
recent: lang['time.recent'],
|
28
|
-
yesterday: lang['time.yesterday'],
|
29
|
-
berforeyesterday: lang['time.berforeyesterday'],
|
30
|
-
daybefore: lang['time.daybefore'],
|
31
|
-
runtime: lang['time.runtime'],
|
32
|
-
},
|
33
|
-
sayhello: {
|
34
|
-
morning: lang['sayhello.morning'],
|
35
|
-
noon: lang['sayhello.noon'],
|
36
|
-
afternoon: lang['sayhello.afternoon'],
|
37
|
-
night: lang['sayhello.night'],
|
38
|
-
goodnight: lang['sayhello.goodnight'],
|
39
|
-
iam: lang['sayhello.iam'],
|
40
|
-
},
|
41
|
-
search: {
|
42
|
-
empty: lang['search.empty'],
|
43
|
-
hit: lang['search.hit'],
|
44
|
-
placeholder: lang['search.placeholder'],
|
45
|
-
}
|
46
|
-
},
|
47
|
-
covercolor: theme.post.covercolor.enable,
|
48
|
-
comment: {
|
49
|
-
enable: theme.comment.enable,
|
50
|
-
twikooUrl: theme.comment.twikoo.envId,
|
51
|
-
twikooAccessToken: theme.comment.twikoo.accessToken
|
52
|
-
},
|
53
|
-
}
|
54
|
-
|
55
|
-
// 搜索数据
|
56
|
-
if (theme.thirdparty.search.local_search.enable) exportGlobalConfig = Object.assign(exportGlobalConfig, {
|
57
|
-
localsearch: {
|
58
|
-
preload: theme.thirdparty.search.local_search.preload,
|
59
|
-
path: theme.thirdparty.search.local_search.path || '/search.xml'
|
60
|
-
}
|
61
|
-
})
|
62
|
-
if (theme.thirdparty.search.algolia_search.enable) exportGlobalConfig = Object.assign(exportGlobalConfig, {
|
63
|
-
algolia: {
|
64
|
-
appId: config.algolia.appId,
|
65
|
-
apiKey: config.algolia.apiKey,
|
66
|
-
indexName: config.algolia.indexName
|
67
|
-
}
|
68
|
-
})
|
69
|
-
|
70
|
-
const exportPageConfig = {
|
71
|
-
is_home: this.is_home(),
|
72
|
-
is_post: this.is_post(),
|
73
|
-
is_page: this.is_page(),
|
74
|
-
page: this.is_page() && (this.page.type || 'default'),
|
75
|
-
toc: this.page.toc,
|
76
|
-
comment: this.page.comment,
|
77
|
-
}
|
78
|
-
return `<script>var GLOBALCONFIG = ${JSON.stringify(exportGlobalConfig)};</script><script id="site-config">var PAGECONFIG = ${JSON.stringify(exportPageConfig)};</script>`;
|
79
|
-
})
|