Compare commits
97 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1b98206cad | ||
|
|
9e42b3fad1 | ||
|
|
d560e45ca2 | ||
|
|
046bb90685 | ||
|
|
e86002e941 | ||
|
|
f8ac686c1c | ||
|
|
082fb48650 | ||
|
|
c07ff1df05 | ||
|
|
c5c1f03557 | ||
|
|
4e05bfb399 | ||
|
|
30212827f0 | ||
|
|
5aaeae2885 | ||
|
|
526a4b7005 | ||
|
|
b4fd858b94 | ||
|
|
ad03e3011e | ||
|
|
5686c96de2 | ||
|
|
15933757ca | ||
|
|
5610d561bb | ||
|
|
385f0f023b | ||
|
|
40c36a70f0 | ||
|
|
25f978e06e | ||
|
|
a0ce0996e0 | ||
|
|
15c06f3445 | ||
|
|
25aff95260 | ||
|
|
93ec7e56e6 | ||
|
|
cf47decf89 | ||
|
|
b27a449dc5 | ||
|
|
a7c7854617 | ||
|
|
89a8289f68 | ||
|
|
11685b9b7b | ||
|
|
607d67051f | ||
|
|
8e3409c4af | ||
|
|
6ebb7d928a | ||
|
|
509ca385d7 | ||
|
|
a1117d3403 | ||
|
|
d5a25fb0cc | ||
|
|
3b4f87bdbf | ||
|
|
43d403a019 | ||
|
|
2ba53504e1 | ||
|
|
2fe68caed9 | ||
|
|
f59fca14f8 | ||
|
|
39e17d6f68 | ||
|
|
e08456419c | ||
|
|
8405b789e9 | ||
|
|
db7095c0bb | ||
|
|
24229f1802 | ||
|
|
b7ec24fd1b | ||
|
|
574be4e134 | ||
|
|
9453520e2a | ||
|
|
35fff3e0cc | ||
|
|
dfcdaf9245 | ||
|
|
b4c5e79c1b | ||
|
|
7be11c4b7f | ||
|
|
03b83da513 | ||
|
|
ccd85b2436 | ||
|
|
53ad048763 | ||
|
|
85871aadfc | ||
|
|
61079367ef | ||
|
|
07e199ba11 | ||
|
|
92a55d49e5 | ||
|
|
ee86b0d152 | ||
|
|
53f3a902c1 | ||
|
|
05dba844d7 | ||
|
|
d44d4c2a79 | ||
|
|
a4f496b796 | ||
|
|
03ebd658ea | ||
|
|
77a33df023 | ||
|
|
588740f27b | ||
|
|
726349a2e0 | ||
|
|
fbac63d70e | ||
|
|
c7e4f52499 | ||
|
|
fdaabac210 | ||
|
|
76bb84d195 | ||
|
|
88e6bc5993 | ||
|
|
3feea66b49 | ||
|
|
6b589a8206 | ||
|
|
835e98d85d | ||
|
|
a2019876a2 | ||
|
|
dca196c315 | ||
|
|
85b7dc11ca | ||
|
|
03fd9dc829 | ||
|
|
a2f37c8470 | ||
|
|
d0a6d943e0 | ||
|
|
fa0f7856bf | ||
|
|
dac9b379dc | ||
|
|
a59b6a6f32 | ||
|
|
40674ad12b | ||
|
|
b0ad23d764 | ||
|
|
6db5f5c3f9 | ||
|
|
7b7b50fe1a | ||
|
|
73b15c7271 | ||
|
|
24b135ca4b | ||
|
|
86b9b5aa50 | ||
|
|
8918bff71f | ||
|
|
dd3766bce3 | ||
|
|
8310dd347d | ||
|
|
d6de03a2d0 |
1
.gitignore
vendored
@@ -8,6 +8,7 @@ exampleSite/content/**/
|
|||||||
!exmapleSite/content/about.md
|
!exmapleSite/content/about.md
|
||||||
!exampleSite/content/archives
|
!exampleSite/content/archives
|
||||||
!exampleSite/content/post
|
!exampleSite/content/post
|
||||||
|
!exampleSite/content/post/image-viewer
|
||||||
|
|
||||||
# Exclude special files in data folder
|
# Exclude special files in data folder
|
||||||
!exampleSite/data
|
!exampleSite/data
|
||||||
|
|||||||
57
README.md
@@ -1,7 +1,7 @@
|
|||||||
[中文](https://github.com/hugo-next/hugo-theme-next/blob/main/README.zh.md) | [English](#)
|
[中文](https://github.com/hugo-next/hugo-theme-next/blob/main/README.zh.md) | [English](#)
|
||||||
|
|
||||||
<a title="Hugo NexT Website" href="https://preview.hugo-next.eu.org">
|
<a title="Hugo NexT Website" href="https://preview.hugo-next.eu.org">
|
||||||
<img align="right" alt="NexT logo" width="266" src="https://lisenhui.gitee.io/imgs/hugo-next/logo/hugo-next-primary.png">
|
<img align="right" alt="NexT logo" width="266" src="images/hugo-next-primary.png">
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
## Hugo NexT
|
## Hugo NexT
|
||||||
@@ -10,7 +10,9 @@
|
|||||||
|
|
||||||
> All page designs & configuration compatibility with Hexo NexT, it's very easy migrate your site from Hexo to Hugo and enjoy yourself.
|
> All page designs & configuration compatibility with Hexo NexT, it's very easy migrate your site from Hexo to Hugo and enjoy yourself.
|
||||||
|
|
||||||
[](https://gitter.im/hugo-next/community) [](https://github.com/gohugoio/hugo/releases/latest) [](https://github.com/hugo-next/hugo-theme-next) [](https://github.com/hugo-next/hugo-theme-next/find/main) [](https://github.com/hugo-next/hugo-theme-next/blob/main/LICENSE)
|
[](https://gitter.im/hugo-next/community) [](https://github.com/gohugoio/hugo/releases/latest) [](https://github.com/hugo-next/hugo-theme-next) [](https://github.com/hugo-next/hugo-theme-next/graphs/contributors) [](https://github.com/hugo-next/hugo-theme-next/releases) [](https://github.com/hugo-next/hugo-theme-next/find/main) [](https://github.com/hugo-next/hugo-theme-next/blob/main/LICENSE)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## 🎨 4 Scheme
|
## 🎨 4 Scheme
|
||||||
|
|
||||||
@@ -21,10 +23,10 @@
|
|||||||
|
|
||||||
## 👀 Live Preview
|
## 👀 Live Preview
|
||||||
|
|
||||||
| Environment | :gemini: (**Default**) | :heart_decoration: | :six_pointed_star: | :pisces: | Status |
|
| Environment | :gemini: (**Default**) | :heart_decoration: | :six_pointed_star: | :pisces: | Status |
|
||||||
| :---: | :---: | :---: | :---: | :---: | :---: |
|
| :---------: | :-----------------------------------------: | :--------------------------------------------: | :--------------------------------------------: | :------------------------------------------------: | :-------------------------------------------------------------------------------------------------: |
|
||||||
| Preliminary | [Gemini](https://preview.hugo-next.eu.org/) | [Muse](https://preview.hugo-next.eu.org/muse/) | [Mist](https://preview.hugo-next.eu.org/mist/) | [Pisces](https://preview.hugo-next.eu.org/pisces/) |  |
|
| Preliminary | [Gemini](https://preview.hugo-next.eu.org/) | [Muse](https://preview.hugo-next.eu.org/muse/) | [Mist](https://preview.hugo-next.eu.org/mist/) | [Pisces](https://preview.hugo-next.eu.org/pisces/) |  |
|
||||||
| Production | [Gemini](https://hugo-next.eu.org/) | [Muse](https://hugo-next.eu.org/muse/) | [Mist](https://hugo-next.eu.org/mist/) | [Pisces](https://hugo-next.eu.org/pisces/) |  |
|
| Production | [Gemini](https://hugo-next.eu.org/) | [Muse](https://hugo-next.eu.org/muse/) | [Mist](https://hugo-next.eu.org/mist/) | [Pisces](https://hugo-next.eu.org/pisces/) |  |
|
||||||
|
|
||||||
> - Preliminary: all new feature developments will be previewed as soon as possible.
|
> - Preliminary: all new feature developments will be previewed as soon as possible.
|
||||||
> - Production: Only the features that are tested stably and meet the requirements will be officially released.
|
> - Production: Only the features that are tested stably and meet the requirements will be officially released.
|
||||||
@@ -33,12 +35,11 @@
|
|||||||
|
|
||||||
Before use `Hugo NexT` theme, please make sure installed `Git` & `Hugo Extened` software in your PC.
|
Before use `Hugo NexT` theme, please make sure installed `Git` & `Hugo Extened` software in your PC.
|
||||||
|
|
||||||
|
### 📰 Use Template
|
||||||
### 📰 Use Template
|
|
||||||
|
|
||||||
If there your first time build blog site, Recommended use template of `Github` which can easily create your site code. Click & visit this repository: [hugo-theme-next-starter](https://github.com/hugo-next/hugo-theme-next-starter), then click the green button which name call `Use this template` upper right corner on the page. Just like below image:
|
If there your first time build blog site, Recommended use template of `Github` which can easily create your site code. Click & visit this repository: [hugo-theme-next-starter](https://github.com/hugo-next/hugo-theme-next-starter), then click the green button which name call `Use this template` upper right corner on the page. Just like below image:
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
After do that click the green button which name call `Create repository from template`, then will create your site code automatic, and clone it on your PC environment.
|
After do that click the green button which name call `Create repository from template`, then will create your site code automatic, and clone it on your PC environment.
|
||||||
|
|
||||||
@@ -53,6 +54,16 @@ $ cp themes/hugo-theme-next/exampleSite/config.yaml .
|
|||||||
$ mv config.toml config.toml.backup
|
$ mv config.toml config.toml.backup
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Or use `Hugo module` to lead into the theme, see below commands:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ cd hugo-next-exmaple
|
||||||
|
$ hugo mod init hugo-next-exmaple
|
||||||
|
$ wget -O config.yaml https://github.com/hugo-next/hugo-theme-next/raw/main/exampleSite/config.yaml
|
||||||
|
$ sed -i 's/hugo-theme-next/github.com\/hugo-next\/hugo-theme-next\/v4/' config.yaml
|
||||||
|
$ mv config.toml config.toml.backup
|
||||||
|
```
|
||||||
|
|
||||||
### 💻 Preview on Local
|
### 💻 Preview on Local
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
@@ -74,6 +85,13 @@ $ cd hugo-next-exmaple
|
|||||||
$ git submodule update --remote
|
$ git submodule update --remote
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Execute command as below if you are using `Hugo module`:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ cd hugo-next-exmaple
|
||||||
|
$ hugo mod get -u
|
||||||
|
```
|
||||||
|
|
||||||
## 📝 New Post
|
## 📝 New Post
|
||||||
|
|
||||||
There had ready a new post template for you, It is recommended to use the following Hugo command to quickly create a new post:
|
There had ready a new post template for you, It is recommended to use the following Hugo command to quickly create a new post:
|
||||||
@@ -81,12 +99,12 @@ There had ready a new post template for you, It is recommended to use the follo
|
|||||||
```sh
|
```sh
|
||||||
$ hugo new posts/hello-world.md
|
$ hugo new posts/hello-world.md
|
||||||
```
|
```
|
||||||
|
|
||||||
> **Note**
|
> **Note**
|
||||||
> By defalut `hugo new` command will create new post under `content` root directory, so in here `posts` were you custom subfolder in `content` directory.
|
> By defalut `hugo new` command will create new post under `content` root directory, so in here `posts` were you custom subfolder in `content` directory.
|
||||||
|
|
||||||
All front matter parameters's description in post as below:
|
All front matter parameters's description in post as below:
|
||||||
|
|
||||||
|
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
title: "{{ replace .Name "-" " " | title }}"
|
title: "{{ replace .Name "-" " " | title }}"
|
||||||
@@ -170,11 +188,16 @@ That's my hobby to develop `Hugo NexT` theme, thanks all people who gived the do
|
|||||||
|
|
||||||
List of Donors(Order desc by Date):
|
List of Donors(Order desc by Date):
|
||||||
|
|
||||||
| Donation time | Donors | Donation mode | Donation content | Message |
|
| Donation time | Donors | Donation mode | Donation content | Message |
|
||||||
| :-------: | ------ | ------ | ---- | ---- |
|
| :-----------: | ------ | ------------- | ---------------- | -------------------------------------------------------------------------- |
|
||||||
| 2022.09.30 | *軒 | wechat pay | ¥66.66 | Hope it could help more people. |
|
| 2024.05.11 | *祥 | alipay | RMB 66.66 | Thank you for creating such a great theme. |
|
||||||
| 2022.09.30 | N*l | wechat pay | ¥20.00 | / |
|
| 2023.07.25 | *五 | alipay | RMB 50.00 | I really like the 'Next' theme, thank you, let me buy you a cup of coffee. |
|
||||||
| 2022.07.09 | *风 | wechat pay | ¥10.00 | / |
|
| 2023.06.01 | **霖 | alipay | RMB 10.00 | / |
|
||||||
| 2022.05.08 | *泉 | wechat pay | ¥6.60 | Good luck with next develop. |
|
| 2022.11.15 | f888 | xianyu | RMB 6.20 | Good luck. |
|
||||||
| 2022.02.28 | *娇 | wechat pay | ¥5.00 | / |
|
| 2022.09.30 | *軒 | wechat pay | RMB 66.66 | Hope it could help more people. |
|
||||||
| 2021.12.21 | z*y | wechat pay | ¥18.88 | / |
|
| 2022.09.30 | N*l | wechat pay | RMB 20.00 | / |
|
||||||
|
| 2022.07.09 | *风 | wechat pay | RMB 10.00 | / |
|
||||||
|
| 2022.05.08 | *泉 | wechat pay | RMB 6.60 | Good luck with next develop. |
|
||||||
|
| 2022.02.28 | *娇 | wechat pay | RMB 5.00 | / |
|
||||||
|
| 2021.12.21 | z*y | wechat pay | RMB 18.88 | / |
|
||||||
|
|
||||||
|
|||||||
53
README.zh.md
@@ -1,7 +1,7 @@
|
|||||||
[中文](#) | [English](https://github.com/hugo-next/hugo-theme-next/blob/main/README.md)
|
[中文](#) | [English](https://github.com/hugo-next/hugo-theme-next/blob/main/README.md)
|
||||||
|
|
||||||
<a title="Hugo NexT 站点" href="https://preview.hugo-next.eu.org">
|
<a title="Hugo NexT 站点" href="https://preview.hugo-next.eu.org">
|
||||||
<img align="right" alt="NexT logo" width="266" src="https://imgs.lisenhui.cn/hugo-next/logo/hugo-next-primary.png">
|
<img align="right" alt="NexT logo" width="266" src="images/hugo-next-primary.png">
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
## Hugo NexT
|
## Hugo NexT
|
||||||
@@ -10,7 +10,9 @@
|
|||||||
|
|
||||||
> 本主题的所有页面设计和配置项都与原来 `Hexo` 引擎的 `NexT` 主题保持了良好的兼容性,可以非常平滑的从 `Hexo` 迁移至 `Hugo` 引擎,欢迎大家使用并反馈。
|
> 本主题的所有页面设计和配置项都与原来 `Hexo` 引擎的 `NexT` 主题保持了良好的兼容性,可以非常平滑的从 `Hexo` 迁移至 `Hugo` 引擎,欢迎大家使用并反馈。
|
||||||
|
|
||||||
[](https://gitter.im/hugo-next/community) [](https://github.com/gohugoio/hugo/releases/latest) [](https://github.com/hugo-next/hugo-theme-next) [](https://github.com/hugo-next/hugo-theme-next/find/main) [](https://github.com/hugo-next/hugo-theme-next/blob/main/LICENSE)
|
[](https://gitter.im/hugo-next/community) [](https://github.com/gohugoio/hugo/releases/latest) [](https://github.com/hugo-next/hugo-theme-next) [](https://github.com/hugo-next/hugo-theme-next/graphs/contributors) [](https://github.com/hugo-next/hugo-theme-next/releases) [](https://github.com/hugo-next/hugo-theme-next/find/main) [](https://github.com/hugo-next/hugo-theme-next/blob/main/LICENSE)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## 🎨 4 种页面模式
|
## 🎨 4 种页面模式
|
||||||
|
|
||||||
@@ -21,10 +23,10 @@
|
|||||||
|
|
||||||
## 👀 在线预览
|
## 👀 在线预览
|
||||||
|
|
||||||
| 环境 | :gemini: (**Default**) | :heart_decoration: | :six_pointed_star: | :pisces: | 状态 |
|
| 环境 | :gemini: (**Default**) | :heart_decoration: | :six_pointed_star: | :pisces: | 状态 |
|
||||||
| :---: | :---: | :---: | :---: | :---: | :---: |
|
| :------: | :-----------------------------------------: | :--------------------------------------------: | :--------------------------------------------: | :------------------------------------------------: | :-----------------------------------------------------------------------------------------: |
|
||||||
| 开发版本 | [双子座](https://preview.hugo-next.eu.org/) | [冥想](https://preview.hugo-next.eu.org/muse/) | [迷雾](https://preview.hugo-next.eu.org/mist/) | [双鱼座](https://preview.hugo-next.eu.org/pisces/) |  |
|
| 开发版本 | [双子座](https://preview.hugo-next.eu.org/) | [冥想](https://preview.hugo-next.eu.org/muse/) | [迷雾](https://preview.hugo-next.eu.org/mist/) | [双鱼座](https://preview.hugo-next.eu.org/pisces/) |  |
|
||||||
| 正式版本 | [双子座](https://hugo-next.eu.org/) | [冥想](https://hugo-next.eu.org/muse/) | [迷雾](https://hugo-next.eu.org/mist/) | [双鱼座](https://hugo-next.eu.org/pisces/) |  |
|
| 正式版本 | [双子座](https://hugo-next.eu.org/) | [冥想](https://hugo-next.eu.org/muse/) | [迷雾](https://hugo-next.eu.org/mist/) | [双鱼座](https://hugo-next.eu.org/pisces/) |  |
|
||||||
|
|
||||||
> - 开发版本: 所有的新功能开发都会在此第一时间发布预览
|
> - 开发版本: 所有的新功能开发都会在此第一时间发布预览
|
||||||
> - 正式版本: 只有测试稳定且符合要求的功能才会正式发布
|
> - 正式版本: 只有测试稳定且符合要求的功能才会正式发布
|
||||||
@@ -37,7 +39,7 @@
|
|||||||
|
|
||||||
如果你是初次建站的话,可以使用 `Github` 的模板功能,一键生成你的站点仓库代码。访问 [hugo-theme-next-starter](https://github.com/hugo-next/hugo-theme-next-starter) 点击右上角的 `Use this template` 绿色按钮然后填写代码仓库的相关信息,参考如下:
|
如果你是初次建站的话,可以使用 `Github` 的模板功能,一键生成你的站点仓库代码。访问 [hugo-theme-next-starter](https://github.com/hugo-next/hugo-theme-next-starter) 点击右上角的 `Use this template` 绿色按钮然后填写代码仓库的相关信息,参考如下:
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
最后点击 `Create repository from template` 绿色按钮,会直接在你的空间中生成站点代码,再把它克隆到本地进行创作。
|
最后点击 `Create repository from template` 绿色按钮,会直接在你的空间中生成站点代码,再把它克隆到本地进行创作。
|
||||||
|
|
||||||
@@ -52,6 +54,16 @@ $ cp themes/hugo-theme-next/exampleSite/config.yaml .
|
|||||||
$ mv config.toml config.toml.backup
|
$ mv config.toml config.toml.backup
|
||||||
```
|
```
|
||||||
|
|
||||||
|
或通过 `Hugo module` 模式引用本主题,参考如下命令:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ cd hugo-next-exmaple
|
||||||
|
$ hugo mod init hugo-next-exmaple
|
||||||
|
$ wget -O config.yaml https://github.com/hugo-next/hugo-theme-next/raw/main/exampleSite/config.yaml
|
||||||
|
$ sed -i 's/hugo-theme-next/github.com\/hugo-next\/hugo-theme-next\/v4/' config.yaml
|
||||||
|
$ mv config.toml config.toml.backup
|
||||||
|
```
|
||||||
|
|
||||||
### 💻 本地预览
|
### 💻 本地预览
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
@@ -73,6 +85,13 @@ $ cd hugo-next-exmaple
|
|||||||
$ git submodule update --remote
|
$ git submodule update --remote
|
||||||
```
|
```
|
||||||
|
|
||||||
|
如使用 `Hugo module`,执行如下命令:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ cd hugo-next-exmaple
|
||||||
|
$ hugo mod get -u
|
||||||
|
```
|
||||||
|
|
||||||
> **Note**
|
> **Note**
|
||||||
> 本主题的代码同时也同步到 `Gitee` 仓库,在国内环境可切换用 [https://gitee.com/hugo-next/hugo-theme-next.git](https://gitee.com/hugo-next/hugo-theme-next.git) 镜像速度更快,也更稳定。
|
> 本主题的代码同时也同步到 `Gitee` 仓库,在国内环境可切换用 [https://gitee.com/hugo-next/hugo-theme-next.git](https://gitee.com/hugo-next/hugo-theme-next.git) 镜像速度更快,也更稳定。
|
||||||
|
|
||||||
@@ -89,7 +108,6 @@ $ hugo new posts/hello-world.md
|
|||||||
|
|
||||||
关于文章头部那些参数作用的说明参考如下:
|
关于文章头部那些参数作用的说明参考如下:
|
||||||
|
|
||||||
|
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
# 文章标题
|
# 文章标题
|
||||||
@@ -179,11 +197,16 @@ Copyright (c) 2022, hugo-next 团队
|
|||||||
|
|
||||||
以下是打赏名单列表(按时间倒序):
|
以下是打赏名单列表(按时间倒序):
|
||||||
|
|
||||||
| 打赏时间 | 打赏者 | 打赏方式 | 打赏内容 | 留言 |
|
| 打赏时间 | 打赏者 | 打赏方式 | 打赏内容 | 留言 |
|
||||||
| :-------: | ------ | ------ | ---- | ---- |
|
| :--------: | ------ | -------- | -------- | -------------------------------- |
|
||||||
| 2022.09.30 | *軒 | 微信支付 | ¥66.66 | 愿项目造福更多人! |
|
| 2024.05.11 | *祥 | 支付宝 | ¥66.66 | 感谢创作这么好的主题 |
|
||||||
| 2022.09.30 | N*l | 微信支付 | ¥20.00 | / |
|
| 2023.07.25 | *五 | 微信支付 | ¥50.00 | 很喜欢next主题,感谢,请你喝咖啡 |
|
||||||
| 2022.07.09 | *风 | 微信支付 | ¥10.00 | / |
|
| 2023.06.01 | **霖 | 支付宝 | ¥10.00 | / |
|
||||||
| 2022.05.08 | *泉 | 微信支付 | ¥6.60 | 祝开发next顺利 |
|
| 2022.11.15 | f888 | 咸鱼 | ¥6.20 | 聊表心意 |
|
||||||
| 2022.02.28 | *娇 | 微信支付 | ¥5.00 | / |
|
| 2022.09.30 | *軒 | 微信支付 | ¥66.66 | 愿项目造福更多人! |
|
||||||
| 2021.12.21 | z*y | 微信支付 | ¥18.88 | / |
|
| 2022.09.30 | N*l | 微信支付 | ¥20.00 | / |
|
||||||
|
| 2022.07.09 | *风 | 微信支付 | ¥10.00 | / |
|
||||||
|
| 2022.05.08 | *泉 | 微信支付 | ¥6.60 | 祝开发next顺利 |
|
||||||
|
| 2022.02.28 | *娇 | 微信支付 | ¥5.00 | / |
|
||||||
|
| 2021.12.21 | z*y | 微信支付 | ¥18.88 | / |
|
||||||
|
|
||||||
|
|||||||
@@ -15,14 +15,23 @@
|
|||||||
list-style: none;
|
list-style: none;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
|
||||||
|
|
||||||
.category-list-item {
|
.category-list-item:before {
|
||||||
margin: 5px 10px;
|
font-family: var(--fa-style-family,"Font Awesome 6 Free");
|
||||||
|
font-weight: var(--fa-style,900);
|
||||||
|
content: "\f07c";
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.category-list-item {
|
||||||
|
margin: 5px 10px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.category-list-count {
|
.category-list-count {
|
||||||
color: $grey;
|
color: $grey;
|
||||||
|
padding: 0 2px;
|
||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
content: ' (';
|
content: ' (';
|
||||||
@@ -33,7 +42,19 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.category-list-child {
|
.category-children-list {
|
||||||
padding-left: 10px;
|
padding-left: 38px;
|
||||||
|
list-style: none;
|
||||||
|
|
||||||
|
.category-children-list-item:before {
|
||||||
|
font-family: var(--fa-style-family,"Font Awesome 6 Free");
|
||||||
|
font-weight: var(--fa-style,900);
|
||||||
|
content: "\f0ae";
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.category-children-list-item {
|
||||||
|
font-size: 0.925em;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,6 +59,10 @@
|
|||||||
@include post-card();
|
@include post-card();
|
||||||
border: none;
|
border: none;
|
||||||
background: none;
|
background: none;
|
||||||
|
|
||||||
|
li {
|
||||||
|
word-break: break-all;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -113,3 +113,8 @@
|
|||||||
flex-basis: 100%;
|
flex-basis: 100%;
|
||||||
height: 0;
|
height: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#comments-count {
|
||||||
|
cursor: pointer;
|
||||||
|
border-bottom: 1px solid $link-decoration-color;
|
||||||
|
}
|
||||||
|
|||||||
@@ -47,6 +47,14 @@
|
|||||||
|
|
||||||
img {
|
img {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
max-width: 50px;
|
||||||
|
@include mobile() {
|
||||||
|
max-width: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:last-child {
|
||||||
|
max-height: 18px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$footer_vendors_imgs_len: length($footer_vendors_imgs_width);
|
$footer_vendors_imgs_len: length($footer_vendors_imgs_width);
|
||||||
|
|||||||
@@ -1,12 +1,26 @@
|
|||||||
// Menu
|
// Menu
|
||||||
// --------------------------------------------------
|
// --------------------------------------------------
|
||||||
.menu {
|
.menu, .menu-children {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 1em 0;
|
padding: 1em 0;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.menu-item {
|
.menu-children {
|
||||||
|
max-height: 0;
|
||||||
|
padding: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
transition: max-height 1.5s ease-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-children {
|
||||||
|
&.expand {
|
||||||
|
max-height: 400px;
|
||||||
|
transition: max-height 1.5s ease-in;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-item, .menu-child-item {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
margin: 0 10px;
|
margin: 0 10px;
|
||||||
@@ -51,6 +65,15 @@
|
|||||||
margin-left: 0;
|
margin-left: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.menu-item-shrink-icon {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-child-item {
|
||||||
|
display: block;
|
||||||
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.use-motion .menu-item {
|
.use-motion .menu-item {
|
||||||
|
|||||||
@@ -99,7 +99,7 @@
|
|||||||
@if $icon {
|
@if $icon {
|
||||||
content: $icon;
|
content: $icon;
|
||||||
}
|
}
|
||||||
font-family: 'Font Awesome 5 Free';
|
font-family: 'Font Awesome 6 Free';
|
||||||
font-weight: 900;
|
font-weight: 900;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -34,6 +34,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// a + ul {
|
||||||
|
// top: calc(30% + 5px);
|
||||||
|
// }
|
||||||
|
|
||||||
.badge {
|
.badge {
|
||||||
background: white;
|
background: white;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
@@ -41,5 +45,24 @@
|
|||||||
padding: 1px 4px;
|
padding: 1px 4px;
|
||||||
text-shadow: 1px 1px 0 rgba(0, 0, 0, .1);
|
text-shadow: 1px 1px 0 rgba(0, 0, 0, .1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.menu-item-shrink-icon {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-children {
|
||||||
|
display: none;
|
||||||
|
transition: transform 1s ease-in-out;
|
||||||
|
transform: translateY(-100%);
|
||||||
|
// position: absolute;
|
||||||
|
// z-index: 999;
|
||||||
|
|
||||||
|
&.expand {
|
||||||
|
display: block;
|
||||||
|
max-height: 400px;
|
||||||
|
transition: transform 1.5s ease-in;
|
||||||
|
transform: translateY(-100%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,4 +43,4 @@
|
|||||||
top: 50%;
|
top: 50%;
|
||||||
width: 6px;
|
width: 6px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
// CSS Style Guide : https://codeguide.co/#css
|
// CSS Style Guide : https://codeguide.co/#css
|
||||||
// All variables from site's config content.
|
// All variables from site's config content.
|
||||||
{{- $P := .Site.Params }}
|
{{ $P := .Site.Params }}
|
||||||
// Base
|
// Base
|
||||||
$scheme : {{ $P.scheme }};
|
$scheme : {{ $P.scheme }};
|
||||||
$darkmode : {{ $P.darkmode }};
|
$darkmode : {{ $P.darkmode }};
|
||||||
@@ -129,18 +129,18 @@ $disqusjs_enable : false;
|
|||||||
$livere_enable : {{ isset $P "livere" }};
|
$livere_enable : {{ isset $P "livere" }};
|
||||||
$utterances_enable : {{ isset $P "utterances" }};
|
$utterances_enable : {{ isset $P "utterances" }};
|
||||||
$waline_enable : {{ isset $P "waline" }};
|
$waline_enable : {{ isset $P "waline" }};
|
||||||
{{- with .Site.Params.comments }}
|
{{ with .Site.Params.comments }}
|
||||||
{{- $tce := and (isset . "nav") (and .storage (gt (len .nav) 1)) }}
|
{{ $tce := and (isset . "nav") (and .storage (gt (len .nav) 1)) }}
|
||||||
$two_comments_enable : {{ $tce }};
|
$two_comments_enable : {{ $tce }};
|
||||||
{{- if $tce }}
|
{{ if $tce }}
|
||||||
{{- $sortNav := sort .nav "weight" }}
|
{{ $sortNav := sort .nav "weight" }}
|
||||||
$two_comments_actived : {{ .active }};
|
$two_comments_actived : {{ .active }};
|
||||||
$first_comment_color : {{ (index $sortNav 0).color }};
|
$first_comment_color : {{ (index $sortNav 0).color }};
|
||||||
$first_comment_name : {{ lower (index $sortNav 0).name }};
|
$first_comment_name : {{ lower (index $sortNav 0).name }};
|
||||||
$second_comment_color : {{ (index $sortNav 1).color }};
|
$second_comment_color : {{ (index $sortNav 1).color }};
|
||||||
$second_comment_name : {{ lower (index $sortNav 1).name }};
|
$second_comment_name : {{ lower (index $sortNav 1).name }};
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Variables Layer
|
// Variables Layer
|
||||||
@@ -175,9 +175,4 @@ $second_comment_name : {{ lower (index $sortNav 1).name }};
|
|||||||
|
|
||||||
// Schemes Layer
|
// Schemes Layer
|
||||||
// --------------------------------------------------
|
// --------------------------------------------------
|
||||||
{{ printf "@import '_schemes/%s/';" $P.scheme }}
|
{{ printf "@import '_schemes/%s/';" $P.scheme }}
|
||||||
|
|
||||||
// Custom Layer
|
|
||||||
// TODO
|
|
||||||
// --------------------------------------------------
|
|
||||||
// @import 'theme.injects.style';
|
|
||||||
@@ -17,6 +17,7 @@
|
|||||||
|
|
||||||
NexT.boot.registerEvents = function() {
|
NexT.boot.registerEvents = function() {
|
||||||
|
|
||||||
|
NexT.utils.registerMenuClick();
|
||||||
NexT.utils.registerImageLoadEvent();
|
NexT.utils.registerImageLoadEvent();
|
||||||
NexT.utils.registerScrollPercent();
|
NexT.utils.registerScrollPercent();
|
||||||
// NexT.utils.registerCanIUseTag();
|
// NexT.utils.registerCanIUseTag();
|
||||||
@@ -24,6 +25,14 @@ NexT.boot.registerEvents = function() {
|
|||||||
// Register comment's components
|
// Register comment's components
|
||||||
NexT.plugins.register();
|
NexT.plugins.register();
|
||||||
|
|
||||||
|
// Register comment counter click event
|
||||||
|
const commentCnt = document.querySelector('#comments-count');
|
||||||
|
if (commentCnt && NexT.CONFIG.page.isPage) {
|
||||||
|
commentCnt.addEventListener('click', event => {
|
||||||
|
NexT.utils.slidScrollBarAnime('comments');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Mobile top menu bar.
|
// Mobile top menu bar.
|
||||||
document.querySelector('.site-nav-toggle .toggle').addEventListener('click', event => {
|
document.querySelector('.site-nav-toggle .toggle').addEventListener('click', event => {
|
||||||
event.currentTarget.classList.toggle('toggle-close');
|
event.currentTarget.classList.toggle('toggle-close');
|
||||||
@@ -62,7 +71,7 @@ NexT.boot.refresh = function() {
|
|||||||
NexT.utils.registerCommonSwitch();
|
NexT.utils.registerCommonSwitch();
|
||||||
NexT.utils.domAddClass('#goto-comments', 'goto-comments-on');
|
NexT.utils.domAddClass('#goto-comments', 'goto-comments-on');
|
||||||
} else {
|
} else {
|
||||||
NexT.utils.hideCommontes();
|
NexT.utils.hideComments();
|
||||||
}
|
}
|
||||||
NexT.utils.registerImageViewer();
|
NexT.utils.registerImageViewer();
|
||||||
|
|
||||||
|
|||||||
42
assets/js/third-party/others/counter.js
vendored
@@ -1,35 +1,31 @@
|
|||||||
/* Page's view & comment counter plugin */
|
/* Page's view & comment counter plugin */
|
||||||
NexT.plugins.others.counter = function() {
|
NexT.plugins.others.counter = function() {
|
||||||
let busz_postview = false;
|
|
||||||
let pageview_js = undefined;
|
let pageview_js = undefined;
|
||||||
let comment_js = undefined;
|
let comment_js = undefined;
|
||||||
|
|
||||||
const busz = NexT.CONFIG.busuanzi;
|
const post_meta = NexT.CONFIG.postmeta;
|
||||||
if (busz != undefined && busz.pageview) {
|
|
||||||
busz_postview = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Here can append others pageview & comment plugin
|
const views = post_meta.views;
|
||||||
const waline = NexT.CONFIG.waline;
|
if(views != undefined && views.enable) {
|
||||||
if (waline != undefined){
|
if (views.plugin == 'waline') {
|
||||||
if(!busz_postview && waline.cfg.pageview) {
|
pageview_js = NexT.utils.getCDNResource(NexT.CONFIG.page.waline.js[0]);
|
||||||
pageview_js = NexT.utils.getCDNResource(NexT.CONFIG.page.waline.js[0]);
|
NexT.utils.getScript(pageview_js, function(){
|
||||||
NexT.utils.getScript(pageview_js, function(){
|
Waline.pageviewCount({
|
||||||
Waline.pageviewCount({
|
serverURL: NexT.CONFIG.waline.cfg.serverurl
|
||||||
serverURL: waline.cfg.serverurl
|
});
|
||||||
});
|
});
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (waline.cfg.comment) {
|
const comments = post_meta.comments;
|
||||||
comment_js = NexT.utils.getCDNResource(NexT.CONFIG.page.waline.js[1]);
|
if (comments != undefined && comments.enable) {
|
||||||
NexT.utils.getScript(comment_js, function(){
|
if (comments.plugin == 'waline') {
|
||||||
Waline.commentCount({
|
comment_js = NexT.utils.getCDNResource(NexT.CONFIG.page.waline.js[1]);
|
||||||
serverURL: waline.cfg.serverurl
|
NexT.utils.getScript(comment_js, function(){
|
||||||
|
Waline.commentCount({
|
||||||
|
serverURL: NexT.CONFIG.waline.cfg.serverurl
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -7,6 +7,29 @@ HTMLElement.prototype.wrap = function (wrapper) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
NexT.utils = {
|
NexT.utils = {
|
||||||
|
registerMenuClick: function() {
|
||||||
|
const pMenus = document.querySelectorAll('.main-menu > li > a.menus-parent');
|
||||||
|
pMenus.forEach(function(item) {
|
||||||
|
const icon = item.querySelector('span > i');
|
||||||
|
var ul = item.nextElementSibling;
|
||||||
|
|
||||||
|
item.addEventListener('click', function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
|
||||||
|
ul.classList.toggle('expand');
|
||||||
|
if (ul.classList.contains('expand')) {
|
||||||
|
icon.className = 'fa fa-angle-down';
|
||||||
|
} else {
|
||||||
|
icon.className = 'fa fa-angle-right';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var cCls = ul.querySelectorAll('.menu-item-active');
|
||||||
|
if (cCls != null && cCls.length > 0) {
|
||||||
|
item.click();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
registerImageLoadEvent: function() {
|
registerImageLoadEvent: function() {
|
||||||
const images = document.querySelectorAll('.sidebar img, .post-block img, .vendors-list img');
|
const images = document.querySelectorAll('.sidebar img, .post-block img, .vendors-list img');
|
||||||
|
|
||||||
@@ -35,7 +58,10 @@ NexT.utils = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
registerImageViewer: function() {
|
registerImageViewer: function() {
|
||||||
new Viewer(document.querySelector('.post-body'),{ navbar:2, toolbar:2 });
|
const post_body = document.querySelector('.post-body');
|
||||||
|
if (post_body) {
|
||||||
|
new Viewer(post_body,{ navbar:2, toolbar:2 });
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
registerToolButtons: function () {
|
registerToolButtons: function () {
|
||||||
@@ -59,11 +85,13 @@ NexT.utils = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
slidScrollBarAnime: function (targetId, easing = 'linear', duration = 500) {
|
slidScrollBarAnime: function (targetId, easing = 'linear', duration = 500) {
|
||||||
|
const targetObj = document.getElementById(targetId);
|
||||||
|
|
||||||
window.anime({
|
window.anime({
|
||||||
targets: document.scrollingElement,
|
targets: document.scrollingElement,
|
||||||
duration: duration,
|
duration: duration,
|
||||||
easing: easing,
|
easing: easing,
|
||||||
scrollTop: targetId == '' ? 0 : document.getElementById(targetId).getBoundingClientRect().top + window.scrollY
|
scrollTop: targetId == '' || !targetObj ? 0 : targetObj.getBoundingClientRect().top + window.scrollY
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -213,25 +241,25 @@ NexT.utils = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
getCDNResource: function (res) {
|
getCDNResource: function (res) {
|
||||||
let { plugins, router } = NexT.CONFIG.vendor;
|
|
||||||
let { name, version, file, alias, alias_name } = res;
|
|
||||||
|
|
||||||
let npm_name = name;
|
let router = NexT.CONFIG.vendor.router;
|
||||||
if (alias_name) npm_name = alias_name;
|
let { name, version, file, alias, alias_name } = res;
|
||||||
|
|
||||||
let res_src = '';
|
let res_src = '';
|
||||||
switch (plugins) {
|
|
||||||
case 'cdnjs':
|
switch (router.type) {
|
||||||
case 'bootcdn':
|
case "modern":
|
||||||
case 'qiniu':
|
if (alias_name) name = alias_name;
|
||||||
let cdnjs_name = alias || name;
|
let alias_file = file.replace(/^(dist|lib|source|\/js|)\/(browser\/|)/, '');
|
||||||
let cdnjs_file = file.replace(/^(dist|lib|source|\/js|)\/(browser\/|)/, '');
|
if (alias_file.indexOf('min') == -1) {
|
||||||
if (cdnjs_file.indexOf('min') == -1) {
|
alias_file = alias_file.replace(/\.js$/, '.min.js');
|
||||||
cdnjs_file = cdnjs_file.replace(/\.js$/, '.min.js');
|
|
||||||
}
|
}
|
||||||
res_src = `${router}/${cdnjs_name}/${version}/${cdnjs_file}`
|
res_src = `${router.url}/${name}/${version}/${alias_file}`;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
res_src = `${router}/${npm_name}@${version}/${file}`
|
if (alias) name = alias;
|
||||||
|
res_src = `${router.url}/${name}@${version}/${file}`;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return res_src;
|
return res_src;
|
||||||
@@ -253,7 +281,7 @@ NexT.utils = {
|
|||||||
const button = element.querySelector('.copy-btn');
|
const button = element.querySelector('.copy-btn');
|
||||||
button.addEventListener('click', () => {
|
button.addEventListener('click', () => {
|
||||||
const lines = element.querySelector('.code') || element.querySelector('code');
|
const lines = element.querySelector('.code') || element.querySelector('code');
|
||||||
const code = lines.innerText;
|
const code = lines.innerText.replace(/(\n{2,})/g, '\n');
|
||||||
if (navigator.clipboard) {
|
if (navigator.clipboard) {
|
||||||
// https://caniuse.com/mdn-api_clipboard_writetext
|
// https://caniuse.com/mdn-api_clipboard_writetext
|
||||||
navigator.clipboard.writeText(code).then(() => {
|
navigator.clipboard.writeText(code).then(() => {
|
||||||
@@ -481,8 +509,11 @@ NexT.utils = {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
hideCommontes: function () {
|
hideComments: function () {
|
||||||
document.querySelector('.post-comments').style.display = 'none';
|
let postComments = document.querySelector('.post-comments');
|
||||||
|
if (postComments !== null) {
|
||||||
|
postComments.style.display = 'none';
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
hiddeLodingCmp: function (selector) {
|
hiddeLodingCmp: function (selector) {
|
||||||
@@ -642,4 +673,4 @@ NexT.utils = {
|
|||||||
intersectionObserver.observe(element);
|
intersectionObserver.observe(element);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# Hugo NexT theme's custom config
|
# Hugo NexT theme's custom config
|
||||||
|
|
||||||
version: 4.4.0
|
version: 4.6.2
|
||||||
|
|
||||||
domain: hugo-next.eu.org
|
domain: hugo-next.eu.org
|
||||||
@@ -1,33 +1,79 @@
|
|||||||
# CDN 公共资源商列表
|
# CDN 公共资源商列表
|
||||||
# Public CDN vendor list
|
# Public CDN vendor list
|
||||||
vendors:
|
vendors:
|
||||||
cdnjs: "https://cdnjs.cloudflare.com/ajax/libs"
|
- name: cdnjs
|
||||||
unpkg: "https://unpkg.com"
|
home: "https://cdnjs.com"
|
||||||
bootcdn: "https://cdn.bootcdn.net/ajax/libs"
|
logo: "https://cdnjs.com/_/f7a2ebfb819c118086546e481876aef6.svg"
|
||||||
qiniu: "https://cdn.staticfile.org"
|
type: "modern"
|
||||||
|
url: "https://cdnjs.cloudflare.com/ajax/libs"
|
||||||
|
|
||||||
|
- name: unpkg
|
||||||
|
home: "https://unpkg.com"
|
||||||
|
logo: "https://unpkg.fly.dev/_client/b870d5fb04d2854d.png"
|
||||||
|
type: "nodejs"
|
||||||
|
url: "https://unpkg.com"
|
||||||
|
|
||||||
|
- name: bootcdn
|
||||||
|
home: "https://www.bootcdn.cn"
|
||||||
|
logo: "https://www.bootcdn.cn/assets/img/logo.png"
|
||||||
|
type: "modern"
|
||||||
|
url: "https://cdn.bootcdn.net/ajax/libs"
|
||||||
|
|
||||||
|
- name: staticfile
|
||||||
|
home: "https://staticfile.net/"
|
||||||
|
logo: "https://www.staticfile.net/images/logo.png"
|
||||||
|
type: "modern"
|
||||||
|
url: "https://cdn.staticfile.net"
|
||||||
|
|
||||||
|
- name: 7ed
|
||||||
|
home: "https://www.7ed.net"
|
||||||
|
logo: "https://github.com/7ednet/homepage/raw/main/_images/logo.svg"
|
||||||
|
type: "modern"
|
||||||
|
url: "https://use.sevencdn.com/ajax/libs"
|
||||||
|
|
||||||
|
- name: zstatic
|
||||||
|
home: "https://www.zstatic.net"
|
||||||
|
logo: "https://www.zstatic.net/favicon/favicon-16x16.png"
|
||||||
|
type: "modern"
|
||||||
|
url: "https://s4.zstatic.net/ajax/libs"
|
||||||
|
|
||||||
|
- name: zeyao
|
||||||
|
home: "https://cdn.jsdmirror.com/"
|
||||||
|
logo: "https://img.cuteapi.com/2023/08/29/Background.png"
|
||||||
|
type: "nodejs"
|
||||||
|
url: "https://cdn.jsdmirror.com/npm"
|
||||||
|
|
||||||
|
- name: jsdelivr
|
||||||
|
home: "https://www.jsdelivr.com/"
|
||||||
|
logo: "https://www.jsdelivr.com/assets/0c183396fdb0079ea31849b02bc5e3429f1740de/img/jsdelivr-horizontal-regular.svg"
|
||||||
|
type: "nodejs"
|
||||||
|
url: "https://cdn.jsdelivr.net/npm"
|
||||||
|
|
||||||
# JavaScript 资源
|
# JavaScript 资源
|
||||||
# JavaScript Resources
|
# JavaScript Resources
|
||||||
js:
|
js:
|
||||||
- name: animejs
|
- name: animejs
|
||||||
version: 3.2.1
|
version: 3.2.2
|
||||||
file: lib/anime.min.js
|
file: lib/anime.min.js
|
||||||
|
|
||||||
- name: viewerjs
|
- name: viewerjs
|
||||||
version: 1.11.0
|
version: 1.11.6
|
||||||
file: dist/viewer.min.js
|
file: dist/viewer.min.js
|
||||||
|
|
||||||
# CSS 资源
|
# CSS 资源
|
||||||
# CSS Resources
|
# CSS Resources
|
||||||
css:
|
css:
|
||||||
- name: '@fortawesome/fontawesome-free'
|
- name: font-awesome
|
||||||
version: 6.1.2
|
version: 6.6.0
|
||||||
file: css/all.min.css
|
file: css/all.min.css
|
||||||
alias: font-awesome
|
alias: '@fortawesome/fontawesome-free'
|
||||||
|
|
||||||
- name: animate.css
|
- name: animate.css
|
||||||
version: 3.1.1
|
version: 4.1.1
|
||||||
file: animate.min.css
|
file: animate.min.css
|
||||||
|
|
||||||
- name: viewerjs
|
- name: viewerjs
|
||||||
version: 1.11.0
|
version: 1.11.6
|
||||||
file: dist/viewer.min.css
|
file: dist/viewer.min.css
|
||||||
|
|
||||||
# 第三方服务组件资源
|
# 第三方服务组件资源
|
||||||
@@ -51,25 +97,27 @@ addthis:
|
|||||||
# Comment component
|
# Comment component
|
||||||
waline:
|
waline:
|
||||||
js:
|
js:
|
||||||
name: '@waline/client'
|
name: waline
|
||||||
version: 2.13.0
|
version: 2.15.8
|
||||||
file: dist/waline.js
|
file: dist/waline.js
|
||||||
alias: waline
|
alias: "@waline/client"
|
||||||
|
|
||||||
css:
|
css:
|
||||||
name: '@waline/client'
|
name: waline
|
||||||
version: 2.13.0
|
version: 2.15.8
|
||||||
file: dist/waline.css
|
file: dist/waline.css
|
||||||
alias: waline
|
alias: "@waline/client"
|
||||||
|
|
||||||
artalk:
|
artalk:
|
||||||
js:
|
js:
|
||||||
name: artalk
|
name: artalk
|
||||||
version: 2.3.4
|
version: 2.6.4
|
||||||
file: dist/Artalk.js
|
file: dist/Artalk.min.js
|
||||||
|
|
||||||
css:
|
css:
|
||||||
name: artalk
|
name: artalk
|
||||||
version: 2.3.4
|
version: 2.6.4
|
||||||
file: dist/Artalk.css
|
file: dist/Artalk.min.css
|
||||||
|
|
||||||
giscus:
|
giscus:
|
||||||
js: https://giscus.app/client.js
|
js: https://giscus.app/client.js
|
||||||
@@ -84,11 +132,12 @@ livere:
|
|||||||
# Full text search
|
# Full text search
|
||||||
algolia:
|
algolia:
|
||||||
name: algoliasearch
|
name: algoliasearch
|
||||||
version: 4.14.2
|
version: 4.24.0
|
||||||
file: dist/algoliasearch-lite.umd.js
|
file: dist/algoliasearch-lite.umd.js
|
||||||
|
|
||||||
instant:
|
instant:
|
||||||
name: instantsearch.js
|
name: instantsearch.js
|
||||||
version: 4.49.0
|
version: 4.73.2
|
||||||
file: dist/instantsearch.production.min.js
|
file: dist/instantsearch.production.min.js
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
@@ -96,39 +145,45 @@ plugins:
|
|||||||
mathjax:
|
mathjax:
|
||||||
js:
|
js:
|
||||||
name: mathjax
|
name: mathjax
|
||||||
version: 3.2.0
|
version: 3.2.2
|
||||||
file: es5/tex-mml-chtml.js
|
file: es5/tex-mml-chtml.js
|
||||||
|
|
||||||
katex:
|
katex:
|
||||||
js:
|
js:
|
||||||
- name: katex
|
- name: katex
|
||||||
version: 0.16.0
|
alias_name: KaTeX
|
||||||
|
version: 0.16.9
|
||||||
file: dist/katex.min.js
|
file: dist/katex.min.js
|
||||||
|
|
||||||
- name: auto-render
|
- name: auto-render
|
||||||
alias_name: katex
|
alias: katex
|
||||||
version: 0.16.0
|
alias_name: KaTeX
|
||||||
|
version: 0.16.9
|
||||||
file: dist/contrib/auto-render.min.js
|
file: dist/contrib/auto-render.min.js
|
||||||
|
|
||||||
css:
|
css:
|
||||||
name: katex
|
name: katex
|
||||||
version: 0.16.0
|
alias_name: KaTeX
|
||||||
|
version: 0.16.9
|
||||||
file: dist/katex.min.css
|
file: dist/katex.min.css
|
||||||
|
|
||||||
# 画图渲染
|
# 画图渲染
|
||||||
mermaid:
|
mermaid:
|
||||||
js:
|
js:
|
||||||
name: mermaid
|
name: mermaid
|
||||||
version: 9.1.7
|
version: 10.9.1
|
||||||
file: dist/mermaid.min.js
|
file: dist/mermaid.min.js
|
||||||
# 文章访问/评论统计
|
# 文章访问/评论统计
|
||||||
waline:
|
waline:
|
||||||
js:
|
js:
|
||||||
- name: pageview
|
- name: pageview
|
||||||
alias_name: '@waline/client'
|
alias_name: waline
|
||||||
version: 2.13.0
|
version: 2.15.8
|
||||||
file: dist/pageview.js
|
file: dist/pageview.js
|
||||||
alias: waline
|
alias: "@waline/client"
|
||||||
|
|
||||||
- name: comment
|
- name: comment
|
||||||
alias_name: '@waline/client'
|
alias_name: waline
|
||||||
version: 2.13.0
|
version: 2.15.8
|
||||||
file: dist/comment.js
|
file: dist/comment.js
|
||||||
alias: waline
|
alias: "@waline/client"
|
||||||
|
|
||||||
|
|
||||||
@@ -298,11 +298,11 @@ params:
|
|||||||
# Posts / Categories / Tags in sidebar.
|
# Posts / Categories / Tags in sidebar.
|
||||||
basic: true
|
basic: true
|
||||||
# 站点访问信息
|
# 站点访问信息
|
||||||
# Site information
|
# Site's view information
|
||||||
statistic:
|
views:
|
||||||
enable: true
|
enable: true
|
||||||
# 组件类型,可选值为: 51la, busuanzi
|
# 组件类型,可选值为: 51la, busuanzi
|
||||||
# 使用51la时需要注册账号:https://invite.51.la/1NUfGTS1?target=V6
|
# 使用51la时需要注册账号:https://invite.51.la/
|
||||||
# Plguin value is: 51la, busuanzi
|
# Plguin value is: 51la, busuanzi
|
||||||
plugin: busuanzi
|
plugin: busuanzi
|
||||||
|
|
||||||
@@ -388,7 +388,7 @@ params:
|
|||||||
footer:
|
footer:
|
||||||
# 启动谷歌翻译功能
|
# 启动谷歌翻译功能
|
||||||
# Enable google translate in footer
|
# Enable google translate in footer
|
||||||
translate: true
|
translate: false
|
||||||
# 站点开始年份,默认为当下时间的年份
|
# 站点开始年份,默认为当下时间的年份
|
||||||
# Specify the year when the site was setup.
|
# Specify the year when the site was setup.
|
||||||
# If not defined, current year will be used.
|
# If not defined, current year will be used.
|
||||||
@@ -470,6 +470,7 @@ params:
|
|||||||
# 开启文章头部元素显示
|
# 开启文章头部元素显示
|
||||||
# Post meta display settings
|
# Post meta display settings
|
||||||
postMeta:
|
postMeta:
|
||||||
|
# 是否开启各元素的文字显示
|
||||||
itemText: true
|
itemText: true
|
||||||
created: true
|
created: true
|
||||||
updated:
|
updated:
|
||||||
@@ -478,6 +479,18 @@ params:
|
|||||||
categories: true
|
categories: true
|
||||||
wordCount: true
|
wordCount: true
|
||||||
readTime: true
|
readTime: true
|
||||||
|
# 是否开启评论数显示
|
||||||
|
comments:
|
||||||
|
enable: true
|
||||||
|
# 评论统计插件,暂只支持waline
|
||||||
|
# Comment counter plugin, only support waline
|
||||||
|
plugin: waline
|
||||||
|
# 是否开启页面访问数显示
|
||||||
|
views:
|
||||||
|
enable: true
|
||||||
|
# 页面访问统计插件,支持busuanzi, waline, leancloud
|
||||||
|
# Page views counter plugin, support: busuanzi, waline, leancloud
|
||||||
|
plugin: busuanzi
|
||||||
|
|
||||||
# 文章底部的设置
|
# 文章底部的设置
|
||||||
# Post footer settings
|
# Post footer settings
|
||||||
@@ -799,19 +812,17 @@ params:
|
|||||||
- name: waline
|
- name: waline
|
||||||
title: Waline
|
title: Waline
|
||||||
color: "#27ae60"
|
color: "#27ae60"
|
||||||
weight: 2
|
weight: 1
|
||||||
- name: giscus
|
- name: giscus
|
||||||
title: Giscus
|
title: Giscus
|
||||||
color: "#886ce4"
|
color: "#886ce4"
|
||||||
weight: 1
|
weight: 2
|
||||||
|
|
||||||
# Waline 评论插件
|
# Waline 评论插件
|
||||||
# 更多配置信息请参考:https://waline.js.org/
|
# 更多配置信息请参考:https://waline.js.org/
|
||||||
# Waline comments system
|
# Waline comments system
|
||||||
# More info seee: https://waline.js.org/
|
# More info seee: https://waline.js.org/
|
||||||
waline:
|
waline:
|
||||||
pageView: true
|
|
||||||
comment: true
|
|
||||||
placeholder: "请文明发言哟 ヾ(≧▽≦*)o"
|
placeholder: "请文明发言哟 ヾ(≧▽≦*)o"
|
||||||
sofa: "快来发表你的意见吧 (≧∀≦)ゞ"
|
sofa: "快来发表你的意见吧 (≧∀≦)ゞ"
|
||||||
emoji: false
|
emoji: false
|
||||||
@@ -937,8 +948,6 @@ params:
|
|||||||
busuanzi:
|
busuanzi:
|
||||||
visitorsIcon: fa fa-user
|
visitorsIcon: fa fa-user
|
||||||
viewsIcon: fa fa-eye
|
viewsIcon: fa fa-eye
|
||||||
postViews: true
|
|
||||||
|
|
||||||
|
|
||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
# 内容搜索服务
|
# 内容搜索服务
|
||||||
@@ -954,6 +963,9 @@ params:
|
|||||||
indexName: #<algolia index name>
|
indexName: #<algolia index name>
|
||||||
hits:
|
hits:
|
||||||
perPage: 10
|
perPage: 10
|
||||||
|
# 索引生成内容长度字数限制
|
||||||
|
# Index generation content length word count limit.
|
||||||
|
limit: 1000
|
||||||
|
|
||||||
# 本地搜索
|
# 本地搜索
|
||||||
# Local Search
|
# Local Search
|
||||||
@@ -977,6 +989,9 @@ params:
|
|||||||
# 页面加载时是否要重新载入索引文件
|
# 页面加载时是否要重新载入索引文件
|
||||||
# Preload the search data when the page loads.
|
# Preload the search data when the page loads.
|
||||||
preload: false
|
preload: false
|
||||||
|
# 索引生成内容长度字数限制
|
||||||
|
# Index generation content length word count limit.
|
||||||
|
limit: 1000
|
||||||
|
|
||||||
|
|
||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
@@ -1012,7 +1027,7 @@ params:
|
|||||||
# - flat flat callout style with background, like on Mozilla or StackOverflow.
|
# - flat flat callout style with background, like on Mozilla or StackOverflow.
|
||||||
# - disabled disable all CSS styles import of note tag.
|
# - disabled disable all CSS styles import of note tag.
|
||||||
style: simple
|
style: simple
|
||||||
icons: false
|
icons: true
|
||||||
# Offset lighter of background in % for modern and flat styles (modern: -12 | 12; flat: -18 | 6).
|
# Offset lighter of background in % for modern and flat styles (modern: -12 | 12; flat: -18 | 6).
|
||||||
# Offset also applied to label tag variables. This option can work with disabled note tag.
|
# Offset also applied to label tag variables. This option can work with disabled note tag.
|
||||||
lightBgOffset: 0
|
lightBgOffset: 0
|
||||||
@@ -1088,31 +1103,18 @@ params:
|
|||||||
|
|
||||||
|
|
||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
# CDN 服务(暂时只支持 unpkg 和 cndjs)
|
# CDN 服务
|
||||||
# CDN Settings
|
# CDN Settings
|
||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
|
|
||||||
vendors:
|
vendors:
|
||||||
vendors:
|
|
||||||
# The CDN provider of NexT internal scripts.
|
# The CDN provider of NexT internal scripts.
|
||||||
# Available values: local | unpkg | cdnjs | qiniu | bootcdn | custom
|
# Available values: local | cdn
|
||||||
# Warning: If you are using the latest master branch of NexT, please set `internal: local`
|
|
||||||
internal: local
|
internal: local
|
||||||
# The default CDN provider of third-party plugins.
|
# The default CDN provider of third-party plugins.
|
||||||
# Available values: local | unpkg | cdnjs| qiniu | bootcdn | custom
|
# Available values: local | cdnjs | unpkg | jsdelivr | staticfile | bootcdn | 7ed | zstatic | zeyao | custom
|
||||||
# Dependencies for `plugins: local`: https://github.com/next-theme/plugins
|
plugins: local
|
||||||
plugins: qiniu
|
|
||||||
# TODO
|
|
||||||
# Custom CDN URL
|
# Custom CDN URL
|
||||||
# For example:
|
# For example:
|
||||||
# custom_cdn_url: https://cdn.jsdelivr.net/npm/${npm_name}@${version}/${minified}
|
# custom_cdn_url: https://cdn.jsdelivr.net/npm/${npm_name}@${version}/${minified}
|
||||||
# custom_cdn_url: https://cdnjs.cloudflare.com/ajax/libs/${cdnjs_name}/${version}/${cdnjs_file}
|
# custom_cdn_url: https://cdnjs.cloudflare.com/ajax/libs/${cdnjs_name}/${version}/${cdnjs_file}
|
||||||
#custom_cdn_url:
|
|
||||||
|
|
||||||
# TODO
|
|
||||||
# Assets
|
|
||||||
# Accelerate delivery of static files using a CDN
|
|
||||||
# The js option is only valid when vendors.internal is local.
|
|
||||||
css: css
|
|
||||||
js: js
|
|
||||||
images: imgs
|
|
||||||
@@ -7,13 +7,14 @@ date: 2022-09-10T21:02:32+08:00
|
|||||||
lastmod: 2022-09-10T21:02:32+08:00
|
lastmod: 2022-09-10T21:02:32+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 示例文章
|
||||||
|
|
||||||
tags:
|
tags:
|
||||||
- 自定义
|
- 自定义
|
||||||
- 个性化
|
- 个性化
|
||||||
- 布局
|
- 布局
|
||||||
|
|
||||||
url: "post/custom-files.html"
|
url: "demo/custom-files.html"
|
||||||
toc: true
|
toc: true
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -38,7 +39,7 @@ customFilePath:
|
|||||||
|
|
||||||
{{< /note >}}
|
{{< /note >}}
|
||||||
|
|
||||||
然后在站点的根目录下创建 `layouts/partials` 2个目录,用于存放自定布局设计文件,另外在站点根目录下创建 `statics/css` 2个目录,用于存放自定义 CSS 样式文件。一切就绪后,就可以参考如下的步骤,完成自己的设计想法。
|
然后在站点的根目录下创建 `layouts/partials` 2个目录,用于存放自定布局设计文件,另外在站点根目录下创建 `static/css` 2个目录,用于存放自定义 CSS 样式文件。一切就绪后,就可以参考如下的步骤,完成自己的设计想法。
|
||||||
|
|
||||||
## 侧边栏设计
|
## 侧边栏设计
|
||||||
|
|
||||||
|
|||||||
@@ -7,12 +7,14 @@ date: 2022-06-04T19:46:45+08:00
|
|||||||
lastmod: 2022-06-04T19:46:45+08:00
|
lastmod: 2022-06-04T19:46:45+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 示例文章
|
||||||
|
- 语法
|
||||||
|
|
||||||
tags:
|
tags:
|
||||||
- 表情
|
- 表情
|
||||||
- emoji
|
- emoji
|
||||||
|
|
||||||
url: "post/emoji-support.html"
|
url: "demo/emoji-support.html"
|
||||||
---
|
---
|
||||||
|
|
||||||
Emoji 可以通过多种方式在 Hugo 项目中启用。
|
Emoji 可以通过多种方式在 Hugo 项目中启用。
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ date: 2022-06-01T15:59:41+08:00
|
|||||||
lastmod: 2022-06-01T15:59:41+08:00
|
lastmod: 2022-06-01T15:59:41+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 示例文章
|
||||||
tags:
|
tags:
|
||||||
- Hugo
|
- Hugo
|
||||||
- NexT
|
- NexT
|
||||||
|
|||||||
@@ -6,12 +6,13 @@ lastmod: 2022-06-03T16:43:23+08:00
|
|||||||
date: 2022-06-02T11:52:03+08:00
|
date: 2022-06-02T11:52:03+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 博客
|
- 开始建站
|
||||||
tags:
|
|
||||||
- Hugo
|
|
||||||
- 开始
|
|
||||||
|
|
||||||
url: post/hello-world.html
|
tags:
|
||||||
|
- Hugo
|
||||||
|
- 开始
|
||||||
|
|
||||||
|
url: demo/hello-world.html
|
||||||
toc: true
|
toc: true
|
||||||
weight: 2
|
weight: 2
|
||||||
---
|
---
|
||||||
|
|||||||
40
exampleSite/content/post/image-viewer.md
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
title: "图像浏览工具 "
|
||||||
|
description: "默认会对文章内的图片, 进行图片浏览,点击图片可以查看大图,点击空白处可以关闭。"
|
||||||
|
keywords: "image,图像,浏览器,相册"
|
||||||
|
|
||||||
|
date: 2024-07-21T10:28:12+08:00
|
||||||
|
lastmod: 2024-07-21T10:28:12+08:00
|
||||||
|
|
||||||
|
categories:
|
||||||
|
- 示例文章
|
||||||
|
|
||||||
|
tags:
|
||||||
|
- 图像
|
||||||
|
- 相册
|
||||||
|
- 浏览
|
||||||
|
|
||||||
|
url: "demo/image-viewer.html"
|
||||||
|
toc: false
|
||||||
|
---
|
||||||
|
|
||||||
|
本主题自带图像浏览器功能,支持对文章区域内出现的图片进行浏览,点击图片可以查看大图,点击空白处可以关闭。不需要配置任何参数,只要在文章里面相应的位置添加图片信息即可 。
|
||||||
|
|
||||||
|
<!--more-->
|
||||||
|
|
||||||
|
图像浏览器引用了 [fengyuanchen](https://fengyuanchen.github.io/) 开发的 [viewerjs](https://fengyuanchen.github.io/viewerjs/),支持显示图像名称,尺寸,旋转,缩放,播放等功能。可点击如下的示例图像查看体验:
|
||||||
|
|
||||||
|
## 动物
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
## 风景
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
After Width: | Height: | Size: 62 KiB |
BIN
exampleSite/content/post/image-viewer/preview_horses.jpg
Normal file
|
After Width: | Height: | Size: 147 KiB |
|
After Width: | Height: | Size: 95 KiB |
|
After Width: | Height: | Size: 120 KiB |
|
After Width: | Height: | Size: 103 KiB |
|
After Width: | Height: | Size: 59 KiB |
BIN
exampleSite/content/post/image-viewer/preview_sea-shell.jpg
Normal file
|
After Width: | Height: | Size: 121 KiB |
|
After Width: | Height: | Size: 117 KiB |
@@ -7,17 +7,19 @@ lastmod: 2022-06-03T11:52:18+08:00
|
|||||||
publishDate: 2022-06-03T11:52:18+08:00
|
publishDate: 2022-06-03T11:52:18+08:00
|
||||||
|
|
||||||
author: Mainroad
|
author: Mainroad
|
||||||
originLink: https://mainroad-demo.netlify.app/post/basic-elements/
|
originLink: https://mainroad-demo.netlify.app/demo/basic-elements/
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 示例文章
|
||||||
|
- Markdown语法
|
||||||
|
|
||||||
tags:
|
tags:
|
||||||
- Markdown
|
- Markdown
|
||||||
- 语法
|
- 语法
|
||||||
|
|
||||||
toc: false
|
toc: false
|
||||||
draft: false
|
draft: false
|
||||||
url: post/markdown-syntax.html
|
url: demo/markdown-syntax.html
|
||||||
---
|
---
|
||||||
|
|
||||||
仅以此篇文章来测试下在 `NexT` 主题中在通过 `Hugo` 引擎来建站时,是否支持 `Markdown` 文件内容中所写的各种语法,并展示下实际的效果。
|
仅以此篇文章来测试下在 `NexT` 主题中在通过 `Hugo` 引擎来建站时,是否支持 `Markdown` 文件内容中所写的各种语法,并展示下实际的效果。
|
||||||
@@ -206,4 +208,4 @@ X<sup>n</sup> + Y<sup>n</sup> = Z<sup>n</sup>
|
|||||||
<mark>比特作为信息论中的信息单位,也被称为 shannon </mark>,以信息论领域的创始人 Claude shannon 的名字命名。
|
<mark>比特作为信息论中的信息单位,也被称为 shannon </mark>,以信息论领域的创始人 Claude shannon 的名字命名。
|
||||||
|
|
||||||
参考:
|
参考:
|
||||||
- 来自 **Mainroad** 主题的 [Basic Elements](https://mainroad-demo.netlify.app/post/basic-elements/) 内容
|
- 来自 **Mainroad** 主题的 [Basic Elements](https://mainroad-demo.netlify.app/demo/basic-elements/) 内容
|
||||||
|
|||||||
@@ -7,14 +7,15 @@ date: 2022-09-11T10:16:02+08:00
|
|||||||
lastmod: 2022-09-11T10:16:02+08:00
|
lastmod: 2022-09-11T10:16:02+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 第三方引入
|
||||||
|
- 数学公式
|
||||||
tags:
|
tags:
|
||||||
- 数学公式
|
- 数学公式
|
||||||
- mathjax
|
- mathjax
|
||||||
- katex
|
- katex
|
||||||
|
|
||||||
|
|
||||||
url: "post/math-formula.html"
|
url: "demo/math-formula.html"
|
||||||
math: mathjax
|
math: mathjax
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -32,7 +33,7 @@ math: mathjax
|
|||||||
|
|
||||||
{{< /note >}}
|
{{< /note >}}
|
||||||
|
|
||||||
**注意:** 使用[支持的TeX功能](https://docs.mathjax.org/en/latest/input/tex/index.html)的联机参考资料。
|
**注意:** 使用[支持的TeX功能](https://docs.mathjax.org/en/latest/input/tex/index.html)的联机参考资料。
|
||||||
|
|
||||||
## 例子
|
## 例子
|
||||||
|
|
||||||
@@ -50,7 +51,7 @@ $$
|
|||||||
|
|
||||||
|
|
||||||
### 几何级数之和
|
### 几何级数之和
|
||||||
我把接下来的两个例子分成了几行,这样它在手机上表现得更好。这就是为什么它们包含 `\displaystyle`。
|
我把接下来的两个例子分成了几行,这样它在手机上表现得更好。这就是为什么它们包含 `\displaystyle`。或者可使用类似 `\displaylines{x = a + b \\\ y = b + c}` 语法进行截断,具体信息可见:[mathjax-issues2312](https://github.com/mathjax/MathJax/issues/2312)
|
||||||
|
|
||||||
$$
|
$$
|
||||||
\displaystyle\sum_{i=1}^{k+1}i
|
\displaystyle\sum_{i=1}^{k+1}i
|
||||||
@@ -78,7 +79,12 @@ $$
|
|||||||
|
|
||||||
### 乘记号
|
### 乘记号
|
||||||
$$
|
$$
|
||||||
\displaystyle 1 + \frac{q^2}{(1-q)}+\frac{q^6}{(1-q)(1-q^2)}+\cdots = \displaystyle \prod_{j=0}^{\infty}\frac{1}{(1-q^{5j+2})(1-q^{5j+3})}, \displaystyle\text{ for }\lvert q\rvert < 1.
|
\displaystyle 1 + \frac{q^2}{(1-q)}+\frac{q^6}{(1-q)(1-q^2)}+\cdots =
|
||||||
|
$$
|
||||||
|
|
||||||
|
$$
|
||||||
|
\displaystyle \prod_{j=0}^{\infty}\frac{1}{(1-q^{5j+2})(1-q^{5j+3})},
|
||||||
|
\displaystyle\text{ for }\lvert q\rvert < 1.
|
||||||
$$
|
$$
|
||||||
|
|
||||||
|
|
||||||
@@ -88,8 +94,8 @@ $$
|
|||||||
|
|
||||||
### 希腊字母
|
### 希腊字母
|
||||||
$$
|
$$
|
||||||
\Gamma\ \Delta\ \Theta\ \Lambda\ \Xi\ \Pi\ \Sigma\ \Upsilon\ \Phi\ \Psi\ \Omega
|
\displaylines{\Gamma\ \Delta\ \Theta\ \Lambda\ \Xi\ \Pi\ \Sigma\ \Upsilon\ \Phi\ \Psi\ \Omega
|
||||||
\alpha\ \beta\ \gamma\ \delta\ \epsilon\ \zeta\ \eta\ \theta\ \iota\ \kappa\ \lambda\ \mu\ \nu\ \xi \ \omicron\ \pi\ \rho\ \sigma\ \tau\ \upsilon\ \phi\ \chi\ \psi\ \omega\ \varepsilon\ \vartheta\ \varpi\ \varrho\ \varsigma\ \varphi
|
\alpha\ \beta\ \gamma\ \delta\ \epsilon\ \zeta\ \\\\ \eta\ \theta\ \iota\ \kappa\ \lambda\ \mu\ \nu\ \xi \ \omicron\ \pi\ \rho\ \sigma\ \tau\ \upsilon\ \phi\ \chi\ \psi\ \omega\ \varepsilon\ \vartheta\ \varpi\ \varrho\ \varsigma\ \varphi}
|
||||||
$$
|
$$
|
||||||
|
|
||||||
|
|
||||||
@@ -99,8 +105,8 @@ $$
|
|||||||
$$
|
$$
|
||||||
|
|
||||||
$$
|
$$
|
||||||
\Leftarrow\ \Rightarrow\ \leftrightarrow\ \Leftrightarrow\ \mapsto\ \hookleftarrow
|
\displaylines{\Leftarrow\ \Rightarrow\ \leftrightarrow\ \Leftrightarrow\ \mapsto\ \hookleftarrow
|
||||||
\leftharpoonup\ \leftharpoondown\ \rightleftharpoons\ \longleftarrow\ \Longleftarrow\ \longrightarrow
|
\leftharpoonup\ \leftharpoondown\ \\\\\ \rightleftharpoons\ \longleftarrow\ \Longleftarrow\ \longrightarrow}
|
||||||
$$
|
$$
|
||||||
|
|
||||||
$$
|
$$
|
||||||
|
|||||||
@@ -7,12 +7,13 @@ date: 2022-09-18T20:58:13+08:00
|
|||||||
lastmod: 2022-09-18T20:58:13+08:00
|
lastmod: 2022-09-18T20:58:13+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 第三方引入
|
||||||
|
- 图序功能
|
||||||
tags:
|
tags:
|
||||||
- 流程图
|
- 流程图
|
||||||
- 时序图
|
- 时序图
|
||||||
|
|
||||||
url: "post/mermaid-charts.html"
|
url: "demo/mermaid-charts.html"
|
||||||
mermaid: true
|
mermaid: true
|
||||||
toc: true
|
toc: true
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -7,14 +7,14 @@ date: 2022-10-06T09:02:26+08:00
|
|||||||
lastmod: 2022-10-30T21:03:16+08:00
|
lastmod: 2022-10-30T21:03:16+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 示例文章
|
||||||
tags:
|
tags:
|
||||||
- toc
|
- toc
|
||||||
- 标题
|
- 标题
|
||||||
|
|
||||||
comment:
|
comment:
|
||||||
enable: false
|
enable: false
|
||||||
url: "post/no-header-title.html"
|
url: "demo/no-header-title.html"
|
||||||
---
|
---
|
||||||
|
|
||||||
刘慈欣2018克拉克奖获奖感言(部分内容节选)。
|
刘慈欣2018克拉克奖获奖感言(部分内容节选)。
|
||||||
|
|||||||
@@ -7,11 +7,12 @@ date: 2022-08-06T14:41:50+08:00
|
|||||||
lastmod: 2022-08-06T14:41:50+08:00
|
lastmod: 2022-08-06T14:41:50+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 示例文章
|
||||||
|
- 语法
|
||||||
tags:
|
tags:
|
||||||
- 短代码
|
- 短代码
|
||||||
- 语法
|
- 语法
|
||||||
url: "post/shortcodes.html"
|
url: "demo/shortcodes.html"
|
||||||
---
|
---
|
||||||
|
|
||||||
虽然 `Markdown` 语法已经非常丰富能够满足我们写文章的绝大部分需求,但是为更好的对文章内容进行更友好的排版,为引设计一套自定义的短语,便于在使用时能够快速引用。
|
虽然 `Markdown` 语法已经非常丰富能够满足我们写文章的绝大部分需求,但是为更好的对文章内容进行更友好的排版,为引设计一套自定义的短语,便于在使用时能够快速引用。
|
||||||
@@ -65,6 +66,11 @@ url: "post/shortcodes.html"
|
|||||||
**Welcome** to [Hugo NexT!](https://preview.hugo-next.eu.org)
|
**Welcome** to [Hugo NexT!](https://preview.hugo-next.eu.org)
|
||||||
{{< /note >}}
|
{{< /note >}}
|
||||||
|
|
||||||
|
{{< note primary >}}
|
||||||
|
### Primary Header
|
||||||
|
**Welcome** to [Hugo NexT!](https://preview.hugo-next.eu.org)
|
||||||
|
{{< /note >}}
|
||||||
|
|
||||||
{{< note info >}}
|
{{< note info >}}
|
||||||
### Info Header
|
### Info Header
|
||||||
**Welcome** to [Hugo NexT!](https://preview.hugo-next.eu.org)
|
**Welcome** to [Hugo NexT!](https://preview.hugo-next.eu.org)
|
||||||
@@ -83,4 +89,4 @@ url: "post/shortcodes.html"
|
|||||||
{{< note danger >}}
|
{{< note danger >}}
|
||||||
### Danger Header
|
### Danger Header
|
||||||
**Welcome** to [Hugo NexT!](https://preview.hugo-next.eu.org)
|
**Welcome** to [Hugo NexT!](https://preview.hugo-next.eu.org)
|
||||||
{{< /note >}}
|
{{< /note >}}
|
||||||
@@ -7,13 +7,14 @@ date: 2022-06-07T19:09:52+08:00
|
|||||||
lastmod: 2022-06-07T19:09:52+08:00
|
lastmod: 2022-06-07T19:09:52+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 示例文章
|
||||||
|
- 语法
|
||||||
tags:
|
tags:
|
||||||
- 语法
|
- 语法
|
||||||
- 高亮
|
- 高亮
|
||||||
- Chroma
|
- Chroma
|
||||||
|
|
||||||
url: post/syntax-highlighting.html
|
url: demo/syntax-highlighting.html
|
||||||
---
|
---
|
||||||
|
|
||||||
Hugo 通过 Chroma 提供非常快速的语法高亮显示,现 Hugo 中使用 Chroma 作为代码块高亮支持,它内置在 Go 语言当中,速度是真的非常、非常快,而且最为重要的是它也兼容之前我们使用的 Pygments 方式。
|
Hugo 通过 Chroma 提供非常快速的语法高亮显示,现 Hugo 中使用 Chroma 作为代码块高亮支持,它内置在 Go 语言当中,速度是真的非常、非常快,而且最为重要的是它也兼容之前我们使用的 Pygments 方式。
|
||||||
@@ -66,7 +67,7 @@ print "Hello, world!"
|
|||||||
|
|
||||||
### Git 对比
|
### Git 对比
|
||||||
|
|
||||||
``` diff {hl_lines=[4,"6-7"], linenos=true}
|
```diff {hl_lines=[4,"6-7"], linenos=true}
|
||||||
*** /path/to/original ''timestamp''
|
*** /path/to/original ''timestamp''
|
||||||
--- /path/to/new ''timestamp''
|
--- /path/to/new ''timestamp''
|
||||||
***************
|
***************
|
||||||
|
|||||||
@@ -7,14 +7,14 @@ date: 2022-06-08T21:12:52+08:00
|
|||||||
lastmod: 2022-06-08T21:12:52+08:00
|
lastmod: 2022-06-08T21:12:52+08:00
|
||||||
|
|
||||||
categories:
|
categories:
|
||||||
- 示例
|
- 示例文章
|
||||||
tags:
|
tags:
|
||||||
- 目录
|
- 目录
|
||||||
- 导航
|
- 导航
|
||||||
- 博客
|
- 博客
|
||||||
|
|
||||||
toc: true
|
toc: true
|
||||||
url: post/table-of-content.html
|
url: demo/table-of-content.html
|
||||||
---
|
---
|
||||||
|
|
||||||
巴顿将军说过:“衡量一个人是否成功,不是看他站到顶峰,而是从顶峰跌落之后的反弹力”,褚时健的人生便是如此,中年发家致富,名利双收,之后又跌落到谷底,等到74岁再创业,10年后带着褚橙归来,东山再起收获亿万财富,他的发展轨迹就是反弹的过程。
|
巴顿将军说过:“衡量一个人是否成功,不是看他站到顶峰,而是从顶峰跌落之后的反弹力”,褚时健的人生便是如此,中年发家致富,名利双收,之后又跌落到谷底,等到74岁再创业,10年后带着褚橙归来,东山再起收获亿万财富,他的发展轨迹就是反弹的过程。
|
||||||
|
|||||||
@@ -8,16 +8,22 @@
|
|||||||
desc: 世界上最快的网站建设框架!
|
desc: 世界上最快的网站建设框架!
|
||||||
avatar: https://gohugo.io/favicon-32x32.png
|
avatar: https://gohugo.io/favicon-32x32.png
|
||||||
link: https://gohugo.io
|
link: https://gohugo.io
|
||||||
|
timeout: 2
|
||||||
|
visible: true
|
||||||
|
|
||||||
- name: Hugo-NexT
|
- name: Hugo-NexT
|
||||||
desc: Hugo NexT 官方预览网站。
|
desc: Hugo NexT 官方预览网站。
|
||||||
avatar: https://hugo-next.eu.org/imgs/hugo_next_avatar.png
|
avatar: https://hugo-next.eu.org/imgs/hugo_next_avatar.png
|
||||||
link: https://hugo-next.eu.org
|
link: https://hugo-next.eu.org
|
||||||
|
timeout: 2
|
||||||
|
visible: true
|
||||||
|
|
||||||
- name: 凡梦星尘空间站
|
- name: 凡梦星尘空间站
|
||||||
desc: 再平凡的人也有属于他的梦想!
|
desc: 再平凡的人也有属于他的梦想!
|
||||||
avatar: https://lisenhui.cn/imgs/avatar.png
|
avatar: https://elkan1788.github.io/imgs/avatar.png
|
||||||
link: https://lisenhui.cn
|
link: https://lisenhui.cn
|
||||||
|
timeout: 2
|
||||||
|
visible: true
|
||||||
|
|
||||||
|
|
||||||
- FLinksTitle: Hugo NexT 粉丝群体
|
- FLinksTitle: Hugo NexT 粉丝群体
|
||||||
@@ -26,4 +32,6 @@
|
|||||||
- name: 阿哈吉
|
- name: 阿哈吉
|
||||||
desc: 全网首个 Hugo NexT 忠实粉丝用户
|
desc: 全网首个 Hugo NexT 忠实粉丝用户
|
||||||
avatar: https://a.happy2008.top/imgs/stayhome-small.png
|
avatar: https://a.happy2008.top/imgs/stayhome-small.png
|
||||||
link: https://a.happy2008.top/
|
link: https://a.happy2008.top/
|
||||||
|
timeout: 2
|
||||||
|
visible: true
|
||||||
1
hugo-theme-next.go
Normal file
@@ -0,0 +1 @@
|
|||||||
|
package hugothemenext
|
||||||
185
i18n/en.yaml
@@ -18,121 +18,83 @@ CateTitle:
|
|||||||
AllSome:
|
AllSome:
|
||||||
other: "All {{ .Some }}"
|
other: "All {{ .Some }}"
|
||||||
|
|
||||||
NavToggleLabel:
|
|
||||||
other: Toggle navigation bar
|
|
||||||
|
|
||||||
MSearchLabel:
|
Symbol:
|
||||||
other: Search
|
colon: ":"
|
||||||
|
comma: ","
|
||||||
|
period: "."
|
||||||
|
|
||||||
SymbolColon:
|
Sidebar:
|
||||||
other: ":"
|
label:
|
||||||
SymbolComma:
|
posts: Posts
|
||||||
other: ","
|
categories: Categories
|
||||||
SymbolPeriod:
|
tags: Tags
|
||||||
other: "."
|
rss: RSS
|
||||||
|
ccommons: "Creative Commons"
|
||||||
|
toc: TOC
|
||||||
|
overview: Overview
|
||||||
|
navToggle: "Toggle Navigation Bar"
|
||||||
|
search: Search
|
||||||
|
|
||||||
SbPostsLable:
|
Terms:
|
||||||
other: "Posts"
|
archives: "{{ .Count }} posts in total"
|
||||||
SbCatesTitle:
|
categories: "{{ .Count }} categories in total"
|
||||||
other: "Categories"
|
tags: "{{ .Count }} tags in total"
|
||||||
SbTagsTitle:
|
|
||||||
other: "Tags"
|
|
||||||
TableOfContents:
|
|
||||||
other: "TOC"
|
|
||||||
SiteOverview:
|
|
||||||
other: "Overview"
|
|
||||||
RSSLable:
|
|
||||||
other: "RSS Subscribe"
|
|
||||||
CCLinkTitle:
|
|
||||||
other: "Creative Commons"
|
|
||||||
|
|
||||||
TagsCounterTitle:
|
PostArchive:
|
||||||
zero: No tags
|
cheers:
|
||||||
other: "{{ .Count }} tags in total"
|
um: Um...
|
||||||
CatesCounterTitle:
|
ok: Ok
|
||||||
zero: No categories
|
nice: Nice
|
||||||
other: "{{ .Count }} categories in total"
|
good: Good
|
||||||
ArchiveCounterTitle:
|
great: Greate
|
||||||
zero: No posts.
|
excellent: Excellent
|
||||||
other: "{{ .Count }} posts in total"
|
keepOn: Keep on posting.╰(*°▽°*)╯
|
||||||
|
|
||||||
PostArchiveCheersUm:
|
PostMeta:
|
||||||
other: Um..
|
sticky: Stickys
|
||||||
PostArchiveCheersOk:
|
publish:
|
||||||
other: Ok
|
date: "Publish on"
|
||||||
PostArchiveCheersNice:
|
time: "Create Time"
|
||||||
other: Nice
|
lastmod:
|
||||||
PostArchiveCheersGood:
|
date: "Update on"
|
||||||
other: Good
|
time: "Modify Time"
|
||||||
PostArchiveCheersGreat:
|
category: "Classify at"
|
||||||
other: Great
|
words:
|
||||||
PostArchiveCheersExcellent:
|
title: Words
|
||||||
other: Excellent
|
count: "{{- .WordCount -}}"
|
||||||
PostArchiveKeepOn:
|
reading:
|
||||||
other: Keep on posting.╰(*°▽°*)╯
|
title: Read
|
||||||
|
time: "{{- .ReadingTime -}}mins"
|
||||||
|
views: Views
|
||||||
|
comments: Comments
|
||||||
|
tags: Tags
|
||||||
|
more: "Read More"
|
||||||
|
edit: "Edit this post"
|
||||||
|
|
||||||
PostStickyTitle:
|
Reward:
|
||||||
other: Strickys
|
title: Donate
|
||||||
PostPublishDate:
|
wechatpay: WechatPay
|
||||||
other: "Publish on"
|
alipay: Alipay
|
||||||
PostPublishTime:
|
paypal: Paypal
|
||||||
other: "Create Time"
|
bitcoin: Bitcoin
|
||||||
PostLastModDate:
|
|
||||||
other: "Update on"
|
|
||||||
PostLastModTime:
|
|
||||||
other: "Modify Time"
|
|
||||||
PostCategory:
|
|
||||||
other: "Classify at"
|
|
||||||
PostWords:
|
|
||||||
other: "Words"
|
|
||||||
PostWordCount:
|
|
||||||
other: "{{- .WordCount -}}"
|
|
||||||
PostReading:
|
|
||||||
other: "Read"
|
|
||||||
PostReadTime:
|
|
||||||
other: "{{- .ReadingTime -}}min"
|
|
||||||
PostViews:
|
|
||||||
other: "Views"
|
|
||||||
PostComments:
|
|
||||||
other: "Comments"
|
|
||||||
PostTag:
|
|
||||||
other: "Tags"
|
|
||||||
PostReadMore:
|
|
||||||
other: "Read More"
|
|
||||||
PostEditTitle:
|
|
||||||
other: Edit this post
|
|
||||||
|
|
||||||
PostCRTitle:
|
PostCopyRight:
|
||||||
other: Post Title
|
title: Post Title
|
||||||
PostCRAuthor:
|
author: Post Author
|
||||||
other: Post Author
|
link: Post Link
|
||||||
PostCRLink:
|
origin:
|
||||||
other: Post Link
|
author: Written By
|
||||||
PostCROriginAuthor:
|
link: Originally From
|
||||||
other: Written By
|
license:
|
||||||
PostCROriginLink:
|
title: Copyright Notice
|
||||||
other: Originally From
|
content: "All articles in this blog are licensed under <i class=\"fab fa-fw fa-creative-commons\"></i>%s unless stating additionally."
|
||||||
PostCRLicenseTitle:
|
|
||||||
other: Copyright Notice
|
|
||||||
PostCRLicenseContent:
|
|
||||||
other: "All articles in this blog are licensed under <i class=\"fab fa-fw fa-creative-commons\"></i>%s unless stating additionally."
|
|
||||||
|
|
||||||
PostFollowMe:
|
PostFollowMe:
|
||||||
other: Welcome to my other publishing channels
|
other: Welcome to my other publishing channels
|
||||||
|
|
||||||
RewardDonate:
|
PostComments:
|
||||||
other: Donate
|
title: Comments
|
||||||
RewardWechatpay:
|
|
||||||
other: Wechat Pay
|
|
||||||
RewardAlipay:
|
|
||||||
other: Alipay
|
|
||||||
RewardPaypal:
|
|
||||||
other: PayPal
|
|
||||||
RewardBitcoin:
|
|
||||||
other: Bitcoin
|
|
||||||
|
|
||||||
PostCommentTitle:
|
|
||||||
other: Comments
|
|
||||||
|
|
||||||
SiteInfoItems:
|
SiteInfoItems:
|
||||||
title: "Web Status"
|
title: "Web Status"
|
||||||
@@ -147,17 +109,14 @@ SiteInfoItems:
|
|||||||
totalViews: "Total Views"
|
totalViews: "Total Views"
|
||||||
lastUpdate: "Last Update:"
|
lastUpdate: "Last Update:"
|
||||||
|
|
||||||
FooterPowerby:
|
Footer:
|
||||||
other: "Power by %s"
|
powerby: "Power by %s"
|
||||||
|
|
||||||
SearchPh:
|
Search:
|
||||||
other: Searching...
|
placeholder: Searching...
|
||||||
SearchEmpty:
|
empty: "We didn't find any results for the search: ${query}"
|
||||||
other: "We didn't find any results for the search: ${query}"
|
|
||||||
SearchHits:
|
|
||||||
hits: "${hits} results found"
|
hits: "${hits} results found"
|
||||||
SearchHitsTime:
|
time: "${hits} results found in ${time} ms"
|
||||||
other: "${hits} results found in ${time} ms"
|
|
||||||
|
|
||||||
DateSuffix:
|
DateSuffix:
|
||||||
years: " Year "
|
years: " Year "
|
||||||
|
|||||||
136
i18n/fr.yaml
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
#--------------------------------------
|
||||||
|
# French Version
|
||||||
|
#--------------------------------------
|
||||||
|
archives:
|
||||||
|
other: Billets
|
||||||
|
tag:
|
||||||
|
other: Tag
|
||||||
|
tags:
|
||||||
|
other: Tags
|
||||||
|
TagTitle:
|
||||||
|
other: Liste des Tags
|
||||||
|
category:
|
||||||
|
other: Categorie
|
||||||
|
categories:
|
||||||
|
other: Categories
|
||||||
|
CateTitle:
|
||||||
|
other: Classification des items
|
||||||
|
AllSome:
|
||||||
|
other: "Total :{{ .Some }}"
|
||||||
|
|
||||||
|
|
||||||
|
Symbol:
|
||||||
|
colon: ":"
|
||||||
|
comma: ","
|
||||||
|
period: "."
|
||||||
|
|
||||||
|
Sidebar:
|
||||||
|
label:
|
||||||
|
posts: Billets
|
||||||
|
categories: Categories
|
||||||
|
tags: Tags
|
||||||
|
rss: RSS
|
||||||
|
ccommons: "Creative Commons"
|
||||||
|
toc: Sommaire
|
||||||
|
overview: "Présentation"
|
||||||
|
navToggle: "Fermer/Ouvrire la bar de navigation"
|
||||||
|
search: Chercher
|
||||||
|
|
||||||
|
Terms:
|
||||||
|
archives: "{{ .Count }} Billets au total"
|
||||||
|
categories: "{{ .Count }} Categories au total"
|
||||||
|
tags: "{{ .Count }} Tags au total"
|
||||||
|
|
||||||
|
PostArchive:
|
||||||
|
cheers:
|
||||||
|
um: Hum...
|
||||||
|
ok: Ok
|
||||||
|
nice: Cool
|
||||||
|
good: Bien
|
||||||
|
great: Génial
|
||||||
|
excellent: Excellent
|
||||||
|
keepOn: Continue de publier.╰(*°▽°*)╯
|
||||||
|
|
||||||
|
PostMeta:
|
||||||
|
sticky: Stickys
|
||||||
|
publish:
|
||||||
|
date: "Publié le "
|
||||||
|
time: "Date de création"
|
||||||
|
lastmod:
|
||||||
|
date: "Mise à jour le "
|
||||||
|
time: "Modifié le "
|
||||||
|
category: "Classé comme "
|
||||||
|
words:
|
||||||
|
title: Nb. Mots
|
||||||
|
count: "{{- .WordCount -}}"
|
||||||
|
reading:
|
||||||
|
title: "Lectures "
|
||||||
|
time: "{{- .ReadingTime -}} mins"
|
||||||
|
views: Vues
|
||||||
|
comments: Commentaires
|
||||||
|
tags: Tags
|
||||||
|
more: "Lire la suite"
|
||||||
|
edit: "Editer ce billet"
|
||||||
|
|
||||||
|
Reward:
|
||||||
|
title: Donner
|
||||||
|
wechatpay: WechatPay
|
||||||
|
alipay: Alipay
|
||||||
|
paypal: Paypal
|
||||||
|
bitcoin: Bitcoin
|
||||||
|
|
||||||
|
PostCopyRight:
|
||||||
|
title: Titre du billet
|
||||||
|
author: Autheur du billet
|
||||||
|
link: Lien du billet
|
||||||
|
origin:
|
||||||
|
author: Écrit par
|
||||||
|
link: Originellement de
|
||||||
|
license:
|
||||||
|
title: Note de Copyright
|
||||||
|
content: "Tous les articles sont sous licence <i class=\"fab fa-fw fa-creative-commons\"></i>%s."
|
||||||
|
|
||||||
|
PostFollowMe:
|
||||||
|
other: "Autres réseaux sociaux"
|
||||||
|
|
||||||
|
PostComments:
|
||||||
|
title: Commentaires
|
||||||
|
|
||||||
|
SiteInfoItems:
|
||||||
|
title: "Statistiques"
|
||||||
|
runTimes: "En cours:"
|
||||||
|
words: "Nb. Mots:"
|
||||||
|
readTimes: "Temps de lecture: "
|
||||||
|
visitors: "Visiteurs: "
|
||||||
|
pageViews: "Vues: "
|
||||||
|
todayViews: "Nombre de vues du jour: "
|
||||||
|
yesterdayViews: "Nombre de vues d'hier: "
|
||||||
|
monthViews: "Vues du mois: "
|
||||||
|
totalViews: "Total des vues: "
|
||||||
|
lastUpdate: "Dernière mise à jour: "
|
||||||
|
|
||||||
|
Footer:
|
||||||
|
powerby: "Fait par %s"
|
||||||
|
|
||||||
|
Search:
|
||||||
|
placeholder: Recherche...
|
||||||
|
empty: "Nous n'avons pas trouvé ce que vous cherchiez pour : ${query}"
|
||||||
|
hits: "${hits} resultats trouvés"
|
||||||
|
time: "${hits} resultats trouvés en ${time} ms"
|
||||||
|
|
||||||
|
DateSuffix:
|
||||||
|
years: " Années"
|
||||||
|
days: " Jours"
|
||||||
|
hours: " Heures"
|
||||||
|
mins: " Minutes"
|
||||||
|
month: " Mois"
|
||||||
|
day: " Jour"
|
||||||
|
hour: " Heur"
|
||||||
|
min: " Minute"
|
||||||
|
just: "A l'instant"
|
||||||
|
|
||||||
|
ToolBtns:
|
||||||
|
comment: "Commenter"
|
||||||
|
theme: "Changer le theme"
|
||||||
|
lang: "Traduction Multilingue"
|
||||||
|
backTop: "Remonter"
|
||||||
186
i18n/zh-cn.yaml
@@ -19,121 +19,82 @@ CateTitle:
|
|||||||
AllSome:
|
AllSome:
|
||||||
other: "所有 {{ .Some }}"
|
other: "所有 {{ .Some }}"
|
||||||
|
|
||||||
NavToggleLabel:
|
Symbol:
|
||||||
other: 切换导航栏
|
colon: ":"
|
||||||
|
comma: ","
|
||||||
|
period: "。"
|
||||||
|
|
||||||
MSearchLabel:
|
Sidebar:
|
||||||
other: 搜索
|
label:
|
||||||
|
posts: 日志
|
||||||
|
categories: 分类
|
||||||
|
tags: 标签
|
||||||
|
rss: RSS 订阅
|
||||||
|
ccommons: 共享知识
|
||||||
|
toc: 文章目录
|
||||||
|
overview: 站点概览
|
||||||
|
navToggle: 切换导航栏
|
||||||
|
search: 搜索
|
||||||
|
|
||||||
SymbolColon:
|
Terms:
|
||||||
other: ":"
|
archives: "目前共计 <strong>{{ .Count }}</strong> 篇日志"
|
||||||
SymbolComma:
|
categories: "目前共计 <strong>{{ .Count }}</strong> 个分类"
|
||||||
other: ","
|
tags: "目前共计 <strong>{{ .Count }}</strong> 个标签"
|
||||||
SymbolPeriod:
|
|
||||||
other: "。"
|
|
||||||
|
|
||||||
SbPostsLable:
|
|
||||||
other: 日志
|
|
||||||
SbCatesTitle:
|
|
||||||
other: 分类
|
|
||||||
SbTagsTitle:
|
|
||||||
other: 标签
|
|
||||||
TableOfContents:
|
|
||||||
other: 文章目录
|
|
||||||
SiteOverview:
|
|
||||||
other: 站点概览
|
|
||||||
RSSLable:
|
|
||||||
other: RSS 订阅
|
|
||||||
CCLinkTitle:
|
|
||||||
other: 共享知识
|
|
||||||
|
|
||||||
TagsCounterTitle:
|
PostArchive:
|
||||||
zero: 暂无标签
|
cheers:
|
||||||
other: "目前共计 <strong>{{ .Count }}</strong> 个标签"
|
um: 嗯..
|
||||||
CatesCounterTitle:
|
ok: 还行
|
||||||
zero: 暂无分类
|
nice: 不错
|
||||||
other: "目前共计 <strong>{{ .Count }}</strong> 个分类"
|
good: 很好
|
||||||
ArchiveCounterTitle:
|
great: 非常好
|
||||||
zero: 暂无日志
|
excellent: 太棒了
|
||||||
other: "目前共计 <strong>{{ .Count }}</strong> 篇日志"
|
keepOn: 继续努力哟。╰(*°▽°*)╯
|
||||||
|
|
||||||
PostArchiveCheersUm:
|
PostMeta:
|
||||||
other: 嗯..
|
sticky: 置顶
|
||||||
PostArchiveCheersOk:
|
publish:
|
||||||
other: 还行
|
date: 发表于
|
||||||
PostArchiveCheersNice:
|
time: 创建时间
|
||||||
other: 不错
|
lastmod:
|
||||||
PostArchiveCheersGood:
|
date: 更新于
|
||||||
other: 很好
|
time: 修改时间
|
||||||
PostArchiveCheersGreat:
|
category: 分类于
|
||||||
other: 非常好
|
words:
|
||||||
PostArchiveCheersExcellent:
|
title: 字数
|
||||||
other: 太棒了
|
count: "{{- .WordCount -}}"
|
||||||
PostArchiveKeepOn:
|
reading:
|
||||||
other: 继续努力哟。╰(*°▽°*)╯
|
title: 阅读
|
||||||
|
time: "{{- .ReadingTime -}}分钟"
|
||||||
|
views: 浏览
|
||||||
|
comments: 评论
|
||||||
|
tags: 标签
|
||||||
|
more: 阅读全文
|
||||||
|
edit: 编辑
|
||||||
|
|
||||||
PostStickyTitle:
|
Reward:
|
||||||
other: 置顶
|
title: 赞赏
|
||||||
PostPublishDate:
|
wechatpay: 微信
|
||||||
other: 发表于
|
alipay: 支付宝
|
||||||
PostPublishTime:
|
paypal: Paypal
|
||||||
other: 创建时间
|
bitcoin: 比特币
|
||||||
PostLastModDate:
|
|
||||||
other: 更新于
|
|
||||||
PostLastModTime:
|
|
||||||
other: 修改时间
|
|
||||||
PostCategory:
|
|
||||||
other: "分类于"
|
|
||||||
PostWords:
|
|
||||||
other: 字数
|
|
||||||
PostWordCount:
|
|
||||||
other: "{{- .WordCount -}}"
|
|
||||||
PostReading:
|
|
||||||
other: 阅读
|
|
||||||
PostReadTime:
|
|
||||||
other: "{{- .ReadingTime -}}分钟"
|
|
||||||
PostViews:
|
|
||||||
other: 浏览
|
|
||||||
PostComments:
|
|
||||||
other: 评论
|
|
||||||
PostTags:
|
|
||||||
other: 标签
|
|
||||||
PostReadMore:
|
|
||||||
other: 阅读全文
|
|
||||||
PostEditTitle:
|
|
||||||
other: 编辑
|
|
||||||
|
|
||||||
PostCRTitle:
|
PostCopyRight:
|
||||||
other: 文章标题
|
title: 文章标题
|
||||||
PostCRAuthor:
|
author: 本文作者
|
||||||
other: 本文作者
|
link: 本文链接
|
||||||
PostCRLink:
|
origin:
|
||||||
other: 本文链接
|
author: 原文作者
|
||||||
PostCROriginAuthor:
|
link: 原文链接
|
||||||
other: 原文作者
|
license:
|
||||||
PostCROriginLink:
|
title: 版权声明
|
||||||
other: 原文链接
|
content: "本博客所有文章除特别声明外,均采用 <i class=\"fab fa-fw fa-creative-commons\"></i>%s 许可协议。转载请注明出处!"
|
||||||
PostCRLicenseTitle:
|
|
||||||
other: 版权声明
|
|
||||||
PostCRLicenseContent:
|
|
||||||
other: "本博客所有文章除特别声明外,均采用 <i class=\"fab fa-fw fa-creative-commons\"></i>%s 许可协议。转载请注明出处!"
|
|
||||||
|
|
||||||
PostFollowMe:
|
PostFollowMe:
|
||||||
other: 欢迎关注我的其它发布渠道
|
other: 欢迎关注我的其它发布渠道
|
||||||
|
|
||||||
RewardDonate:
|
PostComments:
|
||||||
other: 赞赏
|
title: 评论交流
|
||||||
RewardWechatpay:
|
|
||||||
other: 微信
|
|
||||||
RewardAlipay:
|
|
||||||
other: 支付宝
|
|
||||||
RewardPaypal:
|
|
||||||
other: PayPal
|
|
||||||
RewardBitcoin:
|
|
||||||
other: 比特币
|
|
||||||
|
|
||||||
PostCommentTitle:
|
|
||||||
other: 评论交流
|
|
||||||
|
|
||||||
SiteInfoItems:
|
SiteInfoItems:
|
||||||
title: "网站资讯"
|
title: "网站资讯"
|
||||||
@@ -148,17 +109,14 @@ SiteInfoItems:
|
|||||||
totalViews: "总访问量:"
|
totalViews: "总访问量:"
|
||||||
lastUpdate: "最后更新于:"
|
lastUpdate: "最后更新于:"
|
||||||
|
|
||||||
FooterPowerby:
|
Footer:
|
||||||
other: 由 %s 强力驱动
|
powerby: 由 %s 强力驱动
|
||||||
|
|
||||||
SearchPh:
|
Search:
|
||||||
other: 搜索...
|
placeholder: 搜索...
|
||||||
SearchEmpty:
|
empty: "没有找到任何搜索结果:${query}"
|
||||||
other: "没有找到任何搜索结果:${query}"
|
|
||||||
SearchHits:
|
|
||||||
hits: "找到 ${hits} 个搜索结果"
|
hits: "找到 ${hits} 个搜索结果"
|
||||||
SearchHitsTime:
|
time: "找到 ${hits} 个搜索结果(用时 ${time} 毫秒)"
|
||||||
other: "找到 ${hits} 个搜索结果(用时 ${time} 毫秒)"
|
|
||||||
|
|
||||||
DateSuffix:
|
DateSuffix:
|
||||||
years: " 年 "
|
years: " 年 "
|
||||||
|
|||||||
136
i18n/zh-tw.yaml
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
#--------------------------------------
|
||||||
|
# 繁體版本
|
||||||
|
#--------------------------------------
|
||||||
|
|
||||||
|
archives:
|
||||||
|
other: 文章
|
||||||
|
tag:
|
||||||
|
other: 標籤
|
||||||
|
tags:
|
||||||
|
other: 標籤
|
||||||
|
TagTitle:
|
||||||
|
other: 標籤集錦
|
||||||
|
category:
|
||||||
|
other: 分類
|
||||||
|
categories:
|
||||||
|
other: 分類
|
||||||
|
CateTitle:
|
||||||
|
other: 分類欄目
|
||||||
|
AllSome:
|
||||||
|
other: "所有 {{ .Some }}"
|
||||||
|
|
||||||
|
Symbol:
|
||||||
|
colon: ":"
|
||||||
|
comma: ","
|
||||||
|
period: "。"
|
||||||
|
|
||||||
|
Sidebar:
|
||||||
|
label:
|
||||||
|
posts: 日誌
|
||||||
|
categories: 分類
|
||||||
|
tags: 標籤
|
||||||
|
rss: RSS 訂閱
|
||||||
|
ccommons: 共享知識
|
||||||
|
toc: 文章目錄
|
||||||
|
overview: 站點概覽
|
||||||
|
navToggle: 切換導航欄
|
||||||
|
search: 搜索
|
||||||
|
|
||||||
|
Terms:
|
||||||
|
archives: "目前共計 <strong>{{ .Count }}</strong> 篇日誌"
|
||||||
|
categories: "目前共計 <strong>{{ .Count }}</strong> 個分類"
|
||||||
|
tags: "目前共計 <strong>{{ .Count }}</strong> 個標籤"
|
||||||
|
|
||||||
|
PostArchive:
|
||||||
|
cheers:
|
||||||
|
um: 嗯..
|
||||||
|
ok: 還行
|
||||||
|
nice: 不错
|
||||||
|
good: 很好
|
||||||
|
great: 非常好
|
||||||
|
excellent: 太棒了
|
||||||
|
keepOn: 繼續努力喲。╰(*°▽°*)╯
|
||||||
|
|
||||||
|
PostMeta:
|
||||||
|
sticky: 置頂
|
||||||
|
publish:
|
||||||
|
date: 發表於
|
||||||
|
time: 創建時間
|
||||||
|
lastmod:
|
||||||
|
date: 更新於
|
||||||
|
time: 修改時間
|
||||||
|
category: 分類於
|
||||||
|
words:
|
||||||
|
title: 字數
|
||||||
|
count: "{{- .WordCount -}}"
|
||||||
|
reading:
|
||||||
|
title: 閱讀
|
||||||
|
time: "{{- .ReadingTime -}}分鐘"
|
||||||
|
views: 瀏覽
|
||||||
|
comments: 評論
|
||||||
|
tags: 標籤
|
||||||
|
more: 閱讀全文
|
||||||
|
edit: 編輯
|
||||||
|
|
||||||
|
Reward:
|
||||||
|
title: 讚賞
|
||||||
|
wechatpay: 微信
|
||||||
|
alipay: 支付寶
|
||||||
|
paypal: Paypal
|
||||||
|
bitcoin: 比特幣
|
||||||
|
|
||||||
|
PostCopyRight:
|
||||||
|
title: 文章標題
|
||||||
|
author: 本文作者
|
||||||
|
link: 本文鏈接
|
||||||
|
origin:
|
||||||
|
author: 原文作者
|
||||||
|
link: 原文鏈接
|
||||||
|
license:
|
||||||
|
title: 版權聲明
|
||||||
|
content: "本博客所有文章除特別聲明外,均採用 <i class=\"fab fa-fw fa-creative-commons\"></i>%s 許可協議。轉載請註明出處!"
|
||||||
|
|
||||||
|
PostFollowMe:
|
||||||
|
other: 歡迎關注我的其它發布渠道
|
||||||
|
|
||||||
|
PostCommentTitle:
|
||||||
|
other: 評論交流
|
||||||
|
|
||||||
|
SiteInfoItems:
|
||||||
|
title: "網站資訊"
|
||||||
|
runTimes: "已運行:"
|
||||||
|
words: "總字數:"
|
||||||
|
readTimes: "閱讀約:"
|
||||||
|
visitors: "總訪客數:"
|
||||||
|
pageViews: "頁面瀏覽:"
|
||||||
|
todayViews: "今日訪問:"
|
||||||
|
yesterdayViews: "昨日訪問:"
|
||||||
|
monthViews: "本月訪問:"
|
||||||
|
totalViews: "總訪問量:"
|
||||||
|
lastUpdate: "最後更新於:"
|
||||||
|
|
||||||
|
FooterPowerby:
|
||||||
|
other: 由 %s 強力驅動
|
||||||
|
|
||||||
|
Search:
|
||||||
|
placeholder: 搜索...
|
||||||
|
empty: "沒有找到任何搜索結果:${query}"
|
||||||
|
hits: "找到 ${hits} 個搜索結果"
|
||||||
|
time: "找到 ${hits} 個搜索結果(用時 ${time} 毫秒)"
|
||||||
|
|
||||||
|
DateSuffix:
|
||||||
|
years: " 年 "
|
||||||
|
days: " 天 "
|
||||||
|
hours: " 小時 "
|
||||||
|
mins: " 分鐘"
|
||||||
|
month: " 個月前"
|
||||||
|
day: " 天前"
|
||||||
|
hour: " 小時前"
|
||||||
|
min: " 分鐘前"
|
||||||
|
just: "剛剛"
|
||||||
|
|
||||||
|
ToolBtns:
|
||||||
|
comment: "直達評論"
|
||||||
|
theme: "深淺模式切換"
|
||||||
|
lang: "多語言翻譯"
|
||||||
|
backTop: "返回頂部"
|
||||||
BIN
images/hugo-next-primary.png
Normal file
|
After Width: | Height: | Size: 5.2 KiB |
BIN
images/hugo-next-secondary.png
Normal file
|
After Width: | Height: | Size: 8.6 KiB |
BIN
images/hugo-next-symbol.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
images/use-hugo-next-starter.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
3
layouts/_default/_markup/render-heading.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ .Text | safeHTML }}
|
||||||
|
<a class="header-anchor" href="#{{ .Anchor | safeURL }}"></a>
|
||||||
|
</h{{ .Level }}>
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
{{- $extURL := and .Page.Site.Params.exturl.enable (strings.HasPrefix .Destination "http") }}
|
{{ $extURL := and .Page.Site.Params.exturl.enable (strings.HasPrefix .Destination "http") }}
|
||||||
<a href="{{ .Destination | safeURL }}" title="{{ .Text }}" {{ if $extURL }}rel="noopener external nofollow noreferrer" target="_blank" class=" exturl"{{ end }}>
|
<a href="{{ .Destination | safeURL }}" title="{{ .Text }}" {{ if $extURL }}rel="noopener external nofollow noreferrer" target="_blank" class=" exturl"{{ end }}>
|
||||||
{{ .Text | safeHTML }}
|
{{ .Text | safeHTML }}
|
||||||
{{- if and $extURL .Page.Site.Params.exturl.icon }}
|
{{ if and $extURL .Page.Site.Params.exturl.icon }}
|
||||||
<i class="fa fa-external-link-alt"></i>
|
<i class="fa fa-external-link-alt"></i>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</a>
|
</a>
|
||||||
@@ -1,13 +1,13 @@
|
|||||||
{{- range $k, $v := (partialCached "init.html" .) -}}
|
{{ range $k, $v := (partialCached "init.html" .) }}
|
||||||
{{- $.Scratch.Set $k $v -}}
|
{{ $.Scratch.Set $k $v }}
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
{{ $commentEnable := .Params.comment.enable | default .Site.Params.comments.enable }}
|
{{ $isComment := .Params.comment.enable | default .Site.Params.comments.enable }}
|
||||||
{{ .Scratch.Set "isComment" $commentEnable }}
|
{{ .Scratch.Set "isComment" $isComment }}
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="{{ .Site.LanguageCode }}" data-theme="{{ .Scratch.Get "theme" }}">
|
<html lang="{{ .Site.LanguageCode }}" data-theme="{{ .Scratch.Get "theme" }}">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
{{- partial "head.html" . }}
|
{{ partial "head.html" . }}
|
||||||
<title>{{ block "title" . }}{{ .Site.Title }}{{ end }}</title>
|
<title>{{ block "title" . }}{{ .Site.Title }}{{ end }}</title>
|
||||||
<noscript>
|
<noscript>
|
||||||
<link rel="stylesheet" href="/css/noscript.css">
|
<link rel="stylesheet" href="/css/noscript.css">
|
||||||
@@ -19,30 +19,30 @@
|
|||||||
<main class="main">
|
<main class="main">
|
||||||
<header class="header" itemscope itemtype="http://schema.org/WPHeader">
|
<header class="header" itemscope itemtype="http://schema.org/WPHeader">
|
||||||
<div class="header-inner">
|
<div class="header-inner">
|
||||||
{{- partial "header.html" . }}
|
{{ partial "header.html" . }}
|
||||||
</div>
|
</div>
|
||||||
<!-- Sidebar -->
|
<!-- Sidebar -->
|
||||||
{{- if ne .Site.Params.sidebar.display "remove" }}
|
{{ if ne .Site.Params.sidebar.display "remove" }}
|
||||||
{{- partial "sidebar.html" . }}
|
{{ partial "sidebar.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</header>
|
</header>
|
||||||
<!-- Widgets -->
|
<!-- Widgets -->
|
||||||
{{ partial "widgets.html" . }}
|
{{ partial "widgets.html" . }}
|
||||||
<div class="main-inner {{ block "main_inner_class" . }}{{ end }}">
|
<div class="main-inner {{ block "main_inner_class" . }}{{ end }}">
|
||||||
<!-- Submenu,Content,Comment -->
|
<!-- Submenu,Content,Comment -->
|
||||||
{{- block "main" . }}{{- end }}
|
{{ block "main" . }}{{ end }}
|
||||||
{{- if and .IsPage $commentEnable }}
|
{{ if and .IsPage $isComment }}
|
||||||
{{- partialCached "comments.html" . }}
|
{{ partialCached "comments.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
<footer class="footer">
|
<footer class="footer">
|
||||||
<div class="footer-inner">
|
<div class="footer-inner">
|
||||||
{{- partialCached "footer.html" . }}
|
{{ partialCached "footer.html" . }}
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
{{- partial "scripts.html" . }}
|
{{ partial "scripts.html" . }}
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
@@ -1,13 +1,18 @@
|
|||||||
|
{{ $limit := .Site.Params.algoliaSearch.limit | default 1000 }}
|
||||||
[
|
[
|
||||||
{{- range $index, $entry := where .Site.RegularPages "Kind" "page" }}
|
{{ range $index, $entry := where .Site.RegularPages "Kind" "page" }}
|
||||||
{{- if $index }}, {{ end }}
|
{{ if $index }}, {{ end }}
|
||||||
{
|
{
|
||||||
"objectID": "{{ .Date.Unix }}",
|
"objectID": "{{ .Date.Unix }}",
|
||||||
"permalink": "{{ .Permalink | relURL }}",
|
"permalink": "{{ .Permalink | relURL }}",
|
||||||
"title": {{ .Title | jsonify }},
|
"title": {{ .Title | jsonify }},
|
||||||
|
{{ if gt .WordCount $limit }}
|
||||||
|
"content": {{ .Plain | truncate $limit | jsonify | safeJS }},
|
||||||
|
{{ else }}
|
||||||
"content": {{ .Plain | jsonify | safeJS }},
|
"content": {{ .Plain | jsonify | safeJS }},
|
||||||
|
{{ end }}
|
||||||
"date": {{ .Date.Format $.Site.Params.timeFormat | jsonify }},
|
"date": {{ .Date.Format $.Site.Params.timeFormat | jsonify }},
|
||||||
"updated": {{ .Lastmod.Format $.Site.Params.timeFormat | jsonify }}
|
"updated": {{ .Lastmod.Format $.Site.Params.timeFormat | jsonify }}
|
||||||
}
|
}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
]
|
]
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
{{ $limit := .Site.Params.localSearch.limit | default 1000 }}
|
||||||
{{ printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>" | safeHTML }}
|
{{ printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>" | safeHTML }}
|
||||||
<search>
|
<search>
|
||||||
{{range where .Site.RegularPages "Kind" "page"}}
|
{{range where .Site.RegularPages "Kind" "page"}}
|
||||||
@@ -5,14 +6,14 @@
|
|||||||
<title>{{ .Title }}</title>
|
<title>{{ .Title }}</title>
|
||||||
<url>{{ .RelPermalink | relLangURL }}</url>
|
<url>{{ .RelPermalink | relLangURL }}</url>
|
||||||
<categories>
|
<categories>
|
||||||
{{- range .Params.categories }}<category>{{ . }}</category>{{- end }}
|
{{ range .Params.categories }}<category>{{ . }}</category>{{ end }}
|
||||||
</categories>
|
</categories>
|
||||||
<tags>
|
<tags>
|
||||||
{{- range .Params.tags }}
|
{{ range .Params.tags }}
|
||||||
<tag>{{ . }}</tag>
|
<tag>{{ . }}</tag>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</tags>
|
</tags>
|
||||||
<content type="html"><![CDATA[{{ .Content | plainify }}]]></content>
|
<content type="html"><![CDATA[ {{ if gt .WordCount $limit }} {{ .Plain | truncate $limit }} {{ else }} {{ .Plain }} {{ end }} ]]></content>
|
||||||
</entry>
|
</entry>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</search>
|
</search>
|
||||||
@@ -1,15 +1,15 @@
|
|||||||
{{- define "title" }}
|
{{ define "title" }}
|
||||||
{{- .Params.Title | default (T .Section) | default .Section }} - {{ .Site.Title -}}
|
{{ .Params.Title | default (T .Section) | default .Section }} - {{ .Site.Title }}
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
{{ define "main_inner_class" }}index posts-expand{{ end }}
|
{{ define "main_inner_class" }}index posts-expand{{ end }}
|
||||||
|
|
||||||
{{- define "main" }}
|
{{ define "main" }}
|
||||||
|
|
||||||
{{ $paginator := .Paginate (where .Site.RegularPages "Section" "==" .Section) }}
|
{{ $paginator := .Paginate (where .Site.RegularPages "Section" "==" .Section) }}
|
||||||
{{- range $paginator.Pages }}
|
{{ range $paginator.Pages }}
|
||||||
{{ partial "post.html" (dict "ctx" . "IsHome" true) }}
|
{{ partial "post.html" (dict "ctx" . "IsHome" true) }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
{{- partial "partials/pagination.html" . }}
|
{{ partial "partials/pagination.html" . }}
|
||||||
|
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
{{- define "title" }}{{- .Title }} - {{ .Site.Title -}}{{- end }}
|
{{ define "title" }}{{ .Title }} - {{ .Site.Title }}{{ end }}
|
||||||
|
|
||||||
{{- define "main_inner_class" }}post posts-expand{{- end }}
|
{{ define "main_inner_class" }}post posts-expand{{ end }}
|
||||||
|
|
||||||
{{- define "main" }}
|
{{ define "main" }}
|
||||||
{{ partial "post.html" (dict "ctx" . "IsHome" false) }}
|
{{ partial "post.html" (dict "ctx" . "IsHome" false) }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{{- define "title" -}}
|
{{ define "title" }}
|
||||||
{{- .Title }} - {{ T .Data.Singular | default .Data.Singular }} - {{ .Site.Title -}}
|
{{ .Title }} - {{ T .Data.Singular | default .Data.Singular }} - {{ .Site.Title }}
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
{{ define "main_inner_class" }}{{ .Data.Plural }} posts-collapse{{ end }}
|
{{ define "main_inner_class" }}{{ .Data.Plural }} posts-collapse{{ end }}
|
||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
<div class="post-block">
|
<div class="post-block">
|
||||||
@@ -18,5 +18,5 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{- partial "pagination.html" . }}
|
{{ partial "pagination.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,55 +1,96 @@
|
|||||||
{{- define "title" -}}
|
{{ define "title" }}
|
||||||
{{- .Params.Title | default (T .Data.Plural) | default .Data.Plural | dict "Some" | T "AllSome" }} - {{ .Site.Title -}}
|
{{ .Params.Title | default (T .Data.Plural) | default .Data.Plural | dict "Some" | T "AllSome" }} - {{ .Site.Title }}
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
{{- define "main_inner_class" }}{{.Data.Plural}} posts-expand{{ end -}}
|
{{ define "main_inner_class" }}{{.Data.Plural}} posts-expand{{ end }}
|
||||||
{{- define "main" }}
|
{{ define "main" }}
|
||||||
<div class="post-block" lang="{{ .Site.LanguageCode }}">
|
<div class="post-block" lang="{{ .Site.LanguageCode }}">
|
||||||
<div class="post-header">
|
<div class="post-header">
|
||||||
<h1>
|
<h1>
|
||||||
{{- if eq .Data.Plural "categories" }}
|
{{ if eq .Data.Plural "categories" }}
|
||||||
{{- T "CateTitle" }}
|
{{ T "CateTitle" }}
|
||||||
{{- else if eq .Data.Plural "tags" }}
|
{{ else if eq .Data.Plural "tags" }}
|
||||||
{{- T "TagTitle" }}
|
{{ T "TagTitle" }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<div class="post-body">
|
<div class="post-body">
|
||||||
{{- if eq .Data.Plural "categories" }}
|
{{ if eq .Data.Plural "categories" }}
|
||||||
{{ $cats := .Site.Taxonomies.categories }}
|
|
||||||
<div class="category-all-page">
|
<div class="category-all-page">
|
||||||
<div class="category-all-title">
|
<div class="category-all-title">
|
||||||
{{- T "CatesCounterTitle" (.Scratch.Get "catsCount") | safeHTML -}}
|
{{ T "Terms.categories" (.Scratch.Get "catsCount") | safeHTML }}
|
||||||
</div>
|
</div>
|
||||||
<div class="category-all">
|
<div class="category-all">
|
||||||
<ul class="category-list">
|
<ul class="category-list">
|
||||||
{{- range $name, $items := $cats }}
|
{{ $allSecondaryCats := slice }}
|
||||||
<li class="category-list-item">
|
{{ range .Site.Taxonomies.categories.ByCount }}
|
||||||
<a class="category-list-link" href="{{ "/categories/" | relLangURL }}{{ $name | urlize | lower }}" data-pjax-state="">{{ .Page.Title }}</a>
|
{{/*
|
||||||
<span class="category-list-count">{{ len $items }}</span>
|
Rollback the change of the primary category name.
|
||||||
</li>
|
& it could not support the lowercase category name.
|
||||||
{{- end }}
|
{{ $primaryCategory := .Name }}
|
||||||
</ul>
|
*/}}
|
||||||
|
{{ $primaryCategory := .Page.Title }}
|
||||||
|
{{ $primaryCount := 0 }}
|
||||||
|
{{ $secondaryCategories := slice }}
|
||||||
|
{{ $pages := $.Scratch.Get "pages" }}
|
||||||
|
{{ range where $pages "Params.categories" "intersect" (slice $primaryCategory) }}
|
||||||
|
{{ if eq (index .Params.categories 0) $primaryCategory }}
|
||||||
|
{{ $primaryCount = add $primaryCount 1 }}
|
||||||
|
{{/** if and (isset .Params.categories 1) (not (in $secondaryCategories (index .Params.categories 1))) **/}}
|
||||||
|
{{ if isset .Params.categories 1 }}
|
||||||
|
{{ if not (in $secondaryCategories (index .Params.categories 1)) }}
|
||||||
|
{{ $secondaryCategories = $secondaryCategories | append (index .Params.categories 1) }}
|
||||||
|
{{ $allSecondaryCats = $allSecondaryCats | append (index .Params.categories 1) }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ if not (in $allSecondaryCats $primaryCategory) }}
|
||||||
|
<li class="category-list-item">
|
||||||
|
<a class="category-list-link" href="{{ "categories/" | relURL }}{{ $primaryCategory | urlize }}/">
|
||||||
|
{{ $primaryCategory }}
|
||||||
|
<span class="category-list-count">{{ $primaryCount }}</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<ul class="category-children-list">
|
||||||
|
{{ range $secondaryCategories }}
|
||||||
|
{{ $secondaryCategory := . }}
|
||||||
|
{{ $secondaryCount := 0 }}
|
||||||
|
{{ range where $pages "Params.categories" "intersect" (slice $secondaryCategory) }}
|
||||||
|
{{ if and (eq (index .Params.categories 0) $primaryCategory) (eq (index .Params.categories 1) $secondaryCategory) }}
|
||||||
|
{{ $secondaryCount = add $secondaryCount 1 }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
<li class="category-children-list-item">
|
||||||
|
<a class="category-list-link" href="{{ "categories/" | relURL }}{{ . | urlize }}/">
|
||||||
|
{{ . }}
|
||||||
|
<span class="category-list-count">{{ $secondaryCount }}</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
{{ end }}
|
||||||
|
</ul>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
</ul>
|
||||||
|
{{ end }}
|
||||||
|
{{ if eq .Data.Plural "tags" }}
|
||||||
|
{{ $tags := .Site.Taxonomies.tags }}
|
||||||
|
<div class="tag-cloud">
|
||||||
|
<div class="tag-cloud-title">
|
||||||
|
{{ T "Terms.tags" (.Scratch.Get "tagsCount") | safeHTML }}
|
||||||
|
</div>
|
||||||
|
<div class="tag-cloud-tags">
|
||||||
|
{{ $randNums := (seq 10) }}
|
||||||
|
{{- range $name, $items := $tags }}
|
||||||
|
<a class="tag-cloud-{{ index (shuffle $randNums) 0 }}" href="{{ "/tags/" | relLangURL }}{{ $name | urlize }}/">{{ .Page.Title }}
|
||||||
|
<span class="tag-list-count">
|
||||||
|
<sup>({{ len $items }})</sup>
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
{{ end }}
|
||||||
{{- end }}
|
|
||||||
{{- if eq .Data.Plural "tags" }}
|
|
||||||
{{ $tags := .Site.Taxonomies.tags }}
|
|
||||||
<div class="tag-cloud">
|
|
||||||
<div class="tag-cloud-title">
|
|
||||||
{{- T "TagsCounterTitle" (.Scratch.Get "tagsCount") | safeHTML -}}
|
|
||||||
</div>
|
|
||||||
<div class="tag-cloud-tags">
|
|
||||||
{{ $randNums := (seq 10) }}
|
|
||||||
{{- range $name, $items := $tags }}
|
|
||||||
<a class="tag-cloud-{{ index (shuffle $randNums) 0 }}" href="{{ "/tags/" | relLangURL }}{{ $name | urlize | lower }}">{{ .Page.Title }}
|
|
||||||
<span class="tag-list-count">
|
|
||||||
<sup>({{ len $items }})</sup>
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
{{- end }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{{- end }}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,30 +1,30 @@
|
|||||||
{{- define "title" }}
|
{{ define "title" }}
|
||||||
{{- .Params.Title | default (T .Section) | default .Section | dict "Some" | T "AllSome" }} - {{ .Site.Title -}}
|
{{ .Params.Title | default (T .Section) | default .Section | dict "Some" | T "AllSome" }} - {{ .Site.Title }}
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
{{ define "main_inner_class" }}archive posts-collapse{{ end }}
|
{{ define "main_inner_class" }}archive posts-collapse{{ end }}
|
||||||
{{- define "main" }}
|
{{ define "main" }}
|
||||||
<div class="post-block">
|
<div class="post-block">
|
||||||
<div class="post-content">
|
<div class="post-content">
|
||||||
<div class="collection-title">
|
<div class="collection-title">
|
||||||
{{- $cheers := "Um" }}
|
{{ $cheers := "um" }}
|
||||||
{{- $posts := .Scratch.Get "postsCount" }}
|
{{ $posts := .Scratch.Get "postsCount" }}
|
||||||
{{- if gt $posts 210 }}
|
{{ if gt $posts 210 }}
|
||||||
{{- $cheers = "Excellent" }}
|
{{ $cheers = "excellent" }}
|
||||||
{{- else if gt $posts 130 }}
|
{{ else if gt $posts 130 }}
|
||||||
{{- $cheers = "Great" }}
|
{{ $cheers = "great" }}
|
||||||
{{- else if gt $posts 80 }}
|
{{ else if gt $posts 80 }}
|
||||||
{{- $cheers = "Good" }}
|
{{ $cheers = "good" }}
|
||||||
{{- else if gt $posts 50 }}
|
{{ else if gt $posts 50 }}
|
||||||
{{- $cheers = "Nice" }}
|
{{ $cheers = "nice" }}
|
||||||
{{- else if gt $posts 30 }}
|
{{ else if gt $posts 30 }}
|
||||||
{{- $cheers = "Ok" }}
|
{{ $cheers = "ok" }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
<span class="collection-header">
|
<span class="collection-header">
|
||||||
{{- T (printf "PostArchiveCheers%s" $cheers) }}
|
{{ T (printf "PostArchive.cheers.%s" $cheers) }}
|
||||||
{{- T "SymbolComma" }}
|
{{ T "Symbol.comma" }}
|
||||||
{{- T "ArchiveCounterTitle" $posts | safeHTML }}
|
{{ T "Terms.archives" $posts | safeHTML }}
|
||||||
{{- T "SymbolComma" }}
|
{{ T "Symbol.comma" }}
|
||||||
{{- T "PostArchiveKeepOn" }}
|
{{ T "PostArchive.keepOn" }}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -32,5 +32,5 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{- partial "pagination.html" . }}
|
{{ partial "pagination.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{{- define "title" }}{{- .Title }} - {{ .Site.Title -}}{{- end }}
|
{{ define "title" }}{{ .Title }} - {{ .Site.Title }}{{ end }}
|
||||||
|
|
||||||
{{- define "main_inner_class" }}flinks posts-expand{{- end }}
|
{{ define "main_inner_class" }}flinks posts-expand{{ end }}
|
||||||
|
|
||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
|
|
||||||
@@ -13,6 +13,7 @@
|
|||||||
<div class="flinks-list-desc">{{ .FLinksDesc | safeHTML }}</div>
|
<div class="flinks-list-desc">{{ .FLinksDesc | safeHTML }}</div>
|
||||||
<div class="flinks-list-items">
|
<div class="flinks-list-items">
|
||||||
{{ range .FLinksList }}
|
{{ range .FLinksList }}
|
||||||
|
{{ if .visible }}
|
||||||
<div class="flinks-list-item">
|
<div class="flinks-list-item">
|
||||||
<a href="{{ .link }}" rel="external nofollow noreferrer" title=" {{ .name }}" target="_blank">
|
<a href="{{ .link }}" rel="external nofollow noreferrer" title=" {{ .name }}" target="_blank">
|
||||||
<div class="flinks-item-icon">
|
<div class="flinks-item-icon">
|
||||||
@@ -23,6 +24,7 @@
|
|||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
{{- define "main_inner_class" }}index posts-expand{{- end }}
|
{{ define "main_inner_class" }}index posts-expand{{ end }}
|
||||||
|
|
||||||
{{- define "main" }}
|
{{ define "main" }}
|
||||||
|
|
||||||
{{ $paginator := .Paginate (where .Site.RegularPages "Section" "in" .Site.Params.mainSections) }}
|
{{ $paginator := .Paginate (where .Site.RegularPages "Section" "in" .Site.Params.mainSections) }}
|
||||||
{{- range $paginator.Pages }}
|
{{ range $paginator.Pages }}
|
||||||
{{ partial "post.html" (dict "ctx" . "IsHome" true) }}
|
{{ partial "post.html" (dict "ctx" . "IsHome" true) }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
{{- partial "partials/pagination.html" . }}
|
{{ partial "partials/pagination.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -3,19 +3,17 @@
|
|||||||
{{ $fmt := "%s/%s@%s/%s" }}
|
{{ $fmt := "%s/%s@%s/%s" }}
|
||||||
|
|
||||||
{{ $npm := .res.name }}
|
{{ $npm := .res.name }}
|
||||||
{{ with .res.alias2 }}
|
{{ $file := .res.file }}
|
||||||
{{ $npm = . }}
|
|
||||||
{{ end }}
|
|
||||||
{{- $file := .res.file }}
|
|
||||||
|
|
||||||
{{- if ne .vendor "unpkg" }}
|
{{ if ne .router.type "nodejs" }}
|
||||||
{{- with .res.alias }}
|
{{ $file = replaceRE `(dist|lib|source\/js)\/` "" .res.file }}
|
||||||
{{- $npm = . }}
|
{{ $fmt = "%s/%s/%s/%s" }}
|
||||||
{{- end }}
|
{{ else }}
|
||||||
{{- $file = replaceRE `(dist|lib|source\/js)\/` "" .res.file }}
|
{{ with .res.alias }}
|
||||||
{{- $fmt = "%s/%s/%s/%s" }}
|
{{ $npm = . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
{{ $pluginRes := printf $fmt .router $npm .res.version $file }}
|
{{ $pluginRes := printf $fmt .router.url $npm .res.version $file }}
|
||||||
|
|
||||||
{{ return $pluginRes }}
|
{{ return $pluginRes }}
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="search-input-container">
|
<div class="search-input-container">
|
||||||
<input autocomplete="off" autocapitalize="off" maxlength="80"
|
<input autocomplete="off" autocapitalize="off" maxlength="80"
|
||||||
placeholder="{{ T "SearchPh" }}" spellcheck="false"
|
placeholder="{{ T "Search.placeholder" }}" spellcheck="false"
|
||||||
type="search" class="search-input">
|
type="search" class="search-input">
|
||||||
</div>
|
</div>
|
||||||
<span class="popup-btn-close" role="button">
|
<span class="popup-btn-close" role="button">
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
{{- if isset .Site.Params "addthisid" }}
|
{{ if isset .Site.Params "addthisid" }}
|
||||||
<div class="addthis_inline_share_toolbox" style="text-align: center;"></div>
|
<div class="addthis_inline_share_toolbox" style="text-align: center;"></div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,42 +1,42 @@
|
|||||||
{{- $root := . -}}
|
{{ $root := . }}
|
||||||
{{- with .Site.Params.comments }}
|
{{ with .Site.Params.comments }}
|
||||||
{{- $tc := and .storage (gt (len .nav) 1) }}
|
{{ $tc := and .storage (gt (len .nav) 1) }}
|
||||||
{{- $active := .active }}
|
{{ $active := .active }}
|
||||||
{{- $fc := .active }}
|
{{ $fc := .active }}
|
||||||
{{- $sc := "" }}
|
{{ $sc := "" }}
|
||||||
{{- $sn := "" }}
|
{{ $sn := "" }}
|
||||||
<div id="comments" class="post-comments">
|
<div id="comments" class="post-comments">
|
||||||
<div class="comment-head">
|
<div class="comment-head">
|
||||||
<div class="comment-headline">
|
<div class="comment-headline">
|
||||||
<i class="fas fa-comments fa-fw"></i>
|
<i class="fas fa-comments fa-fw"></i>
|
||||||
<span>{{ T "PostCommentTitle" }}</span>
|
<span>{{ T "PostComments.title" }}</span>
|
||||||
</div>
|
</div>
|
||||||
{{- if $tc }}
|
{{ if $tc }}
|
||||||
{{- $sn = (sort .nav "weight") }}
|
{{ $sn = (sort .nav "weight") }}
|
||||||
{{- $fc = index $sn 0 }}
|
{{ $fc = index $sn 0 }}
|
||||||
{{- $sc = index $sn 1 }}
|
{{ $sc = index $sn 1 }}
|
||||||
<div class="comment-switch">
|
<div class="comment-switch">
|
||||||
<span class="first-comment">{{ $fc.title }}</span>
|
<span class="first-comment">{{ $fc.title }}</span>
|
||||||
<span class="switch-btn {{ if eq .active (lower $sc.name) }}move{{ end }}"></span>
|
<span class="switch-btn {{ if eq .active (lower $sc.name) }}move{{ end }}"></span>
|
||||||
<span class="second-comment">{{ $sc.title }}</span>
|
<span class="second-comment">{{ $sc.title }}</span>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
<div class="comment-wrap">
|
<div class="comment-wrap">
|
||||||
{{ $cp := "_thirdparty/comment/%s.html" }}
|
{{ $cp := "_thirdparty/comment/%s.html" }}
|
||||||
{{- if $tc }}
|
{{ if $tc }}
|
||||||
{{- range $sn }}
|
{{ range $sn }}
|
||||||
<div>
|
<div>
|
||||||
{{- partial "_thirdparty/comment/comm_loading.html" . }}
|
{{ partial "_thirdparty/comment/comm_loading.html" . }}
|
||||||
{{- partial (printf $cp (lower .name)) $root }}
|
{{ partial (printf $cp (lower .name)) $root }}
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- else }}
|
{{ else }}
|
||||||
<div>
|
<div>
|
||||||
{{- partial "_thirdparty/comment/comm_loading.html" . }}
|
{{ partial "_thirdparty/comment/comm_loading.html" . }}
|
||||||
{{- partial (printf $cp $fc) $root }}
|
{{ partial (printf $cp $fc) $root }}
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{{- $ft := .Site.Params.footer }}
|
{{ $ft := .Site.Params.footer }}
|
||||||
{{ if $ft.translate }}
|
{{ if $ft.translate }}
|
||||||
<div id="gtranslate" class="google-translate">
|
<div id="gtranslate" class="google-translate">
|
||||||
<i class="fa fa-language"></i>
|
<i class="fa fa-language"></i>
|
||||||
@@ -8,55 +8,61 @@
|
|||||||
<div class="copyright">
|
<div class="copyright">
|
||||||
©
|
©
|
||||||
<span itemprop="copyrightYear">
|
<span itemprop="copyrightYear">
|
||||||
{{- $year := now.Year }}
|
{{ $year := now.Year }}
|
||||||
{{- if isset $ft "since" }}
|
{{ if isset $ft "since" }}
|
||||||
{{- if gt $year $ft.since }}
|
{{ if gt $year $ft.since }}
|
||||||
{{ $ft.since }} - {{ $year }}
|
{{ $ft.since }} - {{ $year }}
|
||||||
{{- else }}
|
{{ else }}
|
||||||
{{ $year }}
|
{{ $year }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- else }}
|
{{ else }}
|
||||||
{{ $year }}
|
{{ $year }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</span>
|
</span>
|
||||||
<span class="with-love">
|
<span class="with-love">
|
||||||
<i class="{{ $ft.icon.name }}"></i>
|
<i class="{{ $ft.icon.name }}"></i>
|
||||||
</span>
|
</span>
|
||||||
<span class="author" itemprop="copyrightHolder">{{ $ft.copyright | default .Site.Params.author }}</span>
|
<span class="author" itemprop="copyrightHolder">{{ $ft.copyright | default .Site.Params.author }}</span>
|
||||||
</div>
|
</div>
|
||||||
{{- if $ft.powered }}
|
{{ if $ft.powered }}
|
||||||
<div class="powered-by">
|
<div class="powered-by">
|
||||||
{{ $pb := printf "<a href='https://gohugo.io' title='%s' target='_blank'>Hugo</a> & <a href='https://github.com/hugo-next/hugo-theme-next' title='%s' target='_blank'>Hugo NexT.%s</a>" hugo.Version .Site.Data.config.version .Site.Params.scheme }}
|
{{ $pb := printf "<a href='https://gohugo.io' title='%s' target='_blank'>Hugo</a> & <a href='https://github.com/hugo-next/hugo-theme-next' title='%s' target='_blank'>Hugo NexT.%s</a>" hugo.Version .Site.Data.config.version .Site.Params.scheme }}
|
||||||
{{- printf (T "FooterPowerby") $pb | safeHTML }}
|
{{ printf (T "Footer.powerby") $pb | safeHTML }}
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- with $ft.beian }}
|
{{ with $ft.beian }}
|
||||||
{{- if .enable }}
|
{{ if .enable }}
|
||||||
<div class="beian">
|
<div class="beian">
|
||||||
<a href="https://beian.miit.gov.cn" target="_blank">{{ .icp }}</a>
|
<a href="https://beian.miit.gov.cn" target="_blank">{{ .icp }}</a>
|
||||||
<img src="/imgs/gongan.png" alt="{{ .provinceAbbr }}公网安备">
|
<img src="/imgs/gongan.png" alt="{{ .provinceAbbr }}公网安备">
|
||||||
<a href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode={{ .gonganNum }}" target="_blank">{{ .provinceAbbr }}公网安备 {{ .gonganNum }} 号</a>
|
<a href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode={{ .gonganNum }}" target="_blank">{{ .provinceAbbr }}公网安备 {{ .gonganNum }} 号</a>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- with $ft.vendors }}
|
{{ with $ft.vendors }}
|
||||||
{{ if .enable }}
|
{{ if .enable }}
|
||||||
<div class="vendors-list">
|
<div class="vendors-list">
|
||||||
{{- range .list }}
|
{{ range .list }}
|
||||||
<a target="_blank" href="{{ .link }}" title="{{ .name }}">
|
<a target="_blank" href="{{ .link }}" title="{{ .name }}">
|
||||||
{{- if .image }}
|
{{ if .image }}
|
||||||
<img src="/imgs/img-lazy-loading.gif" data-src="{{ .image.url }}" alt="{{ .name }}" />
|
<img src="/imgs/img-lazy-loading.gif" data-src="{{ .image.url }}" alt="{{ .name }}" />
|
||||||
{{- else }}
|
{{ else }}
|
||||||
{{ .name }}
|
{{ .name }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
<span>{{ .title }}</span>
|
{{ $cv := $.Scratch.Get "router" }}
|
||||||
|
{{ if and $cv (ne $cv.name "local") }}
|
||||||
|
<a target="_blank" href="{{ $cv.home }}" title="{{ $cv.name }}">
|
||||||
|
<img src="/imgs/img-lazy-loading.gif" data-src="{{ $cv.logo }}" alt="{{ $cv.name }}" />
|
||||||
|
</a>
|
||||||
|
{{ end }}
|
||||||
|
<span>{{ .title }}</span>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
{{- $custom := .Scratch.Get "footer" }}
|
{{ $custom := .Scratch.Get "footer" }}
|
||||||
{{- if $custom }}
|
{{ if $custom }}
|
||||||
{{ partialCached $custom . }}
|
{{ partialCached $custom . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
{{- partial "head/meta.html" . }}
|
{{ partial "head/meta.html" . }}
|
||||||
{{- partial "head/opengraph.html" . }}
|
{{ partial "head/opengraph.html" . }}
|
||||||
{{- partial "head/twitter.html" . }}
|
{{ partial "head/twitter.html" . }}
|
||||||
{{- partial "head/googleplus.html" . }}
|
{{ partial "head/googleplus.html" . }}
|
||||||
{{- partial "head/facebook.html" . }}
|
{{ partial "head/facebook.html" . }}
|
||||||
{{- partialCached "head/verify.html" . }}
|
{{ partial "head/verify.html" . }}
|
||||||
{{- partialCached "head/style.html" . }}
|
{{ partialCached "head/style.html" . }}
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
(function(){
|
(function(){
|
||||||
localDB = {
|
localDB = {
|
||||||
@@ -60,6 +60,6 @@
|
|||||||
theme.active();
|
theme.active();
|
||||||
})(window);
|
})(window);
|
||||||
</script>
|
</script>
|
||||||
{{- partial "head/config.html" . }}
|
{{ partial "head/config.html" . }}
|
||||||
{{- partialCached "head/analytics.html" . }}
|
{{ partialCached "head/analytics.html" . }}
|
||||||
|
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
{{- if isset .Site.Params.analytics "laid" }}
|
{{ if isset .Site.Params.analytics "laid" }}
|
||||||
{{ partial "_thirdparty/analytics/51la.html" . }}
|
{{ partial "_thirdparty/analytics/51la.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if isset .Site.Params.analytics "baidu" }}
|
{{ if isset .Site.Params.analytics "baidu" }}
|
||||||
{{ partial "_thirdparty/analytics/baidu.html" . }}
|
{{ partial "_thirdparty/analytics/baidu.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if isset .Site.Params.analytics "google" }}
|
{{ if isset .Site.Params.analytics "google" }}
|
||||||
{{ partial "_thirdparty/analytics/google.html" . }}
|
{{ partial "_thirdparty/analytics/google.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if isset .Site.Params.analytics "busuanzi" }}
|
{{ if or (isset .Site.Params.analytics "busuanzi") (eq .Site.Params.postMeta.views.plugin "busuanzi") }}
|
||||||
{{ partial "_thirdparty/analytics/busuanzi.html" . }}
|
{{ partial "_thirdparty/analytics/busuanzi.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
{{- $pageCfg := dict
|
{{ $pageCfg := dict
|
||||||
"isHome" .IsHome
|
"isHome" .IsHome
|
||||||
"isPage" .IsPage
|
"isPage" .IsPage
|
||||||
"comments" (.Scratch.Get "isComment")
|
"comments" (.Scratch.Get "isComment")
|
||||||
"permalink" (.Page.Permalink | absURL)
|
"permalink" (.Page.Permalink | absURL)
|
||||||
"path" (.Page.Permalink | path.Base)
|
"path" (.Page.Permalink | path.Base)
|
||||||
"title" .Page.Title
|
"title" .Page.Title
|
||||||
-}}
|
}}
|
||||||
|
|
||||||
{{/* Append waline pageview & comment plugin */}}
|
{{/* Append waline pageview & comment plugin */}}
|
||||||
{{ if and .Site.Params.waline ( or .Site.Params.waline.pageView .Site.Params.waline.comment) }}
|
{{ if or (eq .Site.Params.postMeta.views.plugin "waline") (eq .Site.Params.postMeta.comments.plugin "waline") }}
|
||||||
{{ $counter := dict
|
{{ $counter := dict
|
||||||
"js" .Site.Data.resources.plugins.waline.js
|
"js" .Site.Data.resources.plugins.waline.js
|
||||||
}}
|
}}
|
||||||
@@ -37,4 +37,4 @@
|
|||||||
{{ $pageCfg = merge $pageCfg (dict "math" $math) }}
|
{{ $pageCfg = merge $pageCfg (dict "math" $math) }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
<script class="next-config" data-name="page" type="application/json">{{- $pageCfg -}}</script>
|
<script class="next-config" data-name="page" type="application/json">{{ $pageCfg }}</script>
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
{{- with .Site.Params.openGraph.facebook }}
|
{{ with .Site.Params.openGraph.facebook }}
|
||||||
{{- range $attr, $val := . }}
|
{{ range $attr, $val := . }}
|
||||||
<meta property="fb:{{ $attr }}" content="{{ $val }}">
|
<meta property="fb:{{ $attr }}" content="{{ $val }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
<!-- Website icons -->
|
<!-- Website icons -->
|
||||||
{{- with .Site.Params.favicon }}
|
{{ with .Site.Params.favicon }}
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="{{ .icon }}">
|
<link rel="shortcut icon" type="image/x-icon" href="{{ .icon }}">
|
||||||
<link rel="icon" type="image/x-icon" href="{{ .icon }}">
|
<link rel="icon" type="image/x-icon" href="{{ .icon }}">
|
||||||
<link rel="icon" type="image/png" sizes="16x16" href="{{ .small }}">
|
<link rel="icon" type="image/png" sizes="16x16" href="{{ .small }}">
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="{{ .medium }}">
|
<link rel="icon" type="image/png" sizes="32x32" href="{{ .medium }}">
|
||||||
<link rel="apple-touch-icon" sizes="180x180" href="{{ .appleTouchIcon }}">
|
<link rel="apple-touch-icon" sizes="180x180" href="{{ .appleTouchIcon }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
<!-- Website icons -->
|
<!-- Website icons -->
|
||||||
@@ -1,3 +1,3 @@
|
|||||||
{{- with .Site.Params.openGraph.googlePlus }}
|
{{ with .Site.Params.openGraph.googlePlus }}
|
||||||
<link rel="publisher" href=" {{ . }}">
|
<link rel="publisher" href=" {{ . }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,10 +1,10 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width">
|
<meta name="viewport" content="width=device-width">
|
||||||
{{- if .Site.Params.darkmode }}
|
{{ if .Site.Params.darkmode }}
|
||||||
<meta name="theme-color" content="{{ .Site.Params.themeColor.dark }}" media="(prefers-color-scheme: dark)" />
|
<meta name="theme-color" content="{{ .Site.Params.themeColor.dark }}" media="(prefers-color-scheme: dark)" />
|
||||||
{{- else }}
|
{{ else }}
|
||||||
<meta name="theme-color" content="{{ .Site.Params.themeColor.light }}" media="(prefers-color-scheme: light)" />
|
<meta name="theme-color" content="{{ .Site.Params.themeColor.light }}" media="(prefers-color-scheme: light)" />
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{ hugo.Generator }}
|
{{ hugo.Generator }}
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="{{ .Site.Params.favicon.icon }}">
|
<link rel="shortcut icon" type="image/x-icon" href="{{ .Site.Params.favicon.icon }}">
|
||||||
<link rel="icon" type="image/x-icon" href="{{ .Site.Params.favicon.icon }}">
|
<link rel="icon" type="image/x-icon" href="{{ .Site.Params.favicon.icon }}">
|
||||||
@@ -13,18 +13,19 @@
|
|||||||
<link rel="apple-touch-icon" sizes="180x180" href="{{ .Site.Params.favicon.appleTouchIcon }}">
|
<link rel="apple-touch-icon" sizes="180x180" href="{{ .Site.Params.favicon.appleTouchIcon }}">
|
||||||
<meta itemprop="name" content="{{ .Title }}" />
|
<meta itemprop="name" content="{{ .Title }}" />
|
||||||
<meta itemprop="description" content="{{ .Description | default .Site.Params.description }}" />
|
<meta itemprop="description" content="{{ .Description | default .Site.Params.description }}" />
|
||||||
{{- if .IsPage }}
|
<meta name="description" content="{{ .Description | default .Site.Params.description }}" />
|
||||||
{{- with .Date }}
|
{{ if .IsPage }}
|
||||||
|
{{ with .Date }}
|
||||||
<meta itemprop="datePublished" {{ . }} />
|
<meta itemprop="datePublished" {{ . }} />
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- with .Lastmod }}
|
{{ with .Lastmod }}
|
||||||
<meta itemprop="dateModified" {{ . }} />
|
<meta itemprop="dateModified" {{ . }} />
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- $img := .Site.Params.customLogo | default .Site.Params.avatar.url }}
|
{{ $img := .Site.Params.customLogo | default .Site.Params.avatar.url }}
|
||||||
{{- if and .IsPage (isset .Params "images") }}
|
{{ if and .IsPage (isset .Params "images") }}
|
||||||
{{- $img := index .Params.images 0 }}
|
{{ $img := index .Params.images 0 }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- .Scratch.Set "metaImg" $img }}
|
{{ .Scratch.Set "metaImg" $img }}
|
||||||
<meta itemprop="image" content="{{ $img | absURL }}" />
|
<meta itemprop="image" content="{{ $img | absURL }}" />
|
||||||
<meta itemprop="keywords" content="{{ if and .IsPage (isset .Params "tags")}}{{ delimit .Params.tags "," }}{{ else }}{{ .Site.Params.keywords }}{{ end }}" />
|
<meta itemprop="keywords" content="{{ if and .IsPage (isset .Params "tags")}}{{ delimit .Params.tags "," }}{{ else }}{{ .Site.Params.keywords }}{{ end }}" />
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
{{- $Site := .Site -}}
|
{{ $Site := .Site }}
|
||||||
{{- $Params := .Site.Params -}}
|
{{ $Params := .Site.Params }}
|
||||||
{{- $Page := .Page -}}
|
{{ $Page := .Page }}
|
||||||
{{- $langCode := .Scratch.Get "langCode" -}}
|
{{ $langCode := .Scratch.Get "langCode" }}
|
||||||
{{- with .Site.Params.openGraph -}}
|
{{ with .Site.Params.openGraph }}
|
||||||
{{- if .enable -}}
|
{{ if .enable }}
|
||||||
<meta property="og:type" content="website">
|
<meta property="og:type" content="website">
|
||||||
<meta property="og:title" content="{{ $Page.Title }}">
|
<meta property="og:title" content="{{ $Page.Title }}">
|
||||||
<meta property="og:description" content="{{ default $Params.description $Page.Description }}">
|
<meta property="og:description" content="{{ default $Params.description $Page.Description }}">
|
||||||
@@ -12,21 +12,21 @@
|
|||||||
<meta property="og:site_name" content="{{ $Site.Title }}">
|
<meta property="og:site_name" content="{{ $Site.Title }}">
|
||||||
<meta property="og:locale" content="{{ $langCode }}">
|
<meta property="og:locale" content="{{ $langCode }}">
|
||||||
<meta property="article:author" content="{{ default $Params.author $Page.Params.Author }}">
|
<meta property="article:author" content="{{ default $Params.author $Page.Params.Author }}">
|
||||||
{{- with .twitter -}}
|
{{ with .twitter }}
|
||||||
{{- range $attr, $val := . }}
|
{{ range $attr, $val := . }}
|
||||||
<meta name="twitter:{{ $attr }}" content="{{ $val }}">
|
<meta name="twitter:{{ $attr }}" content="{{ $val }}">
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
|
|
||||||
{{- with .googlePlus }}
|
{{ with .googlePlus }}
|
||||||
<link rel="publisher" href=" {{ . }}">
|
<link rel="publisher" href=" {{ . }}">
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
|
|
||||||
{{- with .facebook -}}
|
{{ with .facebook }}
|
||||||
{{- range $attr, $val := . }}
|
{{ range $attr, $val := . }}
|
||||||
<meta property="fb:{{ $attr }}" content="{{ $val }}">
|
<meta property="fb:{{ $attr }}" content="{{ $val }}">
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
|
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
{{- end -}}
|
{{ end }}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
{{- if .Site.Params.openGraph.enable }}
|
{{ if .Site.Params.openGraph.enable }}
|
||||||
<meta property="og:type" content="{{ if .IsPage }}article{{ else }}website{{ end }}" />
|
<meta property="og:type" content="{{ if .IsPage }}article{{ else }}website{{ end }}" />
|
||||||
<meta property="og:title" content="{{ .Title | default .Site.Title }}" />
|
<meta property="og:title" content="{{ .Title | default .Site.Title }}" />
|
||||||
<meta property="og:description" content="{{ .Description | default .Site.Params.Description }}" />
|
<meta property="og:description" content="{{ .Description | default .Site.Params.Description }}" />
|
||||||
@@ -9,9 +9,9 @@
|
|||||||
<meta property="og:url" content="{{ .Permalink }}"/>
|
<meta property="og:url" content="{{ .Permalink }}"/>
|
||||||
<meta property="og:site_name" content="{{ .Site.Title }}" />
|
<meta property="og:site_name" content="{{ .Site.Title }}" />
|
||||||
<meta property="og:locale" content="{{ .Site.LanguageCode }}"/>
|
<meta property="og:locale" content="{{ .Site.LanguageCode }}"/>
|
||||||
{{- if .IsPage }}
|
{{ if .IsPage }}
|
||||||
<meta property="article:author" content="{{ .Params.Author | default .Site.Params.Author }}" />
|
<meta property="article:author" content="{{ .Params.Author | default .Site.Params.Author }}" />
|
||||||
<meta property="article:published_time" content="{{ .Date }}" />
|
<meta property="article:published_time" content="{{ .Date }}" />
|
||||||
<meta property="article:modified_time" content="{{ .Lastmod }}" />
|
<meta property="article:modified_time" content="{{ .Lastmod }}" />
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,31 +1,31 @@
|
|||||||
<!-- Plugin style files -->
|
<!-- Plugin style files -->
|
||||||
{{- $cssRes := .Site.Data.resources.css }}
|
{{ $cssRes := .Site.Data.resources.css }}
|
||||||
{{- $vendor := .Site.Params.vendors.plugins }}
|
{{ $vendor := .Site.Params.vendors.plugins }}
|
||||||
{{- $router := .Scratch.Get "router" }}
|
{{ $router := .Scratch.Get "router" }}
|
||||||
|
|
||||||
{{- range $css := $cssRes }}
|
{{ range $css := $cssRes }}
|
||||||
{{ $pluginCss := partial "_funs/get_res.html" (dict "res" . "vendor" $vendor "router" $router) }}
|
{{ $pluginCss := partial "_funs/get_res.html" (dict "res" . "vendor" $vendor "router" $router) }}
|
||||||
<link type="text/css" rel="stylesheet" href="{{ $pluginCss }}" />
|
<link type="text/css" rel="stylesheet" href="{{ $pluginCss }}" />
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
<!-- Main Style file -->
|
<!-- Main Style file -->
|
||||||
{{- $scss := resources.Get "css/main.scss" }}
|
{{ $scss := resources.Get "css/main.scss" }}
|
||||||
{{- $scss = $scss | resources.ExecuteAsTemplate "main.scss" . }}
|
{{ $scss = $scss | resources.ExecuteAsTemplate "main.scss" . }}
|
||||||
{{- $css := $scss | toCSS (dict "targetPath" "/css/main.css" "outputStyle" "expanded") }}
|
{{ $css := $scss | toCSS (dict "targetPath" "/css/main.css" "outputStyle" "expanded") }}
|
||||||
{{- if hugo.IsProduction }}
|
{{ if hugo.IsProduction }}
|
||||||
{{- $css = $css | minify | fingerprint }}
|
{{ $css = $css | minify | fingerprint }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
<link rel="stylesheet" href="{{ $css.RelPermalink }}">
|
<link rel="stylesheet" href="{{ $css.RelPermalink }}">
|
||||||
{{- if .IsPage }}
|
{{ if .IsPage }}
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
.post-footer, .flinks-list-footer hr:after {
|
.post-footer, .flinks-list-footer hr:after {
|
||||||
content: "{{ .Site.Params.postFooter.endLineTip }}";
|
content: "{{ .Site.Params.postFooter.endLineTip }}";
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
{{- $custom := .Scratch.Get "style" }}
|
{{ $custom := .Scratch.Get "style" }}
|
||||||
{{- if $custom }}
|
{{ if $custom }}
|
||||||
<link rel="stylesheet" type="text/css" href="{{ $custom }}">
|
<link rel="stylesheet" type="text/css" href="{{ $custom }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
{{- with .Site.Params.openGraph.twitter }}
|
{{ with .Site.Params.openGraph.twitter }}
|
||||||
{{- $img := $.Params.openGraph.twitter.image | default ($.Scratch.Get "metaImg") }}
|
{{ $img := $.Params.openGraph.twitter.image | default ($.Scratch.Get "metaImg") }}
|
||||||
<meta name="twitter:card" content="summary_large_image"/>
|
<meta name="twitter:card" content="summary_large_image"/>
|
||||||
<meta name="twitter:creator" content="{{ .creator }}"/>
|
<meta name="twitter:creator" content="{{ .creator }}"/>
|
||||||
<meta name="twitter:description" content="{{ with $.Page.Description }}{{ . }}{{ else }}{{if $.Page.IsPage}}{{ .Summary }}{{ else }}{{ $.Params.description }}{{ end }}{{ end }}"/>
|
<meta name="twitter:description" content="{{ with $.Page.Description }}{{ . }}{{ else }}{{if $.Page.IsPage}}{{ .Summary }}{{ else }}{{ $.Params.description }}{{ end }}{{ end }}"/>
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
{{ if .IsHome }}
|
{{ if .IsHome }}
|
||||||
{{- with .Site.Params.googleSiteVerification }}
|
{{ with .Site.Params.googleSiteVerification }}
|
||||||
<meta name="google-site-verification" content="{{ . }}">
|
<meta name="google-site-verification" content="{{ . }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- with .Site.Params.bingSiteVerification }}
|
{{ with .Site.Params.bingSiteVerification }}
|
||||||
<meta name="msvalidate.01" content="{{ . }}">
|
<meta name="msvalidate.01" content="{{ . }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- with .Site.Params.yandexSiteVerification }}
|
{{ with .Site.Params.yandexSiteVerification }}
|
||||||
<meta name="yandex-verification" content="{{ . }}">
|
<meta name="yandex-verification" content="{{ . }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- with .Site.Params.baiduSiteVerification }}
|
{{ with .Site.Params.baiduSiteVerification }}
|
||||||
<meta name="baidu-site-verification" content="{{ . }}">
|
<meta name="baidu-site-verification" content="{{ . }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
@@ -9,9 +9,9 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="site-meta">
|
<div class="site-meta">
|
||||||
{{- if and .Site.Params.customLogo (eq .Site.Params.scheme "Muse") }}
|
{{ if and .Site.Params.customLogo (eq .Site.Params.scheme "Muse") }}
|
||||||
<img class="custom-logo-image" src="{{ .Site.Params.customLogo }}" alt="{{ $title }}">
|
<img class="custom-logo-image" src="{{ .Site.Params.customLogo }}" alt="{{ $title }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
<a href="{{ "/" | relLangURL }}" class="brand" rel="start">
|
<a href="{{ "/" | relLangURL }}" class="brand" rel="start">
|
||||||
<i class="logo-line"></i>
|
<i class="logo-line"></i>
|
||||||
@@ -20,17 +20,17 @@
|
|||||||
</a>
|
</a>
|
||||||
{{ if isset .Site.Params "subtitle" }}
|
{{ if isset .Site.Params "subtitle" }}
|
||||||
<p class="site-subtitle" itemprop="description">{{ .Site.Params.subtitle }}</p>
|
<p class="site-subtitle" itemprop="description">{{ .Site.Params.subtitle }}</p>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if and .Site.Params.customLogo (or (eq .Site.Params.scheme "Gemini") (eq .Site.Params.scheme "Pisces"))}}
|
{{ if and .Site.Params.customLogo (or (eq .Site.Params.scheme "Gemini") (eq .Site.Params.scheme "Pisces"))}}
|
||||||
<img class="custom-logo-image" src="{{ .Site.Params.customLogo }}" alt="{{ $title }}">
|
<img class="custom-logo-image" src="{{ .Site.Params.customLogo }}" alt="{{ $title }}">
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="site-nav-right">
|
<div class="site-nav-right">
|
||||||
<div class="toggle popup-trigger">
|
<div class="toggle popup-trigger">
|
||||||
{{ if or .Site.Params.algoliaSearch.enable .Site.Params.localSearch.enable }}
|
{{ if or .Site.Params.algoliaSearch.enable .Site.Params.localSearch.enable }}
|
||||||
<i class="fa fa-search fa-fw fa-lg"></i>
|
<i class="fa fa-search fa-fw fa-lg"></i>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -1,25 +1,38 @@
|
|||||||
{{- $ms := .Site.Params.menuSets }}
|
{{ $ms := .Site.Params.menuSets }}
|
||||||
{{- $curP := .Page }}
|
{{ $curP := .Page }}
|
||||||
<nav class="site-nav">
|
<nav class="site-nav">
|
||||||
<ul class="main-menu menu">
|
<ul class="main-menu menu">
|
||||||
{{- range .Site.Menus.main }}
|
{{ range .Site.Menus.main }}
|
||||||
{{- $active := $curP.IsMenuCurrent "main" . }}
|
{{ $active := $curP.IsMenuCurrent "main" . }}
|
||||||
<li class="menu-item menu-item-{{ .Identifier }}">
|
<li class="menu-item menu-item-{{ .Identifier }}">
|
||||||
<a href="{{ .URL | relLangURL }}" class="hvr-icon-pulse {{if $active }} menu-item-active{{ end }}" rel="section">
|
<a href="{{ .URL | relLangURL }}" class="{{ if .HasChildren }}menus-parent{{ end }} hvr-icon-pulse {{if $active }} menu-item-active{{ end }}" rel="section">
|
||||||
{{- if $ms.icons }}<i class="fa fa-{{ .Pre }} hvr-icon"></i>{{ end }}{{- .Name }}
|
{{ if $ms.icons }}<i class="fa fa-{{ .Pre }} hvr-icon"></i>{{ end }}{{ .Name }}
|
||||||
{{- if and $ms.badges (eq .Identifier "archives") }}
|
{{ if .HasChildren }}<span class="menu-item-shrink-icon"><i class="fa fa-angle-right"></i></span>{{ end }}
|
||||||
<span class="badge">{{ $.Scratch.Get "postsCount" }}</span>
|
{{ if and $ms.badges (eq .Identifier "archives") }}
|
||||||
{{- end }}
|
<span class="badge">{{ $.Scratch.Get "postsCount" }}</span>
|
||||||
|
{{ end }}
|
||||||
</a>
|
</a>
|
||||||
|
{{ if .HasChildren }}
|
||||||
|
<ul class="menu-children">
|
||||||
|
{{ range .Children }}
|
||||||
|
{{ $active = $curP.IsMenuCurrent "main" . }}
|
||||||
|
<li class="menu-child-item">
|
||||||
|
<a href="{{ .URL | relLangURL }}" class="hvr-icon-pulse {{if $active }}menu-item-active{{ end }}" rel="section">
|
||||||
|
<i class="fa hvr-icon"></i>{{ .Name }}
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
{{ end }}
|
||||||
|
</ul>
|
||||||
|
{{ end }}
|
||||||
</li>
|
</li>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|
||||||
{{- if or .Site.Params.algoliaSearch.enable .Site.Params.localSearch.enable }}
|
{{ if or .Site.Params.algoliaSearch.enable .Site.Params.localSearch.enable }}
|
||||||
<li class="menu-item menu-item-search">
|
<li class="menu-item menu-item-search">
|
||||||
<a role="button" class="popup-trigger hvr-icon-pulse">
|
<a role="button" class="popup-trigger hvr-icon-pulse">
|
||||||
{{- if $ms.icons }}<i class="fa fa-search fa-fw hvr-icon"></i>{{ end }}{{ T "MSearchLabel" }}
|
{{ if $ms.icons }}<i class="fa fa-search fa-fw hvr-icon"></i>{{ end }}{{ T "Sidebar.label.search" }}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
{{- if or .Site.Params.algoliaSearch.enable .Site.Params.localSearch.enable }}
|
{{ if or .Site.Params.algoliaSearch.enable .Site.Params.localSearch.enable }}
|
||||||
<div class="search-pop-overlay">
|
<div class="search-pop-overlay">
|
||||||
<div class="popup search-popup">
|
<div class="popup search-popup">
|
||||||
{{- if .Site.Params.algoliaSearch.enable }}
|
{{ if .Site.Params.algoliaSearch.enable }}
|
||||||
{{ partial "_thirdparty/search/algolia.html" . }}
|
{{ partial "_thirdparty/search/algolia.html" . }}
|
||||||
{{- else if .Site.Params.localSearch.enable }}
|
{{ else if .Site.Params.localSearch.enable }}
|
||||||
{{ partial "_thirdparty/search/local.html" . }}
|
{{ partial "_thirdparty/search/local.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,82 +0,0 @@
|
|||||||
{{- $SP := .Site.Params -}}
|
|
||||||
<aside class="sidebar">
|
|
||||||
<div class="sidebar-inner sidebar-overview-active">
|
|
||||||
<ul class="sidebar-nav">
|
|
||||||
<li class="sidebar-nav-toc">{{ T "TableOfContents" }}</li>
|
|
||||||
<li class="sidebar-nav-overview">{{ T "SiteInfo" }}</li>
|
|
||||||
</ul>
|
|
||||||
<div class="sidebar-panel-container">
|
|
||||||
<div class="post-toc-wrap sidebar-panel">
|
|
||||||
</div>
|
|
||||||
<div class="site-overview-wrap sidebar-panel">
|
|
||||||
<div class="site-author site-overview-item animated" itemprop="author" itemscope itemtype="http://schema.org/Person">
|
|
||||||
<img class="site-author-image" itemprop="image" alt="{{ $SP.author }}" src="{{ $SP.avatar.url }}">
|
|
||||||
<p class="site-author-name" itemprop="name">{{ $SP.author }}</p>
|
|
||||||
<div class="site-description" itemprop="description">{{ $SP.description }}</div>
|
|
||||||
</div>
|
|
||||||
<div class="site-state-wrap site-overview-item animated">
|
|
||||||
{{- if $SP.siteState }}
|
|
||||||
<nav class="site-state">
|
|
||||||
<div class="site-state-item site-state-posts">
|
|
||||||
<a href="{{ "/archives/" | relLangURL }}">
|
|
||||||
<span class="site-state-item-count">{{ len (where .Site.RegularPages "Section" "in" .Site.Params.mainSections) }}</span>
|
|
||||||
<span class="site-state-item-name">{{ T "SitePostsTitle" }}</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="site-state-item site-state-categories">
|
|
||||||
<a href="{{ "/categories/" | relLangURL }}">
|
|
||||||
<span class="site-state-item-count">{{ len .Site.Taxonomies.categories }}</span>
|
|
||||||
<span class="site-state-item-name">{{ T "SiteCatesTitle" }}</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="site-state-item site-state-tags">
|
|
||||||
<a href="{{ "/tags/" | relLangURL }}">
|
|
||||||
<span class="site-state-item-count">{{ len .Site.Taxonomies.tags }}</span>
|
|
||||||
<span class="site-state-item-name">{{ T "SiteTagsTitle" }}</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
{{- end }}
|
|
||||||
<div class="rss-link">
|
|
||||||
<a href="{{ "/index.xml" | relLangURL }}" rel="alternate" type="application/rss+xml" target="_blank">
|
|
||||||
<i class="fa fa-rss"></i>
|
|
||||||
{{ T "RSSTitle" }}
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="links-of-social site-overview-item animated">
|
|
||||||
{{ $si := $SP.socialIcons }}
|
|
||||||
{{- range $SP.socials }}
|
|
||||||
{{- range $name,$val := . }}
|
|
||||||
{{- $vals := split $val "||" }}
|
|
||||||
{{- $url := trim (index $vals 0) " " }}
|
|
||||||
{{- $icon := trim (index $vals 1) " " }}
|
|
||||||
<span class="links-of-social-item">
|
|
||||||
<a href="{{- $url }}" title="{{- $name }} → {{- $url }}" rel="noopener" {{- if and $si.enable $si.transition }} class="hvr-icon-pulse" {{- end }} target="_blank">
|
|
||||||
{{- if $si.enable }}
|
|
||||||
<i class="{{- $icon }} fa-fw {{ if $si.transition }} hvr-icon {{ end }}"></i>
|
|
||||||
{{- end }}
|
|
||||||
{{- if or (not $si.enable) (not $si.iconsOnly) }}
|
|
||||||
{{- $name }}
|
|
||||||
{{- end }}
|
|
||||||
</a>
|
|
||||||
</span>
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
</div>
|
|
||||||
{{- $cc := $SP.creativeCommons }}
|
|
||||||
{{- if and $cc $cc.sidebar }}
|
|
||||||
<div class="cc-license animated" itemprop="license">
|
|
||||||
<a href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.{{ substr .Site.Language 0 2 }}" class="cc-opacity" rel="noopener" target="_blank" title="{{ T "CCLinkTitle" }}">
|
|
||||||
<img src="/imgs/cc/{{ $cc.size }}/{{ replace $cc.license "-" "_" }}.svg" alt="{{ T "CCLinkTitle" }}">
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
{{ end }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="back-to-top" role="button" aria-label="返回顶部">
|
|
||||||
<i class="fa fa-arrow-up"></i>
|
|
||||||
<span>0%</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</aside>
|
|
||||||
@@ -14,12 +14,26 @@
|
|||||||
|
|
||||||
{{ $globalVars := newScratch }}
|
{{ $globalVars := newScratch }}
|
||||||
|
|
||||||
{{ $globalVars.Set "postsCount" (len (where .Page.Site.RegularPages "Section" "in" .Site.Params.mainSections)) }}
|
{{ $pages := (where .Page.Site.RegularPages "Section" "in" .Site.Params.mainSections) }}
|
||||||
|
{{ $globalVars.Set "pages" $pages}}
|
||||||
|
{{ $globalVars.Set "postsCount" (len $pages)}}
|
||||||
{{ $globalVars.Set "catsCount" (len .Site.Taxonomies.categories) }}
|
{{ $globalVars.Set "catsCount" (len .Site.Taxonomies.categories) }}
|
||||||
{{ $globalVars.Set "tagsCount" (len .Site.Taxonomies.tags) }}
|
{{ $globalVars.Set "tagsCount" (len .Site.Taxonomies.tags) }}
|
||||||
|
|
||||||
{{ $vendor := .Site.Params.vendors.plugins }}
|
{{ $vendor := .Site.Params.vendors.plugins }}
|
||||||
{{ $router := index .Site.Data.resources.vendors $vendor }}
|
{{ $router := dict }}
|
||||||
|
|
||||||
|
{{ if eq $vendor "local" }}
|
||||||
|
{{ $router = dict "url" (printf "%s3rd" .Site.BaseURL) "name" $vendor "type" "modern" }}
|
||||||
|
{{ else }}
|
||||||
|
{{ range .Site.Data.resources.vendors }}
|
||||||
|
{{ if eq .name $vendor }}
|
||||||
|
{{ $router = . }}
|
||||||
|
{{ break }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
{{ $globalVars.Set "vendor" $vendor }}
|
{{ $globalVars.Set "vendor" $vendor }}
|
||||||
{{ $globalVars.Set "router" $router }}
|
{{ $globalVars.Set "router" $router }}
|
||||||
|
|
||||||
@@ -37,10 +51,10 @@
|
|||||||
"lazyload" .Site.Params.lazyload
|
"lazyload" .Site.Params.lazyload
|
||||||
"motion" .Site.Params.motion
|
"motion" .Site.Params.motion
|
||||||
"i18n" (dict
|
"i18n" (dict
|
||||||
"placeholder" (T "SearchPh")
|
"placeholder" (T "Search.placeholder")
|
||||||
"empty" (T "SearchEmpty")
|
"empty" (T "Search.empty")
|
||||||
"hits_time" (T "SearchHitsTime")
|
"hits_time" (T "Search.time")
|
||||||
"hits" (T "SearchHits")
|
"hits" (T "Search.hits")
|
||||||
"ds_years" (T "DateSuffix.years")
|
"ds_years" (T "DateSuffix.years")
|
||||||
"ds_days" (T "DateSuffix.days")
|
"ds_days" (T "DateSuffix.days")
|
||||||
"ds_hours" (T "DateSuffix.hours")
|
"ds_hours" (T "DateSuffix.hours")
|
||||||
@@ -58,6 +72,16 @@
|
|||||||
{{ $config = merge $config $localSearch }}
|
{{ $config = merge $config $localSearch }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
{{ with .Site.Params.postMeta }}
|
||||||
|
{{ $postmeta := dict
|
||||||
|
"views" .views
|
||||||
|
"comments" .comments
|
||||||
|
}}
|
||||||
|
{{ $config = merge $config (dict "postmeta" $postmeta) }}
|
||||||
|
{{ else }}
|
||||||
|
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
{{ if .Site.Params.algoliaSearch.enable }}
|
{{ if .Site.Params.algoliaSearch.enable }}
|
||||||
{{ $algoliaSearch := dict
|
{{ $algoliaSearch := dict
|
||||||
"js" .Site.Data.resources.algolia
|
"js" .Site.Data.resources.algolia
|
||||||
@@ -127,11 +151,6 @@
|
|||||||
{{ $config = merge $config (dict "lawidget" $lawidget) }}
|
{{ $config = merge $config (dict "lawidget" $lawidget) }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ with .Site.Params.analytics.busuanzi }}
|
|
||||||
{{ $busz := dict "pageview" .postViews }}
|
|
||||||
{{ $config = merge $config (dict "busuanzi" $busz) }}
|
|
||||||
{{ end }}
|
|
||||||
|
|
||||||
{{ $globalVars.Set "config" $config }}
|
{{ $globalVars.Set "config" $config }}
|
||||||
|
|
||||||
{{ with .Site.Params.customFilePath }}
|
{{ with .Site.Params.customFilePath }}
|
||||||
|
|||||||
@@ -12,16 +12,16 @@
|
|||||||
</time>
|
</time>
|
||||||
</div>
|
</div>
|
||||||
<div class="post-title">
|
<div class="post-title">
|
||||||
{{- if isset .Params "extlink" }}
|
{{ if isset .Params "extlink" }}
|
||||||
<a href="{{ .Params.extlink }}" rel="noopener external nofollow noreferrer" target="_blank" class="exturl post-title-link post-title-link-external" title="">
|
<a href="{{ .Params.extlink }}" rel="noopener external nofollow noreferrer" target="_blank" class="exturl post-title-link post-title-link-external" title="">
|
||||||
<span itemprop="name">{{- .Title -}}</span>
|
<span itemprop="name">{{ .Title }}</span>
|
||||||
<i class="fa fa-external-link-alt"></i>
|
<i class="fa fa-external-link-alt"></i>
|
||||||
</a>
|
</a>
|
||||||
{{- else }}
|
{{ else }}
|
||||||
<a class="post-title-link" href="{{ .RelPermalink | relLangURL }}" itemprop="url">
|
<a class="post-title-link" href="{{ .RelPermalink | relLangURL }}" itemprop="url">
|
||||||
<span itemprop="name">{{ .Title }}</span>
|
<span itemprop="name">{{ .Title }}</span>
|
||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
</article>
|
</article>
|
||||||
|
|||||||
@@ -1,42 +1,42 @@
|
|||||||
{{- $pag := .Paginator }}
|
{{ $pag := .Paginator }}
|
||||||
{{- $tps := $pag.TotalPages }}
|
{{ $tps := $pag.TotalPages }}
|
||||||
|
|
||||||
{{- $begin := sub $pag.PageNumber 4}}
|
{{ $begin := sub $pag.PageNumber 4}}
|
||||||
{{- $.Scratch.Set "begin" $begin }}
|
{{ $.Scratch.Set "begin" $begin }}
|
||||||
{{- $end := add $pag.PageNumber 4}}
|
{{ $end := add $pag.PageNumber 4}}
|
||||||
{{- $.Scratch.Set "end" $end }}
|
{{ $.Scratch.Set "end" $end }}
|
||||||
|
|
||||||
{{- if lt $begin 0}}
|
{{ if lt $begin 0}}
|
||||||
{{- $end := sub $end $begin }}
|
{{ $end := sub $end $begin }}
|
||||||
{{- $.Scratch.Set "end" $end }}
|
{{ $.Scratch.Set "end" $end }}
|
||||||
{{- end}}
|
{{ end}}
|
||||||
{{- $end := $.Scratch.Get "end"}}
|
{{ $end := $.Scratch.Get "end"}}
|
||||||
|
|
||||||
{{- $over := sub $tps $end }}
|
{{ $over := sub $tps $end }}
|
||||||
|
|
||||||
{{- if lt $over 0}}
|
{{ if lt $over 0}}
|
||||||
{{- $begin := add $begin $over}}
|
{{ $begin := add $begin $over}}
|
||||||
{{- $.Scratch.Set "begin" $begin }}
|
{{ $.Scratch.Set "begin" $begin }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- $begin := $.Scratch.Get "begin"}}
|
{{ $begin := $.Scratch.Get "begin"}}
|
||||||
<nav class="pagination">
|
<nav class="pagination">
|
||||||
{{- if $pag.HasPrev }}
|
{{ if $pag.HasPrev }}
|
||||||
<a class="extend prev" rel="prev" href="{{- $pag.Prev.URL }}">
|
<a class="extend prev" rel="prev" href="{{ $pag.Prev.URL }}">
|
||||||
<i class="fa fa-angle-left"></i>
|
<i class="fa fa-angle-left"></i>
|
||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- range $p := $pag.Pagers }}
|
{{ range $p := $pag.Pagers }}
|
||||||
{{- if and (ge $p.PageNumber $begin) (le $p.PageNumber $end) }}
|
{{ if and (ge $p.PageNumber $begin) (le $p.PageNumber $end) }}
|
||||||
{{- if eq $p $pag }}
|
{{ if eq $p $pag }}
|
||||||
<span class="page-number current">{{- $p.PageNumber }}</span>
|
<span class="page-number current">{{ $p.PageNumber }}</span>
|
||||||
{{- else }}
|
{{ else }}
|
||||||
<a class="page-number" href="{{- $p.URL }}">{{- $p.PageNumber }}</a>
|
<a class="page-number" href="{{ $p.URL }}">{{ $p.PageNumber }}</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if $pag.HasNext }}
|
{{ if $pag.HasNext }}
|
||||||
<a class="extend next" rel="next" href="{{- $pag.Next.URL }}">
|
<a class="extend next" rel="next" href="{{ $pag.Next.URL }}">
|
||||||
<i class="fa fa-angle-right"></i>
|
<i class="fa fa-angle-right"></i>
|
||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</nav>
|
</nav>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<div class="post-block">
|
<div class="post-block">
|
||||||
<article itemscope itemtype="http://schema.org/Article" class="post-content" lang="{{ .Site.LauageCode }}">
|
<article itemscope itemtype="http://schema.org/Article" class="post-content" lang="{{ .Site.LauageCode }}">
|
||||||
{{- with .ctx }}
|
{{ with .ctx }}
|
||||||
<link itemprop="mainEntityOfPage" href="{{ .Permalink }}">
|
<link itemprop="mainEntityOfPage" href="{{ .Permalink }}">
|
||||||
<span hidden itemprop="author" itemscope itemtype="http://schema.org/Person">
|
<span hidden itemprop="author" itemscope itemtype="http://schema.org/Person">
|
||||||
<meta itemprop="image" content="{{ .Site.Params.avatar.url }}">
|
<meta itemprop="image" content="{{ .Site.Params.avatar.url }}">
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
<meta itemprop="name" content="{{ .Title }}">
|
<meta itemprop="name" content="{{ .Title }}">
|
||||||
<meta itemprop="description" content="{{ .Description | default .Summary }}">
|
<meta itemprop="description" content="{{ .Description | default .Summary }}">
|
||||||
</span>
|
</span>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
<header class="post-header">
|
<header class="post-header">
|
||||||
{{ partial "post/header.html" (dict "ctx" .ctx "IsHome" .IsHome) }}
|
{{ partial "post/header.html" (dict "ctx" .ctx "IsHome" .IsHome) }}
|
||||||
</header>
|
</header>
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
{{ with .ctx }}
|
{{ with .ctx }}
|
||||||
{{- if $.IsHome }}
|
{{ if $.IsHome }}
|
||||||
{{- if .Params.Expand }}
|
{{ if .Params.Expand }}
|
||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
{{- else }}
|
{{ else }}
|
||||||
{{ .Summary }}
|
{{ .Summary }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- else }}
|
{{ else }}
|
||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
@@ -1,44 +1,44 @@
|
|||||||
{{ with .ctx }}
|
{{ with .ctx }}
|
||||||
{{- if $.IsHome }}
|
{{ if $.IsHome }}
|
||||||
{{- if and .Site.Params.readMoreBtn (not .Params.Expand) }}
|
{{ if and .Site.Params.readMoreBtn (not .Params.Expand) }}
|
||||||
<div class="post-button">
|
<div class="post-button">
|
||||||
<a class="btn" href="{{ .RelPermalink | relLangURL }}#more" rel="contents">
|
<a class="btn" href="{{ .RelPermalink | relLangURL }}#more" rel="contents">
|
||||||
{{ T "PostReadMore" }} »
|
{{ T "PostMeta.more" }} »
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
<div class="post-eof"></div>
|
<div class="post-eof"></div>
|
||||||
{{- else }}
|
{{ else }}
|
||||||
{{ partial "post/footer_meta/tags.html" . }}
|
{{ partial "post/footer_meta/tags.html" . }}
|
||||||
{{- if and (not (isset .Params "share")) (not .Params.share) }}
|
{{ if and (not (isset .Params "share")) (not .Params.share) }}
|
||||||
{{ partial "_thirdparty/share/addthis.html" . }}
|
{{ partial "_thirdparty/share/addthis.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
<hr/>
|
<hr/>
|
||||||
{{ partial "post/footer_meta/reward.html" . }}
|
{{ partial "post/footer_meta/reward.html" . }}
|
||||||
{{- if and (not (isset .Params "copyright")) (not .Params.copyright) }}
|
{{ if and (not (isset .Params "copyright")) (not .Params.copyright) }}
|
||||||
{{ partial "post/footer_meta/copyright.html" . }}
|
{{ partial "post/footer_meta/copyright.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if and (not (isset .Params "followme")) (not .Params.followme) }}
|
{{ if and (not (isset .Params "followme")) (not .Params.followme) }}
|
||||||
{{ partial "post/footer_meta/followme.html" . }}
|
{{ partial "post/footer_meta/followme.html" . }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if and (not (isset .Params "nav")) (not .Params.nav) }}
|
{{ if and (not (isset .Params "nav")) (not .Params.nav) }}
|
||||||
<div class="post-nav">
|
<div class="post-nav">
|
||||||
<div class="post-nav-next post-nav-item">
|
<div class="post-nav-next post-nav-item">
|
||||||
{{- with .NextInSection }}
|
{{ with .NextInSection }}
|
||||||
<a href="{{ .RelPermalink | relLangURL }}" rel="next" title="{{ .Title }}">
|
<a href="{{ .RelPermalink | relLangURL }}" rel="next" title="{{ .Title }}">
|
||||||
<i class="fa fa-chevron-left"></i> {{ .Title }}
|
<i class="fa fa-chevron-left"></i> {{ .Title }}
|
||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
<div class="post-nav-prev post-nav-item">
|
<div class="post-nav-prev post-nav-item">
|
||||||
{{- with .PrevInSection }}
|
{{ with .PrevInSection }}
|
||||||
<a href="{{ .RelPermalink | relLangURL }}" rel="prev" title="{{ .Title }}">
|
<a href="{{ .RelPermalink | relLangURL }}" rel="prev" title="{{ .Title }}">
|
||||||
{{ .Title }}
|
{{ .Title }}
|
||||||
<i class="fa fa-chevron-right"></i>
|
<i class="fa fa-chevron-right"></i>
|
||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,35 +1,35 @@
|
|||||||
{{- if .Site.Params.creativeCommons.post }}
|
{{ if .Site.Params.creativeCommons.post }}
|
||||||
<div class="post-copyright">
|
<div class="post-copyright">
|
||||||
<img src="/imgs/cc/cc.svg" width="75" height="75" align="right" />
|
<img src="/imgs/cc/cc.svg" width="75" height="75" align="right" alt="{{ T "Sidebar.label.ccommons" }}"/>
|
||||||
<ul>
|
<ul>
|
||||||
<li class="post-copyright-title">
|
<li class="post-copyright-title">
|
||||||
<strong>{{ print (T "PostCRTitle") (T "SymbolColon") }}</strong>
|
<strong>{{ print (T "PostCopyRight.title") (T "Symbol.colon") }}</strong>
|
||||||
{{ .Title }}
|
{{ .Title }}
|
||||||
</li>
|
</li>
|
||||||
<li class="post-copyright-author">
|
<li class="post-copyright-author">
|
||||||
{{- if isset .Params "author" }}
|
{{ if isset .Params "author" }}
|
||||||
<strong>{{ print (T "PostCROriginAuthor") (T "SymbolColon") }} </strong>
|
<strong>{{ print (T "PostCopyRight.origin.author") (T "Symbol.colon") }} </strong>
|
||||||
{{ .Params.Author }}
|
{{ .Params.Author }}
|
||||||
{{- else }}
|
{{ else }}
|
||||||
<strong>{{ print (T "PostCRAuthor") (T "SymbolColon") }} </strong>
|
<strong>{{ print (T "PostCopyRight.author") (T "Symbol.colon") }} </strong>
|
||||||
{{ .Site.Params.author }}
|
{{ .Site.Params.author }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</li>
|
</li>
|
||||||
<li class="post-copyright-link">
|
<li class="post-copyright-link">
|
||||||
{{- if isset .Params "link" }}
|
{{ if isset .Params "link" }}
|
||||||
<strong>{{ print (T "PostCROriginLink") (T "SymbolColon") }} </strong>
|
<strong>{{ print (T "PostCopyRight.origin.link") (T "Symbol.colon") }} </strong>
|
||||||
<a target="_blank" href="{{ .Params.OriginLink }}" title="{{ .Title }}">{{ .Params.Link }}</a>
|
<a target="_blank" href="{{ .Params.OriginLink }}" title="{{ .Title }}">{{ .Params.Link }}</a>
|
||||||
{{- else }}
|
{{ else }}
|
||||||
<strong>{{ print (T "PostCRLink") (T "SymbolColon") }}</strong>
|
<strong>{{ print (T "PostCopyRight.link") (T "Symbol.colon") }}</strong>
|
||||||
<a id="post-cr-link" href="{{ .Permalink | absLangURL }}" title="{{ .Title }}">{{ .Permalink | absLangURL }}</a>
|
<a id="post-cr-link" href="{{ .Permalink | absLangURL }}" title="{{ .Title }}">{{ .Permalink | absLangURL }}</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</li>
|
</li>
|
||||||
<li class="post-copyright-license">
|
<li class="post-copyright-license">
|
||||||
<strong>{{ print (T "PostCRLicenseTitle") (T "SymbolColon") }} </strong>
|
<strong>{{ print (T "PostCopyRight.license.title") (T "Symbol.colon") }} </strong>
|
||||||
{{- $ccText := .Site.Params.creativeCommons.license | upper }}
|
{{ $ccText := .Site.Params.creativeCommons.license | upper }}
|
||||||
{{- $ccLink := printf "<a target='_blank' href='https://creativecommons.org/licenses/by-nc-sa/4.0/deed.%s'>%s</a>" (substr .Site.LanguageCode 0 2) $ccText }}
|
{{ $ccLink := printf "<a target='_blank' href='https://creativecommons.org/licenses/by-nc-sa/4.0/deed.%s'>%s</a>" (substr .Site.LanguageCode 0 2) $ccText }}
|
||||||
{{ printf (T "PostCRLicenseContent") $ccLink | safeHTML }}
|
{{ printf (T "PostCopyRight.license.content") $ccLink | safeHTML }}
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,12 +1,12 @@
|
|||||||
{{- with .Site.Params.followMe }}
|
{{ with .Site.Params.followMe }}
|
||||||
<div class="followme">
|
<div class="followme">
|
||||||
<span>{{ T "PostFollowMe" }}</span>
|
<span>{{ T "PostFollowMe" }}</span>
|
||||||
<div class="social-list">
|
<div class="social-list">
|
||||||
{{ range . }}
|
{{ range . }}
|
||||||
{{- $vals := split . "||" }}
|
{{ $vals := split . "||" }}
|
||||||
{{- $name := trim (index $vals 0) " " }}
|
{{ $name := trim (index $vals 0) " " }}
|
||||||
{{- $url := trim (index $vals 1) " " }}
|
{{ $url := trim (index $vals 1) " " }}
|
||||||
{{- $icon := trim (index $vals 2) " " }}
|
{{ $icon := trim (index $vals 2) " " }}
|
||||||
<div class="social-item">
|
<div class="social-item">
|
||||||
<a target="_blank" class="social-link" href="{{ $url }}">
|
<a target="_blank" class="social-link" href="{{ $url }}">
|
||||||
<span class="icon">
|
<span class="icon">
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
<span class="label">{{ $name }}</span>
|
<span class="label">{{ $name }}</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,21 +1,19 @@
|
|||||||
{{- with .Site.Params.rewardSets }}
|
{{ with .Site.Params.rewardSets }}
|
||||||
{{- if .enable }}
|
{{ if .enable }}
|
||||||
<div class="reward-container">
|
<div class="reward-container">
|
||||||
<div>{{- .comment | safeHTML -}}</div>
|
<div>{{ .comment | safeHTML }}</div>
|
||||||
<button>
|
<button>
|
||||||
{{- T "RewardDonate" -}}
|
{{ T "Reward.title" }}
|
||||||
</button>
|
</button>
|
||||||
<div class="post-reward">
|
<div class="post-reward">
|
||||||
{{- range $name,$img := .reward }}
|
{{ range $name,$img := .reward }}
|
||||||
{{- $fw := substr $name 0 1 }}
|
{{ $payName := T (printf "Reward.%s" $name) }}
|
||||||
{{- $pay := replace $name $fw ($fw | upper) 1 }}
|
<div class="post-reward-item">
|
||||||
{{- $payName := T (printf "Reward%s" $pay) }}
|
<img src="/imgs/img-lazy-loading.gif" data-src="{{ $img }}" alt="{{ $.Site.Params.author }} - {{ $payName }}">
|
||||||
<div class="post-reward-item">
|
<span>{{ $payName }}</span>
|
||||||
<img src="/imgs/img-lazy-loading.gif" data-src="{{ $img }}" alt="{{ $.Site.Params.author }} - {{ $payName }}">
|
</div>
|
||||||
<span>{{ $payName }}</span>
|
{{ end }}
|
||||||
</div>
|
|
||||||
{{- end }}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
{{- with .Params.tags }}
|
{{ with .Params.tags }}
|
||||||
<div class="post-tags">
|
<div class="post-tags">
|
||||||
{{ range . }}
|
{{ range . }}
|
||||||
<a href="{{ "/tags/" | relLangURL }}{{ . | urlize | lower }}">
|
<a href="{{ "/tags/" | relLangURL }}{{ . | urlize | lower }}">
|
||||||
{{ . }}
|
{{ . }}
|
||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,50 +1,49 @@
|
|||||||
{{ with .ctx }}
|
{{ with .ctx }}
|
||||||
{{- if $.IsHome }} <h2 {{ else }} <h1 {{ end -}} class="post-title" itemprop="name headline">
|
{{ if $.IsHome }} <h2 {{ else }} <h1 {{ end }} class="post-title" itemprop="name headline">
|
||||||
{{- if and .Weight (gt .Weight 0) }}
|
{{ if and .Weight (gt .Weight 0) }}
|
||||||
<span class="post-sticky-flag" title="{{ T "PostStickyTitle" }}">
|
<span class="post-sticky-flag" title="{{ T "PostMeta.sticky" }}">
|
||||||
<i class="fa fa-thumbtack"></i>
|
<i class="fa fa-thumbtack"></i>
|
||||||
</span>
|
</span>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if $.IsHome }}
|
{{ if $.IsHome }}
|
||||||
{{- if and (isset .Params "extlink") (ne .Params.Extlink "") }}
|
{{ if and (isset .Params "extlink") (ne .Params.Extlink "") }}
|
||||||
<a href="{{ .Params.Extlink }}" rel="noopener external nofollow noreferrer" target="_blank" class="exturl post-title-link post-title-link-external">
|
<a href="{{ .Params.Extlink }}" rel="noopener external nofollow noreferrer" target="_blank" class="exturl post-title-link post-title-link-external">
|
||||||
{{ .Title }}
|
{{ .Title }}
|
||||||
<i class="fa fa-external-link-alt"></i>
|
<i class="fa fa-external-link-alt"></i>
|
||||||
</a>
|
</a>
|
||||||
{{- else }}
|
{{ else }}
|
||||||
<a href="{{ .RelPermalink | relLangURL }}" itemprop="url" class="post-title-link">{{ .Title }}</a>
|
<a href="{{ .RelPermalink | relLangURL }}" itemprop="url" class="post-title-link">{{ .Title }}</a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- else }}
|
{{ else }}
|
||||||
{{- .Title }}
|
{{ .Title }}
|
||||||
{{- if .Site.Params.postEdit.enable }}
|
{{ if .Site.Params.postEdit.enable }}
|
||||||
{{- $editURL := printf "%s%s" .Site.Params.postEdit.url (path.Clean .File.Path) }}
|
{{ $editURL := printf "%s%s" .Site.Params.postEdit.url (path.Clean .File.Path) }}
|
||||||
<a href="{{ $editURL }}" rel="noopener external nofollow noreferrer" target="_blank" class="exturl post-edit-link" title="{{ T "PostEditTitle" }}"><i class="fa fa-pen-nib"></i></a>
|
<a href="{{ $editURL }}" rel="noopener external nofollow noreferrer" target="_blank" class="exturl post-edit-link" title="{{ T "PostMeta.edit" }}"><i class="fa fa-pen-nib"></i></a>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- if $.IsHome }} </h2> {{ else }} </h1> {{ end -}}
|
{{ if $.IsHome }} </h2> {{ else }} </h1> {{ end }}
|
||||||
|
{{ $isComment := and (.Scratch.Get "isComment") .Site.Params.postMeta.comments.enable }}
|
||||||
<div class="post-meta-container">
|
<div class="post-meta-container">
|
||||||
<div class="post-meta-items">
|
<div class="post-meta-items">
|
||||||
{{ partial "post/header_meta/created_date.html" . }}
|
{{ partial "post/header_meta/created_date.html" . }}
|
||||||
{{ partial "post/header_meta/update_date.html" . }}
|
{{ partial "post/header_meta/update_date.html" . }}
|
||||||
{{ partial "post/header_meta/categories.html" . }}
|
{{ partial "post/header_meta/categories.html" . }}
|
||||||
{{ if and $.IsHome (not (isset .Params "extlink")) }}
|
{{ if and $.IsHome (not (isset .Params "extlink")) }}
|
||||||
<div class="post-meta-items">
|
{{ if and .Site.Params.postMeta.views.enable (ne .Site.Params.postMeta.views.plugin "busuanzi") }}
|
||||||
{{ if and (eq .Site.Params.analytis.busuanzi.enable false) .Site.Params.waline.pageView }}
|
|
||||||
{{ partial "post/header_meta/views.html" . }}
|
{{ partial "post/header_meta/views.html" . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ if and (.Scratch.Get "isComment") .Site.Params.waline.comment }}
|
{{ if $isComment }}
|
||||||
{{ partial "post/header_meta/comments.html" . }}
|
{{ partial "post/header_meta/comments.html" . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
{{- if not $.IsHome }}
|
{{ if not $.IsHome }}
|
||||||
<div class="post-meta-items">
|
<div class="post-meta-items">
|
||||||
{{ partial "post/header_meta/words.html" . }}
|
{{ partial "post/header_meta/words.html" . }}
|
||||||
{{ partial "post/header_meta/readtime.html" . }}
|
{{ partial "post/header_meta/readtime.html" . }}
|
||||||
{{ partial "post/header_meta/views.html" . }}
|
{{ partial "post/header_meta/views.html" . }}
|
||||||
{{ if and (.Scratch.Get "isComment") .Site.Params.waline.comment }}
|
{{ if $isComment }}
|
||||||
{{ partial "post/header_meta/comments.html" . }}
|
{{ partial "post/header_meta/comments.html" . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
{{- if .Site.Params.postMeta.categories }}
|
{{ if .Site.Params.postMeta.categories }}
|
||||||
{{- with .Params.categories }}
|
{{ with .Params.categories }}
|
||||||
<span class="post-meta-item">
|
<span class="post-meta-item">
|
||||||
<span class="post-meta-item-icon">
|
<span class="post-meta-item-icon">
|
||||||
<i class="far fa-folder-open"></i>
|
<i class="fas fa-solid fa-folder-open"></i>
|
||||||
|
</span>
|
||||||
|
<span class="post-meta-item-text" title="{{ T "PostMeta.category" }}">
|
||||||
|
{{ print (T "PostMeta.category") (T "Symbol.colon") }}
|
||||||
</span>
|
</span>
|
||||||
<span class="post-meta-item-text">{{- print (T "PostCategory") (T "SymbolColon") -}}</span>
|
|
||||||
{{- range (first 1 .) }}
|
|
||||||
<span itemprop="about" itemscope itemtype="http://schema.org/Thing">
|
<span itemprop="about" itemscope itemtype="http://schema.org/Thing">
|
||||||
<a href="{{ "/categories/" | relLangURL }}{{ . | urlize }}" itemprop="url" rel="index">
|
<a href="{{ "/categories/" | relLangURL }}{{ (index (last 1 .) 0) | urlize }}" itemprop="url" rel="index">
|
||||||
<span itemprop="name">{{- . -}}</span>
|
<span itemprop="name">{{ delimit . "/" }}</span>
|
||||||
</a>
|
</a>
|
||||||
</span>
|
</span>
|
||||||
{{- end }}
|
|
||||||
</span>
|
</span>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
<span class="post-meta-item" title="{{ T "PostComments" }}">
|
<span class="post-meta-item" title="{{ T "PostComments" }}">
|
||||||
<span class="post-meta-item-icon">
|
<span class="post-meta-item-icon">
|
||||||
<i class="far fa-comments"></i>
|
<i class="fas fa-solid fa-comments"></i>
|
||||||
</span>
|
</span>
|
||||||
<span class="post-meta-item-text">
|
<span class="post-meta-item-text" title="{{ T "PostMeta.comments" }}">
|
||||||
{{ print (T "PostComments") (T "SymbolColon") }}
|
{{ print (T "PostMeta.comments") (T "Symbol.colon") }}
|
||||||
</span>
|
</span>
|
||||||
<span {{ with .Site.Params.waline.comment }}class="waline-comment-count"{{end}} data-path="{{ .RelPermalink | relLangURL }}">
|
<span id="comments-count" {{ if eq .Site.Params.postMeta.comments.plugin "waline" }}class="waline-comment-count"{{end}} data-path="{{ .RelPermalink | relLangURL }}">
|
||||||
<i class="fa fa-sync fa-spin"></i>
|
<i class="fa fa-sync fa-spin"></i>
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
@@ -1,13 +1,15 @@
|
|||||||
{{- if .Site.Params.postMeta.created }}
|
{{ if .Site.Params.postMeta.created }}
|
||||||
{{ $timeF := .Site.Params.timeFormat }}
|
{{ $timeF := .Site.Params.timeFormat }}
|
||||||
{{ $createdTime := (.Date.Format $timeF) | default (.Date.Format $timeF) }}
|
{{ $createdTime := (.Date.Format $timeF) | default (.Date.Format $timeF) }}
|
||||||
<span class="post-meta-item">
|
<span class="post-meta-item">
|
||||||
<span class="post-meta-item-icon">
|
<span class="post-meta-item-icon">
|
||||||
<i class="far fa-calendar"></i>
|
<i class="fas fa-solid fa-calendar"></i>
|
||||||
</span>
|
</span>
|
||||||
<span class="post-meta-item-text">{{- print (T "PostPublishDate") (T "SymbolColon") -}}</span>
|
<span class="post-meta-item-text" title="{{ T "PostMeta.publish.date" }}">
|
||||||
<time title="{{ print (T "PostPublishDate") (T "SymbolColon") }}{{ .Date }}" itemprop="dateCreated datePublished" datetime="{{ .Date }}">
|
{{ print (T "PostMeta.publish.date") (T "Symbol.colon") }}
|
||||||
{{- .Date.Format .Site.Params.dateFormat -}}
|
</span>
|
||||||
|
<time title="{{ print (T "PostMeta.publish.time") (T "Symbol.colon") }}{{ .Date }}" itemprop="dateCreated datePublished" datetime="{{ .Date }}">
|
||||||
|
{{ .Date.Format .Site.Params.dateFormat }}
|
||||||
</time>
|
</time>
|
||||||
</span>
|
</span>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
{{- if .Site.Params.postMeta.readTime }}
|
{{ if .Site.Params.postMeta.readTime }}
|
||||||
<span class="post-meta-item" title="{{ T "PostReading" }}">
|
<span class="post-meta-item" title="{{ T "PostMeta.reading.title" }}">
|
||||||
<span class="post-meta-item-icon">
|
<span class="post-meta-item-icon">
|
||||||
<i class="far fa-clock"></i>
|
<i class="fas fa-solid fa-clock"></i>
|
||||||
</span>
|
</span>
|
||||||
<span class="post-meta-item-text">{{- print (T "PostReading") (T "SymbolColon") -}}≈</span>
|
<span class="post-meta-item-text">{{ print (T "PostMeta.reading.title") (T "Symbol.colon") }}≈</span>
|
||||||
<span>{{- T "PostReadTime" . -}}</span>
|
<span>{{ T "PostMeta.reading.time" . }}</span>
|
||||||
</span>
|
</span>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
|
|||||||
@@ -1,12 +1,14 @@
|
|||||||
{{- if and .Site.Params.postMeta.updated.enable .Site.Params.postMeta.updated.anotherDay }}
|
{{ if and .Site.Params.postMeta.updated.enable .Site.Params.postMeta.updated.anotherDay }}
|
||||||
{{- if and .Lastmod (gt .Lastmod .Date) }}
|
{{ if and .Lastmod (gt .Lastmod .Date) }}
|
||||||
{{ $modTime := .Lastmod.Format .Site.Params.timeFormat }}
|
{{ $modTime := .Lastmod.Format .Site.Params.timeFormat }}
|
||||||
<span class="post-meta-item">
|
<span class="post-meta-item">
|
||||||
<span class="post-meta-item-icon">
|
<span class="post-meta-item-icon">
|
||||||
<i class="far fa-calendar-check"></i>
|
<i class="fas fa-solid fa-calendar-check"></i>
|
||||||
</span>
|
</span>
|
||||||
<span class="post-meta-item-text">{{- print (T "PostLastModDate") (T "SymbolColon") -}}</span>
|
<span class="post-meta-item-text" title="{{ T "PostMeta.lastmod.date" }}">
|
||||||
<time title="{{ print (T "PostLastModTime") (T "SymbolColon") }}{{ $modTime }}" itemprop="dateModified" datetime="{{ $modTime }}">{{- .Lastmod.Format .Site.Params.dateFormat -}}</time>
|
{{ print (T "PostMeta.lastmod.date") (T "Symbol.colon") }}
|
||||||
|
</span>
|
||||||
|
<time title="{{ print (T "PostMeta.lastmod.time") (T "Symbol.colon") }}{{ $modTime }}" itemprop="dateModified" datetime="{{ $modTime }}">{{ .Lastmod.Format .Site.Params.dateFormat }}</time>
|
||||||
</span>
|
</span>
|
||||||
{{- end }}
|
{{ end }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
@@ -1,18 +1,19 @@
|
|||||||
{{- $pageViewId := "" }}
|
{{ if .Site.Params.postMeta.views.enable }}
|
||||||
{{- if .Site.Params.leancloudVisitors.enable }}
|
{{ $pageViewId := "" }}
|
||||||
{{- $pageViewId = "leancloud-visitors-count" }}
|
{{ if eq .Site.Params.postMeta.views.plugin "leancloud" }}
|
||||||
{{- end }}
|
{{ $pageViewId = "leancloud-visitors-count" }}
|
||||||
{{- if .Site.Params.analytics.busuanzi.postViews }}
|
{{ else if eq .Site.Params.postMeta.views.plugin "busuanzi" }}
|
||||||
{{- $pageViewId = "busuanzi_value_page_pv" }}
|
{{ $pageViewId = "busuanzi_value_page_pv" }}
|
||||||
{{- end }}
|
{{ end }}
|
||||||
<span class="post-meta-item" title="{{ T "PostViews" }}">
|
<span class="post-meta-item" title="{{ T "PostMeta.views" }}">
|
||||||
<span class="post-meta-item-icon">
|
<span class="post-meta-item-icon">
|
||||||
<i class="far fa-eye"></i>
|
<i class="fas fa-solid fa-eye"></i>
|
||||||
</span>
|
</span>
|
||||||
<span class="post-meta-item-text">
|
<span class="post-meta-item-text">
|
||||||
{{ print (T "PostViews") (T "SymbolColon") }}
|
{{ print (T "PostMeta.views") (T "Symbol.colon") }}
|
||||||
</span>
|
</span>
|
||||||
<span {{ with $pageViewId }}id="{{ . }}"{{end}} {{ with .Site.Params.waline.pageView }}class="waline-pageview-count"{{end}} data-path="{{ .RelPermalink | relLangURL }}">
|
<span {{ with $pageViewId }}id="{{ . }}"{{end}} {{ if eq .Site.Params.postMeta.views.plugin "waline" }}class="waline-pageview-count"{{end}} data-path="{{ .RelPermalink | relLangURL }}">
|
||||||
<i class="fa fa-sync fa-spin"></i>
|
<i class="fa fa-sync fa-spin"></i>
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
|
{{ end }}
|
||||||