Skip to content

Instantly share code, notes, and snippets.

@nimbupani
Created December 2, 2011 05:00
Show Gist options
  • Star 107 You must be signed in to star a gist
  • Fork 6 You must be signed in to fork a gist
  • Save nimbupani/1421828 to your computer and use it in GitHub Desktop.
Save nimbupani/1421828 to your computer and use it in GitHub Desktop.
Showing latest post on home page with Jekyll
---
layout: default
---
<div class="blog-index">
{% assign post = site.posts.first %}
{% assign content = post.content %}
{% include post_detail.html %}
</div>
<h1 class="entry-title">
{% if page.title %}
<a href="{{ root_url }}{{ page.url }}">{{ page.title }}</a>
{% endif %}
{% if post.title %}
<a href="{{ root_url }}{{ post.url }}">{{ post.title }}</a>
{% endif %}
</h1>
<div class="entry-content">{{ content }}</div>
@nimbupani
Copy link
Author

This was the easiest hack I could get away with while sharing the included snippet with individual post page as well. I am sure this is quite the incorrect way to go about it.

@xonecas
Copy link

xonecas commented Feb 28, 2013

It might be a hack, but now it's not only you using it. :-) Thank you

@nathanlong
Copy link

👍

@girvo
Copy link

girvo commented Apr 28, 2013

For some reason it doesn't work in displaying the title when the post is accessed directly on my setup :( I'll see if I can work out why

@flxw
Copy link

flxw commented Jul 19, 2013

Nice! Saved me some tryouts!

@mattr-
Copy link

mattr- commented Aug 29, 2013

Nice! Mind if I use this in a blog post series I intend to start on Jekyll tips and tricks? Credit will be given.

@escotilha
Copy link

Thanks! Helped me a lot!

@zypeh
Copy link

zypeh commented Oct 10, 2013

Awesome! I am gonna use this in my site. Thanks :-)

@olegafx
Copy link

olegafx commented Feb 11, 2014

Awesome, thank you!

@MindGeek
Copy link

MindGeek commented Apr 1, 2014

Awesome!

@Tug
Copy link

Tug commented Apr 21, 2014

Add {% assign page = post %} if the title does not show up.

@chrisanthropic
Copy link

Anyone still using this know if it's possible to add pagination to it that points to prev post and not '/blog/page/2' ?

@wilsonusman
Copy link

Do you know why am I showing more than the first post?

@coderdiaz
Copy link

Working good! 😄

@kencrocken
Copy link

🍻

@lacostenycoder
Copy link

🍻 what he said ^^

@eenblam
Copy link

eenblam commented Jun 20, 2015

Since this is still a topic of interest several years later, it's probably worth mentioning the Jekyll Bootstrap docs.

@cherrot
Copy link

cherrot commented Jul 11, 2015

Awesome hack!

@onewithnow
Copy link

Works! Thank you so much.

@TangChr
Copy link

TangChr commented Oct 12, 2015

Works like a charm. Thanks!

@mhlibchuk
Copy link

Hi there, I know I'm a bit late, but thanks! Just what I was looking for.

@terrencebrown
Copy link

many thanks buddy!

@pabloselin
Copy link

Thanks! this helped me understand Jekyll and get started with some templating...

@michelinux
Copy link

Thank you. Just what I was looking for. Even after so many years.

@BradCoffield
Copy link

Thanks a lot. I just needed a simple link to the latest post and reading your stuff helped me.

Just FYI for others: <a href="{{site.posts.first.url}}">{{site.posts.first.title}}</a>

@bildungsroman
Copy link

I know this is a bit late, but now how do you show the rest of your posts if you're using pagination? I know an easy way would be to do offset:1, but with pagination this offsets the first post on each page, which is not what I want. Is there a way to use assign, i.e. {% assign remainingposts = site.posts offset:1 %} or something like that?

@crnkofe
Copy link

crnkofe commented Dec 2, 2020

I just added this into _layouts/home.html . Works like a charm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment