【Hugo】別記事へのリンクを取得する
前提
Hugo: v0.125.4
注意事項
この記事内で紹介しているShortcode
をそのまま使用すると、使用箇所によってはタイムアウトとなりうまく機能しない。
GetPage
site.GetPage
で指定したページが取得できる。
以下のような、Shortcode
を作成して呼び出す。
{{- with $path := .Get "path" -}}
{{- with site.GetPage . -}}
<div class="card">
<a href="{{ .RelPermalink }}" title="{{ .Title }}">{{ .LinkTitle | default .Title }}</a>
<div>
{{- .Summary -}}
</div>
</div>
{{- end -}}
{{- end -}}
作成したShortcode
を使うと以下のhtml
が出力される。
<div class="card">
<a href="/posts/hugo-shortcodes-markdown/" title="【Hugo】MarkdownやソースコードをShortcodes内に記載する方法">【Hugo】MarkdownやソースコードをShortcodes内に記載する方法</a>
<div>前提 Hugo: v0.125.4 対応内容 MarkdownをShortcode内に記載したときに、期待した結果が得られないことがあったので整理。 対応する方法としては、</div>
</div>
実際の表示
【Hugo】MarkdownやソースコードをShortcodes内に記載する方法
前提 Hugo: v0.125.4 対応内容 MarkdownをShortcode内に記載したときに、期待した結果が得られないことがあったので整理。 対応する方法としては、
記事のリンクを取得する際、RelPermalink
を使えば相対パス、Permalink
を使えば絶対パスになる。
関連記事
-
【Hugo】目次(Table of Contents)を作る前提 Hugo: v0.125.4 TableOfContents 以下のメソッドを呼ぶだけで目次が作れる {{ .TableOfContents }} このページの場合、以下のhtmlが出力される <nav id="TableOfContents"> <ul> <li><a href="#前提"
-
【Hugo】MarkdownやソースコードをShortcodes内に記載する方法前提 Hugo: v0.125.4 対応内容 MarkdownをShortcode内に記載したときに、期待した結果が得られないことがあったので整理。 対応する方法としては、
-
【Hugo】Hugoの基本的な文法前提 Hugo: v0.125.4 変数 定義 {{ $foo := "foo" }} 代入 {{ $foo = "bar" }} テンプレート内での使用 <p>{{ $foo }}</p> 比較 Eq arg1 == arg2 {{ eq 1 1 }} # true {{ eq 1 2 }} # false {{ eq "foo" "foo" }} # true {{ eq "foo" "bar" }} # false 参考
-
【Hugo】Hugoの環境構築前提 環境: Windows Hugo: v0.125.4 インストール バイナリをダウンロードして配置 Githubからバイナリをダウンロード Releases latest ダウンロードしたファイルを解凍し、任意の
-
【Hugo】HugoでSass(SCSS)を使う前提 環境: Windows Hugo: v0.125.4 Dart Sassのインストール Hugo ExtendedにはLibSassが含まれているが、非推奨となっているため、Dart Sassをイン