如何在Hugo中远程访问JSON文件内的items数组
在Hugo中远程访问YouTube JSON Feed的items数组
不用修改原始JSON结构,Hugo的模板引擎可以直接解析远程JSON并访问嵌套的items数组,具体实现步骤如下:
- 拉取远程JSON数据
使用Hugo内置的getJSON函数获取远程的YouTube频道JSON Feed,将其赋值给变量:
{{ $youtubeFeed := getJSON "https://你的远程JSON地址" }}
- 循环遍历items数组
直接通过变量加.items访问视频数组,用range循环遍历每一条视频数据,即可取出里面的字段:
{{ range $youtubeFeed.items }} <article class="video-card"> <h2><a href="{{ .url }}" target="_blank">{{ .title }}</a></h2> <p>发布时间:{{ .date_published | dateFormat "2006-01-02" }}</p> <p>作者:{{ .author.name }}</p> <p>视频ID:{{ .guid | replaceRE "yt:video:" "" }}</p> </article> {{ end }}
补充说明
- 如果遇到缓存问题(比如远程JSON更新但本地未同步),可以在
getJSON中添加刷新参数:{{ $youtubeFeed := getJSON "https://你的远程JSON地址" "refresh=true" }} - 可用Hugo的
dateFormat过滤器,把ISO格式的发布时间转换成更友好的显示格式。
内容的提问来源于stack exchange,提问作者user595628
相关产品推荐
相关产品推荐

