You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取分类第一页参数,将首篇文章封面设为OpenGraph图片?

修改OG图片模板以在分类列表页使用分页首篇文章封面图

你需要调整原模板中.IsNode分支的逻辑,优先使用分页列表首篇文章的封面图,同时保留站点默认图作为降级方案。以下是修改后的完整代码:

{{ if .Params.cover_image }}
  <meta property="og:image" content="{{ .Params.cover_image }}">
{{ end }}
{{ if .IsNode }}
  {{/* 优先使用分页首篇文章的封面图 */}}
  {{ if and (.Paginator.Pages) (index .Paginator.Pages 0).Params.cover_image }}
    <meta property="og:image" content="{{ (index .Paginator.Pages 0).Params.cover_image }}">
  {{/* 如果分页无内容或首篇无封面图,降级使用站点默认图 */}}
  {{ else if .Site.Params.images }}
    <meta property="og:image" content="{{ index .Site.Params.images 0 }}">
  {{ end }}
{{ end }}

{{ if and (.IsPage) (not .Params.images) (.Site.Params.images) }}
  <meta property="og:image" content="{{ index .Site.Params.images 0 }}">
{{ end }}

关键修改说明:

  • 拆分原.IsNode的判断逻辑,增加优先级层级:先检查分页列表是否有内容,且首篇文章存在cover_image字段,满足则输出该封面图;若不满足,再降级使用站点默认图片。
  • 使用index .Paginator.Pages 0获取分页列表的第一篇文章,再通过.Params.cover_image访问其封面图参数,这是Hugo模板访问数组元素的标准语法。

内容的提问来源于stack exchange,提问作者Michael Holland

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 10:20:37