父级
Syntax
SHORTCODE.Parent
Returns
hugolib.ShortcodeWithPage
这对于从根目录继承常见的短代码参数非常有用。
在这个编造的例子中,“greeting"短代码是父级,而"now"短代码是子级。
content/welcome.md
{{< greeting dateFormat="Jan 2, 2006" >}}
欢迎。今天是{{< now >}}。
{{< /greeting >}}
layouts/shortcodes/greeting.html
<div class="greeting">
{{ trim .Inner "\r\n" | .Page.RenderString }}
</div>
layouts/shortcodes/now.html
{{- $dateFormat := "January 2, 2006 15:04:05" }}
{{- with .Params }}
{{- with .dateFormat }}
{{- $dateFormat = . }}
{{- end }}
{{- else }}
{{- with .Parent.Params }}
{{- with .dateFormat }}
{{- $dateFormat = . }}
{{- end }}
{{- end }}
{{- end }}
{{- now | time.Format $dateFormat -}}
“now"短代码使用以下方式来格式化当前时间:
- 如果有传递给"now"短代码的
dateFormat
参数,则使用该参数。 - 如果有传递给"greeting"短代码的
dateFormat
参数,则使用该参数。 - 使用在短代码顶部定义的默认布局字符串。