### Overview This PR fixes an issue where unnecessary horizontal lines were displayed when there were no tags or categories present. The tag and category container is now conditionally rendered, ensuring it only appears when there are tags or categories to display. no tags meaning, in _config.yml ``` display_tags: [] display_categories: [] ``` ### Before and After The difference is illustrated in the images below: - **First Image (Fixed)**: Shows the correct behavior with no extra lines when tags or categories are absent. - **Second Image (Current)**: Demonstrates the issue with unwanted horizontal lines appearing when no tags or categories are present.   ### Impact This change improves the visual consistency and cleanliness of the theme by preventing unnecessary elements from being rendered, particularly in cases where there are no tags or categories defined.
197 lines
6.2 KiB
Markdown
197 lines
6.2 KiB
Markdown
---
|
|
layout: default
|
|
permalink: /blog/
|
|
title: blog
|
|
nav: true
|
|
nav_order: 1
|
|
pagination:
|
|
enabled: true
|
|
collection: posts
|
|
permalink: /page/:num/
|
|
per_page: 5
|
|
sort_field: date
|
|
sort_reverse: true
|
|
trail:
|
|
before: 1 # The number of links before the current page
|
|
after: 3 # The number of links after the current page
|
|
---
|
|
|
|
<div class="post">
|
|
|
|
{% assign blog_name_size = site.blog_name | size %}
|
|
{% assign blog_description_size = site.blog_description | size %}
|
|
|
|
{% if blog_name_size > 0 or blog_description_size > 0 %}
|
|
|
|
<div class="header-bar">
|
|
<h1>{{ site.blog_name }}</h1>
|
|
<h2>{{ site.blog_description }}</h2>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{% if site.display_tags and site.display_tags.size > 0 or site.display_categories and site.display_categories.size > 0 %}
|
|
|
|
<div class="tag-category-list">
|
|
<ul class="p-0 m-0">
|
|
{% for tag in site.display_tags %}
|
|
<li>
|
|
<i class="fa-solid fa-hashtag fa-sm"></i> <a href="{{ tag | slugify | prepend: '/blog/tag/' | relative_url }}">{{ tag }}</a>
|
|
</li>
|
|
{% unless forloop.last %}
|
|
<p>•</p>
|
|
{% endunless %}
|
|
{% endfor %}
|
|
{% if site.display_categories.size > 0 and site.display_tags.size > 0 %}
|
|
<p>•</p>
|
|
{% endif %}
|
|
{% for category in site.display_categories %}
|
|
<li>
|
|
<i class="fa-solid fa-tag fa-sm"></i> <a href="{{ category | slugify | prepend: '/blog/category/' | relative_url }}">{{ category }}</a>
|
|
</li>
|
|
{% unless forloop.last %}
|
|
<p>•</p>
|
|
{% endunless %}
|
|
{% endfor %}
|
|
</ul>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{% assign featured_posts = site.posts | where: "featured", "true" %}
|
|
{% if featured_posts.size > 0 %}
|
|
<br>
|
|
|
|
<div class="container featured-posts">
|
|
{% assign is_even = featured_posts.size | modulo: 2 %}
|
|
<div class="row row-cols-{% if featured_posts.size <= 2 or is_even == 0 %}2{% else %}3{% endif %}">
|
|
{% for post in featured_posts %}
|
|
<div class="col mb-4">
|
|
<a href="{{ post.url | relative_url }}">
|
|
<div class="card hoverable">
|
|
<div class="row g-0">
|
|
<div class="col-md-12">
|
|
<div class="card-body">
|
|
<div class="float-right">
|
|
<i class="fa-solid fa-thumbtack fa-xs"></i>
|
|
</div>
|
|
<h3 class="card-title text-lowercase">{{ post.title }}</h3>
|
|
<p class="card-text">{{ post.description }}</p>
|
|
|
|
{% if post.external_source == blank %}
|
|
{% assign read_time = post.content | number_of_words | divided_by: 180 | plus: 1 %}
|
|
{% else %}
|
|
{% assign read_time = post.feed_content | strip_html | number_of_words | divided_by: 180 | plus: 1 %}
|
|
{% endif %}
|
|
{% assign year = post.date | date: "%Y" %}
|
|
|
|
<p class="post-meta">
|
|
{{ read_time }} min read ·
|
|
<a href="{{ year | prepend: '/blog/' | prepend: site.baseurl}}">
|
|
<i class="fa-solid fa-calendar fa-sm"></i> {{ year }} </a>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</a>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
|
|
{% endif %}
|
|
|
|
<ul class="post-list">
|
|
|
|
{% if page.pagination.enabled %}
|
|
{% assign postlist = paginator.posts %}
|
|
{% else %}
|
|
{% assign postlist = site.posts %}
|
|
{% endif %}
|
|
|
|
{% for post in postlist %}
|
|
|
|
{% if post.external_source == blank %}
|
|
{% assign read_time = post.content | number_of_words | divided_by: 180 | plus: 1 %}
|
|
{% else %}
|
|
{% assign read_time = post.feed_content | strip_html | number_of_words | divided_by: 180 | plus: 1 %}
|
|
{% endif %}
|
|
{% assign year = post.date | date: "%Y" %}
|
|
{% assign tags = post.tags | join: "" %}
|
|
{% assign categories = post.categories | join: "" %}
|
|
|
|
<li>
|
|
|
|
{% if post.thumbnail %}
|
|
|
|
<div class="row">
|
|
<div class="col-sm-9">
|
|
{% endif %}
|
|
<h3>
|
|
{% if post.redirect == blank %}
|
|
<a class="post-title" href="{{ post.url | relative_url }}">{{ post.title }}</a>
|
|
{% elsif post.redirect contains '://' %}
|
|
<a class="post-title" href="{{ post.redirect }}" target="_blank">{{ post.title }}</a>
|
|
<svg width="2rem" height="2rem" viewBox="0 0 40 40" xmlns="http://www.w3.org/2000/svg">
|
|
<path d="M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9" class="icon_svg-stroke" stroke="#999" stroke-width="1.5" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path>
|
|
</svg>
|
|
{% else %}
|
|
<a class="post-title" href="{{ post.redirect | relative_url }}">{{ post.title }}</a>
|
|
{% endif %}
|
|
</h3>
|
|
<p>{{ post.description }}</p>
|
|
<p class="post-meta">
|
|
{{ read_time }} min read ·
|
|
{{ post.date | date: '%B %d, %Y' }}
|
|
{% if post.external_source %}
|
|
· {{ post.external_source }}
|
|
{% endif %}
|
|
</p>
|
|
<p class="post-tags">
|
|
<a href="{{ year | prepend: '/blog/' | prepend: site.baseurl}}">
|
|
<i class="fa-solid fa-calendar fa-sm"></i> {{ year }} </a>
|
|
|
|
{% if tags != "" %}
|
|
·
|
|
{% for tag in post.tags %}
|
|
<a href="{{ tag | slugify | prepend: '/blog/tag/' | prepend: site.baseurl}}">
|
|
<i class="fa-solid fa-hashtag fa-sm"></i> {{ tag }}</a>
|
|
{% unless forloop.last %}
|
|
|
|
{% endunless %}
|
|
{% endfor %}
|
|
{% endif %}
|
|
|
|
{% if categories != "" %}
|
|
·
|
|
{% for category in post.categories %}
|
|
<a href="{{ category | slugify | prepend: '/blog/category/' | prepend: site.baseurl}}">
|
|
<i class="fa-solid fa-tag fa-sm"></i> {{ category }}</a>
|
|
{% unless forloop.last %}
|
|
|
|
{% endunless %}
|
|
{% endfor %}
|
|
{% endif %}
|
|
</p>
|
|
|
|
{% if post.thumbnail %}
|
|
|
|
</div>
|
|
|
|
<div class="col-sm-3">
|
|
<img class="card-img" src="{{post.thumbnail | relative_url}}" style="object-fit: cover; height: 90%" alt="image">
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
</li>
|
|
|
|
{% endfor %}
|
|
|
|
</ul>
|
|
|
|
{% if page.pagination.enabled %}
|
|
{% include pagination.liquid %}
|
|
{% endif %}
|
|
|
|
</div>
|