👩🏻:今天要不要出去玩?
🐑:不要了吧,在家玩也可以。疫情期间,尽量不要出门。
之前 WordPress 推出不同文章样式,如轻博客一样,发一句话、链接或视频有不同的显示效果。之后,用 Hexo、Bitcron 时都以文件夹形式进行文章分类,并以此为判断条件。
效果见:https://immmmm.com/posts/chat/
content
├── posts
│ ├── chat
│ ├── coding
│ ├── daily
│ ├── reading
如 chat
目录内的 md 文件是以一句话的模式(头像+时间)显示,怎么实现呢?利用 Hugo 的 .File.Dir 和 replaceRE 正则。
效果见文章底部,这些图片非手动一张张插入,文章头部一句 path: 2004gd
搞定!
直接看代码:
{{ if .Params.path }}
{{$Path := .Params.path}}
{{- range (readDir (printf "%s%s" "./static/images/" $Path )) -}}<img loading='lazy' src="{{(printf "/images/%s/%s" $Path .Name ) | absURL}}" />{{- end -}}
{{ end }}
当文章中写了 path: 2004gd
表示 Hugo 遍历根目录 /static/images/2004gd
内的图片并显示。
前者在某个大神主题中翻到,一句代码:
共 {{ len (where .Site.RegularPages "Section" "posts") }} 篇文章
总字数没有现成参数,官方手册看到 .Scratch.Add 瞎折腾完成:
{{$scratch := newScratch}}
{{ range (where .Site.Pages "Kind" "page" )}}
{{$scratch.Add "total" .WordCount}}
{{ end }}
新建了个参数累加所有文章的 .WordCount
字数,一般放 footer 头几行,下面是调用代码:
总计 {{$scratch.Get "total" }} 字
具体源码见:shortcodes/music.html,把这个文件丢入自己的主题文章内插入调用代码即可,已粗暴的把 js 和 css 丢在一起。
效果见: https://immmmm.com/photos/
总有那么一瞬间特别特别想发一张照片,但不是以文章形式发布。
实现思路是程序自动遍历指定文件夹内的图片,并展示在一个页面上。有了思路,剩下的就是看文档、看文档、看文档,此功能利用 Hugo 的 readDir function 函数达成。
日常更新把图片丢到 static/photos
中即可(搭配 Github Action 自动化部署更香):
static
└── photos
├── 落樱缤纷.jpeg
├── 想象中的自由.jpeg
└── 儿时登过顶的狮子山.jpeg
Visual Studio Code 久仰大名,但一直误认为是个臃肿大部头,毕竟是微软出品。 🙇
一试,直接拉取仓库开启 Git 同步,成了,满足本地码字同步而不用碰终端,不用碰终端,碰终端!
二试,使用 gpm 插件更能多仓库管理,也成了,好感爆棚。没遇到什么权限问题,应该是之前终端里配置过的关系。
再试,GitHub 网页上更改,VS 里拉取变更,丝滑,这下舒心到随心咯!