ayushiiiiii thakur manataudapat hot momycarterx ifa thanyanan bow porn myvonnieta xx freeshzzers2 mae de familia danca marikamilkers justbeemma sex laprima melina12 thenayav mercury thabaddest giovamend 1 naamabelleblack2 telegram sky8112n2 millastarfatass 777sforest instagram 777sforest watch thickwitjade honeybuttercrunchh ariana twitter thenayav instagram hoelykwini erome andreahascake ifa marceladiazreal christy jameau twitter lolita shandu erome xolier alexsisfay3 anya tianti telegram lagurlsugarpear xjuliaroza senpaixtroll tits huynhjery07 victoria boszczar telegram cherrylids (cherrylidsss) latest phakaphorn boonla claudinka fitsk freshzzers2 anjayla lopez (anjaylalopez) latest bossybrasilian erome euyonagalvao anniabell98 telegram mmaserati yanerivelezec moodworldd1 daedotfrankyloko ketlin groisman ifa observinglalaxo twitter lexiiwiinters erome cherrylidsss twitter oluwagbotemmy emmy  tits xreindeers (xreindeers of) latest ashleyreelsx geizyanearruda ingrish lopez telegram camila1parker grungebitties whitebean fer pack cherrylidsss porn lamegfff nnayikaa cherrylidsss paty morales lucyn itsellakaye helohemer2nd itsparisbabyxo bio pocketprincess008 instagram soyannioficial vansessyx xxx morenitadecali1 afrikanhoneys telegram denimslayy erome lamegfff xx miabaileybby erome kerolay chaves ifa xolisile mfeka xxx videos 777sforest free scotchdolly97 reddit thaiyuni porn alejitamarquez ilaydaaust reddit phree spearit p ruth 20116 vansessy lucy cat vanessa reinhardt  alex mucci ifa its federeels anoushka1198 mehuly sarkar hot lovinggsarahh crysangelvid itskiley x ilaydaaust telegram chrysangellvid prettyamelian parichitanatasha tokbabesreel anastaisiflight telegram thuli phangisile sanjida afrin viral link telegram urcutemia telegram thenayav real name jacquy madrigal telegram carol davhana ayushiiiii thakur geraldinleal1 brenda taveras01 thenayav tiktok vansessyx instagram christy jameau jada borsato reddit bronwin aurora ifa iammthni thiccmamadanni lamegfff telegram josie loli2 nude boobs thenayav sexy eduard safe xreinders jasmineblessedthegoddess tits shantell beezey porn amaneissheree ilaydaaust ifsa lolita shandu xxx oluwagbotemmy erome adelyuxxa amiiamenn cherrylidsss ass daniidg93 telegram desiggy indian food harleybeenz twitter ilaydaust ifsa jordan jiggles sarmishtha sarkar bongonaari shantell beezey twitter sharmistha bongonaari hoelykwini telegram vansessy bae ceeciilu im notannaa tits banseozi i am msmarshaex pinay findz telegram thanyanan jaratchaiwong telegram victoria boszczar xx monalymora abbiefloresss erome akosikitty telegram ilaydaust reddit itsellakaye leaked msmarshaex phreespearit victoria boszczar sexy freshzzers2 2 yvonne jane lmio  huynhjery josie loli2 nu justeffingbad alyxx star world veronicaortiz06 telegram dinalva da cruz vasconcelos twitter fatma ile hertelden ifa telegram christy jameau telegram freehzzers2 meliacurvy nireyh thecherryneedles x wa1fumia erzabeltv freshzzers2 (freshzzers2) latest momycarterx reddit bbybronwin thenayav telegram trendymelanins bebyev21 fridapaz28 helohemer twitter franncchii reddit kikicosta ofcial samanthatrc telegram ninacola reddit fatma ile her telden ifsa telegram momycarterx twitter thenayav free dinalvavasconcelosss twitter dollyflynne reddit valeria obadash telegram nataliarosanews supermommavaleria melkoneko melina kimmestrada19 telegram natrlet the igniter rsa panpasa saeko shantay jeanette  thelegomommy boobs hann1ekin boobs naamabelleblack2 twitter lumomtipsof princesslexi victoria boszczar reddit itsparisbabyxo real name influenciadora de estilo the sims 4 bucklebunnybhadie dalilaahzahara xx scotchdolly97 nanda reyes of theecherryneedles instagram harleybenzzz xx justine joyce dayag telegram viral soyeudimarvalenzuela telegram xrisdelarosa itxmashacarrie ugaface monet zamora reddit twitter fatma ile hertelden ifa eng3ksa peya bipasha only fan premium labella düün salonu layla adeline  missfluo samridhiaryal anisa düün salonu kiley lossen twitter senpaixtroll chrysangell wika boszczar dinalvavasconcelosss  thaliaajd sitevictoriamatosa blueinkx areta febiola sya zipora iloveshantellb ig itsparisbabyxo ass kara royster and zendaya izakayayaduki anne instagram jacquy madrigal hot hazal Ƨalar reddit capthagod twitter amanda miquilena reddit flirtygemini teas

How to Display Thumbnails in Related Posts on GitHub Pages


