fix: remove recent posts section if there's no post (#238)

Changes made:
- Removed the recent posts section if there's no post under the recent section.
- Eliminated unnecessary <Hr /> tags when there's no recent post.
- Extracted all-links from the recent section and put it above the footer.

Closes: #204
This commit is contained in:
Sat Naing
2024-01-18 09:38:41 +06:30
committed by GitHub
parent ece0682adc
commit 629dbfda5b
+9 -7
View File
@@ -14,6 +14,7 @@ const posts = await getCollection("blog");
const sortedPosts = getSortedPosts(posts); const sortedPosts = getSortedPosts(posts);
const featuredPosts = sortedPosts.filter(({ data }) => data.featured); const featuredPosts = sortedPosts.filter(({ data }) => data.featured);
const recentPosts = sortedPosts.filter(({ data }) => !data.featured);
const socialCount = SOCIALS.filter(social => social.active).length; const socialCount = SOCIALS.filter(social => social.active).length;
--- ---
@@ -83,18 +84,17 @@ const socialCount = SOCIALS.filter(social => social.active).length;
))} ))}
</ul> </ul>
</section> </section>
<Hr /> {recentPosts.length > 0 && <Hr />}
</> </>
) )
} }
{
recentPosts.length > 0 && (
<section id="recent-posts"> <section id="recent-posts">
<h2>Recent Posts</h2> <h2>Recent Posts</h2>
<ul> <ul>
{ {recentPosts.map(
sortedPosts
.filter(({ data }) => !data.featured)
.map(
({ data, slug }, index) => ({ data, slug }, index) =>
index < 4 && ( index < 4 && (
<Card <Card
@@ -103,9 +103,12 @@ const socialCount = SOCIALS.filter(social => social.active).length;
secHeading={false} secHeading={false}
/> />
) )
)}
</ul>
</section>
) )
} }
</ul>
<div class="all-posts-btn-wrapper"> <div class="all-posts-btn-wrapper">
<LinkButton href="/posts"> <LinkButton href="/posts">
All Posts All Posts
@@ -116,7 +119,6 @@ const socialCount = SOCIALS.filter(social => social.active).length;
</svg> </svg>
</LinkButton> </LinkButton>
</div> </div>
</section>
</main> </main>
<Footer /> <Footer />