Generate card from banner if present. Use page/section description instead of config if available (fixes #51 and #50)

This commit is contained in:
daudix
2024-08-26 06:34:24 +03:00
parent cb58a187bd
commit 4392844fc6
6 changed files with 23 additions and 7 deletions

View File

@ -7,7 +7,7 @@
<article>
{%- if page.extra.banner -%}
<div id="banner-container">
<img id="banner" class="full-bleed" src="{{ current_url | safe }}{{ page.extra.banner }}" {%- if config.markdown.lazy_async_image -%}decoding="async" loading="lazy"{%- endif -%} />
<img id="banner" class="full-bleed{% if page.extra.banner_pixels %} pixels{% endif %}" src="{{ get_url(path=page.extra.banner, lang=lang)}}" {% if config.markdown.lazy_async_image %}decoding="async" loading="lazy"{% endif %} />
</div>
{%- endif -%}
@ -15,13 +15,13 @@
{%- if page.date -%}
<small>
<time datetime="{{ page.date | date(format=' %+') }}" pubdate>
<time datetime="{{ page.date | date(format=' %+') }}">
{{- macros_translate::translate(key="published", default="Published on", language_strings=language_strings) }}
{{ page.date | date(format=date_format, locale=date_locale) -}}
</time>
{%- if page.updated -%}
<span></span>
<time datetime="{{ page.updated | date(format=' %+') }}" pubdate>
<time datetime="{{ page.updated | date(format=' %+') }}">
{{- macros_translate::translate(key="updated", default="Updated on", language_strings=language_strings) }}
{{ page.updated | date(format=date_format, locale=date_locale) -}}
</time>

View File

@ -0,0 +1,6 @@
{%- if page.extra.banner -%}
{% set card = resize_image(path=page.extra.banner, width=1200, height=628, op="fill") %}
{{ card.url }}
{%- else -%}
{{ get_url(path='card.png') }}
{%- endif -%}

View File

@ -0,0 +1,7 @@
{%- if page.description -%}
{{- page.description }}
{%- elif section.description -%}
{{- section.description }}
{%- else -%}
{{- config.description -}}
{%- endif -%}

View File

@ -123,8 +123,7 @@
<meta property="og:site_name" content="{{ config.title }}" />
<meta property="og:title" content="{% include 'partials/title.html' %}" />
<meta property="og:url" content="{{ current_url | default(value='/') | safe }}" />
<meta property="og:description" content="{{ page.description | default(value=config.description) }}" />
<meta property="og:image" content="{{ get_url(path='card.png') }}" />
<meta property="twitter:card" content="summary_large_image" />
<meta property="og:description" content="{% include 'partials/description.html' %}" />
<meta property="og:image" content="{% include 'partials/card.html' %}" />
<meta property="og:locale" content="{{ macros_translate::translate(key='date_locale', default='en_US', language_strings=language_strings) }}" />
</head>