Displaying thumbnails in related posts is a simple yet powerful way to make your GitHub Pages blog look more professional and engaging. When readers finish one article, showing them related posts with small images can visually invite them to explore more content — significantly increasing the time they spend on your site.

Why Visual Related Posts Matter

People process images faster than text. By adding thumbnails beside your related posts, you help visitors identify which topics might interest them instantly. It also breaks up text-heavy sections, giving your post layout a more balanced look.

On Jekyll-powered GitHub Pages, this feature isn’t built-in, but you can easily implement it using Liquid templates and a little HTML structure. Once set up, every new post will automatically display related posts complete with thumbnails.

Preparing Your Posts with Image Metadata

Before you start coding, you need to ensure every post has an image defined in its YAML front matter. This image will serve as the thumbnail for that post.


---
layout: post
title: "Building an SEO-Friendly Blog on GitHub Pages"
tags: [jekyll,seo,github-pages]
image: /assets/images/github-seo-cover.png
---

The image key can point to any image stored in your repository (for example, inside the /assets/images/ folder). Once defined, Jekyll can access it through .

Creating the Related Posts with Thumbnails

Now that your posts have images, let’s update the related posts code to include them. The logic is the same as the tag-based related system, but we’ll add a thumbnail preview.

Step 1 Update Your Related Posts Include File

Open or create a file named _includes/related-posts.html and add the following code:



{% assign related_posts = site.posts | where_exp: "item", "item.url != page.url" %}

Related Articles You Might Like

This template loops through your posts, finds those sharing at least one tag with the current page, and displays each with its thumbnail and title. The loading="lazy" attribute ensures faster page performance by deferring image loading until they appear in view.

Step 2 Style the Layout

Let’s add some CSS to make it visually appealing. You can include it in your site’s main stylesheet or directly in your post layout for quick testing.


.related-thumbs {
  list-style: none;
  padding: 0;
  margin-top: 2rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1rem;
}

.related-thumbs li {
  background: #f8f9fa;
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.2s ease;
}

.related-thumbs li:hover {
  transform: translateY(-4px);
}

.related-thumbs img {
  width: 100%;
  height: 130px;
  object-fit: cover;
  display: block;
}

.related-thumbs .title {
  display: block;
  padding: 0.75rem;
  font-size: 0.95rem;
  color: #333;
  text-decoration: none;
  text-align: center;
}

This layout automatically adapts to different screen sizes, ensuring a responsive grid of related posts. Each thumbnail includes a smooth hover animation to enhance interactivity.

Alternative Design Layouts

Depending on your blog’s visual theme, you may want to change how thumbnails are displayed. Here are a few alternatives:

Example: Inline Thumbnail Layout






.related-inline li {
  display: flex;
  align-items: center;
  margin-bottom: 0.75rem;
}

.related-inline img {
  width: 50px;
  height: 50px;
  object-fit: cover;
  margin-right: 0.75rem;
  border-radius: 6px;
}

This format is ideal if you prefer a simple text-first list while still benefiting from visual cues.

Improving SEO and Accessibility

To make your related posts section accessible and SEO-friendly:

Adding schema helps search engines understand your content relationships and sometimes display richer snippets in search results.

Integrating with Your Blog Layout

After testing, you can include the _includes/related-posts.html file at the end of your post layout so every blog post automatically displays thumbnails:



{{ content }}
{% include related-posts.html %}

This ensures consistency across all posts and eliminates the need for manual insertion.

Practical Use Case

Let’s say you run a digital marketing blog with articles like:

Post TitleTagsImage
Understanding SEO Basicsseo,optimizationseo-basics.webp
Content Optimization Tipsseo,contentcontent-tips.webp
Link Building Strategiesbacklinks,seolink-building.webp

When a reader views the ā€œUnderstanding SEO Basicsā€ article, your related section will automatically show the other two posts because they share the seo tag, along with their thumbnails. This visually reinforces topic relevance and encourages exploration.

Performance Considerations

Since GitHub Pages serves static files, you don’t need to worry about backend load. However, you should:

Following these practices keeps your site fast even with multiple related images.

Advanced Enhancement: Dynamic Fallback Image

If some posts don’t have an image, you can set a default fallback thumbnail. Add this code inside your _includes/related-posts.html:



{% assign default_image = "/assets/images/fallback.webp" %}
{{ post.title }}

This ensures your layout remains uniform, avoiding broken image icons or empty spaces.

Final Thoughts

Adding thumbnails to related posts on your Jekyll blog hosted on GitHub Pages is a small enhancement with big visual impact. It not only boosts engagement but also improves navigation, aesthetics, and perceived professionalism.

Once you master this approach, you can go further by building a fully card-based recommendation grid or even mixing tag and category signals for more precise post matching.

Next Step

In the next part, we’ll explore how to combine tags and categories to generate even more accurate related post suggestions — perfect for blogs with broad topics or overlapping themes.



.
ads by Adsterra to keep my blog alive









Ad Policy

My blog displays third-party advertisements served through Adsterra. The ads are automatically delivered by Adsterra’s network, and I do not have the ability to select or review each one beforehand. Sometimes, ads may include sensitive or adult-oriented content, which is entirely under the responsibility of Adsterra and the respective advertisers. I sincerely apologize if any of the ads shown here cause discomfort, and I kindly ask for your understanding.