mirror of
https://git.sr.ht/~seirdy/seirdy.one
synced 2024-11-15 01:42:10 +00:00
938428333e
Statically grab and include webmentions during Hugo builds, no JS involved. Hugo supports making web requests and parsing the resulting JSON, so there was no need to use an external program either.
50 lines
2.7 KiB
HTML
50 lines
2.7 KiB
HTML
{{ define "main" }}
|
||
<div itemscope itemtype="https://schema.org/Article" class="h-entry">
|
||
<article itemprop="mainEntityOfPage">
|
||
<header id="post-header">
|
||
<h1 itemprop="name headline" class="p-name">{{ .Title }}</h1>
|
||
{{ $lastmod := .Lastmod -}}
|
||
{{ if lt .Date $lastmod -}}
|
||
Originally posted <a class="u-url" href="https://seirdy.one{{ .RelPermalink }}"><time class="dt-published" itemprop="datePublished" datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format "2006-01-02" }}</time></a> by {{- partial "indieweb-author.html" -}}.<br>
|
||
Last updated <time itemprop="dateModified" class="dt-updated" datetime="{{ $lastmod.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Lastmod.Format "2006-01-02" }}</time>. <a href="{{ .Site.Params.logUrlPrefix }}content/{{ .File.Path }}">Changelog</a>
|
||
{{ else -}}
|
||
Posted <a class="u-url" href="https://seirdy.one{{ .RelPermalink }}"><time itemprop="datePublished" datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format "2006-01-02" }}</time></a> by {{- partial "indieweb-author.html" -}}.
|
||
{{ end }}
|
||
</header>
|
||
<section class="e-content" itemprop="articlebody">
|
||
{{ partial "processed-content" . -}}
|
||
</section>
|
||
</article>
|
||
<br>
|
||
<hr>
|
||
<footer class="comment">
|
||
{{ with .OutputFormats.Get "gemtext" -}}
|
||
<p>
|
||
View this article on <a rel="syndication" class="u-syndication" href="{{replace .Permalink "/gemini" "" 1 | safeURL}}">my Gemini capsule</a>
|
||
</p>
|
||
{{ end -}}
|
||
<p><a href="mailto:~seirdy/seirdy.one-comments@lists.sr.ht">Send an email</a> to leave a comment in the <a href="https://lists.sr.ht/~seirdy/seirdy.one-comments">mailing list</a> for seirdy.one. You'll have to send in plain text; please <a href="https://useplaintext.email/">learn how.</a>. Alternatively, send your email <a href="mailto:seirdy@seirdy.one">directly to me</a>; it won’t show up on the mailing list, but I’ll see it.</p>
|
||
<p>This site also supports <a href="https://indieweb.org/webmention">Webmentions</a>. Webmentions received for this post will appear below after I approve them.</p>
|
||
<section class="webmentions">
|
||
<h2>Webmentions</h2>
|
||
<ul class="unstyled-list">
|
||
{{ $target := .RelPermalink -}}
|
||
{{ $url := printf "https://seirdy.one/webmentions/get?status=approved&target=https://seirdy.one%s" $target -}}
|
||
{{ $webmentions := getJSON $url -}}
|
||
{{ range $webmentions -}}
|
||
{{ $webmention := . -}}
|
||
<li>
|
||
<time datetime="{{ dateFormat "2006-01-02 15:04:05Z07:00" $webmention.created_at }}">{{ dateFormat "2006-01-02" $webmention.created_at }}</time>
|
||
<br>
|
||
<a href="{{ $webmention.source }}">{{ $webmention.title }}</a>
|
||
</li>
|
||
{{ else -}}
|
||
<li><p>This post doesn't have any approved Webmentions yet.</p></li>
|
||
{{ end -}}
|
||
</ul>
|
||
</section>
|
||
</footer>
|
||
</div>
|
||
<hr>
|
||
<br>
|
||
{{ end }}
|