~xdavidwu/xdavidwu.link

57b957cb5af5a77f754ab4afb96cb726b8a1accf — Lim Jing Heng 3 years ago be1c6f8
Show date of posts (#2526)

* add date to read-time.html

* add option for show_date, dynamic icon style

* change read-time to post__meta

* cleanup post__metal.html

* cleanup post__meta include variables

* put date before read time

* remove space in include variable

* allow customisation of post__meta separator

* add some documentation

* oops fix typo derp

* add post date image

* change page meta separator customisation to CSS
5 files changed, 44 insertions(+), 24 deletions(-)

M _includes/archive-single.html
M _includes/page__hero.html
R _includes/{read-time.html => post__meta.html}
M _layouts/single.html
M _sass/minimal-mistakes/_page.scss
M _includes/archive-single.html => _includes/archive-single.html +1 -3
@@ 24,9 24,7 @@
        <a href="{{ post.url | relative_url }}" rel="permalink">{{ title }}</a>
      {% endif %}
    </h2>
    {% if post.read_time %}
      <p class="page__meta"><i class="far fa-clock" aria-hidden="true"></i> {% include read-time.html %}</p>
    {% endif %}
    {% include post__meta.html type=include.type %}
    {% if post.excerpt %}<p class="archive__item-excerpt" itemprop="description">{{ post.excerpt | markdownify | strip_html | truncate: 160 }}</p>{% endif %}
  </article>
</div>

M _includes/page__hero.html => _includes/page__hero.html +1 -3
@@ 31,9 31,7 @@
      {% elsif page.header.show_overlay_excerpt != false and page.excerpt %}
        <p class="page__lead">{{ page.excerpt | markdownify | remove: "<p>" | remove: "</p>" }}</p>
      {% endif %}
      {% if page.read_time %}
        <p class="page__meta"><i class="far fa-clock" aria-hidden="true"></i> {% include read-time.html %}</p>
      {% endif %}
      {% include post__meta.html %}
      {% if page.header.cta_url %}
        <p><a href="{{ page.header.cta_url | relative_url }}" class="btn btn--light-outline btn--large">{{ page.header.cta_label | default: site.data.ui-text[site.locale].more_label | default: "Learn More" }}</a></p>
      {% endif %}

R _includes/read-time.html => _includes/post__meta.html +35 -15
@@ 1,15 1,35 @@
{% assign words_per_minute = page.words_per_minute | default: site.words_per_minute | default: 200 %}

{% if post.read_time %}
  {% assign words = post.content | strip_html | number_of_words %}
{% elsif page.read_time %}
  {% assign words = page.content | strip_html | number_of_words %}
{% endif %}

{% if words < words_per_minute %}
  {{ site.data.ui-text[site.locale].less_than | default: "less than" }} 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
{% elsif words == words_per_minute %}
  1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
{% else %}
  {{ words | divided_by:words_per_minute }} {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
{% endif %}
{% assign page = post | default: page %}

{% if page.read_time or page.show_date %}
  <p class="page__meta">

    {% if page.show_date %}
      {% assign date = page.date %}
      <i class="far {% if include.type == 'grid' and page.read_time and page.show_date %}fa-fw {% endif %}fa-calendar-alt" aria-hidden="true"></i>
      <time datetime="{{ date | date_to_xmlschema }}">{{ date | date: "%B %-d, %Y" }}</time>
    {% endif %}

    {% if page.read_time and page.show_date %}
      {% if include.type == "grid" %}
        <br \>
      {% else %}
      <span class="post__meta-sep"></span>
      {% endif %}
    {% endif %}

    {% if page.read_time %}
      {% assign words_per_minute = page.words_per_minute | default: site.words_per_minute | default: 200 %}
      {% assign words = page.content | strip_html | number_of_words %}

      <i class="far {% if include.type == 'grid' and page.read_time and page.show_date %}fa-fw {% endif %}fa-clock" aria-hidden="true"></i>
      {% if words < words_per_minute %}
        {{ site.data.ui-text[site.locale].less_than | default: "less than" }} 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
      {% elsif words == words_per_minute %}
        1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
      {% else %}
        {{ words | divided_by:words_per_minute }} {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
      {% endif %}
    {% endif %}

  </p>
{% endif %}
\ No newline at end of file

M _layouts/single.html => _layouts/single.html +1 -3
@@ 27,9 27,7 @@ layout: default
      {% unless page.header.overlay_color or page.header.overlay_image %}
        <header>
          {% if page.title %}<h1 id="page-title" class="page__title" itemprop="headline">{{ page.title | markdownify | remove: "<p>" | remove: "</p>" }}</h1>{% endif %}
          {% if page.read_time %}
            <p class="page__meta"><i class="far fa-clock" aria-hidden="true"></i> {% include read-time.html %}</p>
          {% endif %}
          {% include post__meta.html %}
        </header>
      {% endunless %}


M _sass/minimal-mistakes/_page.scss => _sass/minimal-mistakes/_page.scss +6 -0
@@ 299,6 299,12 @@ body {
  text-transform: uppercase;
}

.post__meta-sep::before {
  content: "\2022";
  padding-left: 0.5em;
  padding-right: 0.5em;
}

/*
   Page taxonomy
   ========================================================================== */