웹 개발
블로그 글 목록에 날짜를 넣기로 한 이유
날짜 하나가 글 목록에 주는 정보량은 생각보다 크다. 언제 쓴 글인지 알면 읽을지 말지 판단이 빨라진다.
블로그 글 목록을 처음 만들 때는 제목만 나열했다. 깔끔해 보이기는 했는데, 글이 쌓이면서 언제 쓴 건지 알 수 없는 목록이 됐다. 기술 글은 날짜가 중요하다. 2년 전에 쓴 Next.js 배포 글과 최근에 쓴 글은 내용이 다를 수 있다.
그래서 날짜를 추가하기로 했다.
Next.js에서 날짜 포맷
날짜를 Date 객체로 다루고, 표시할 때만 문자열로 변환한다.
function formatDate(dateStr: string): string {
const date = new Date(dateStr);
return date.toLocaleDateString('ko-KR', {
year: 'numeric',
month: 'long',
day: 'numeric',
});
}
2026년 6월 23일 형태로 나온다. 영어권 독자가 없으면 이 형태가 읽기 편하다.
publishedAt vs createdAt
DB에 createdAt과 publishedAt 둘 다 있다면 목록에는 publishedAt을 쓴다. createdAt은 초안을 처음 만든 시각이라 발행일과 다를 수 있다. 발행 전에 며칠씩 초안을 다듬는 경우엔 특히 그렇다.
const displayDate = post.publishedAt ?? post.createdAt;
SEO를 위한 메타데이터 확인
날짜를 표시하면서 <time> 태그를 함께 쓰면 검색엔진이 날짜를 더 잘 인식한다.
<time dateTime={post.publishedAt}>
{formatDate(post.publishedAt)}
</time>
실제로 HTML에 잘 들어갔는지는 빌드 후 확인한다.
npm run build
curl -s https://example.com/blog | grep '<time'
정렬 기준
날짜를 넣으면 정렬 순서도 명확해진다. 최신 글이 위로 오도록 publishedAt 내림차순으로 정렬한다. 정렬은 DB 쿼리에서 처리하는 게 낫다 — 클라이언트에서 정렬하면 페이지네이션이 복잡해진다.
날짜 하나를 추가한 것뿐인데 목록이 훨씬 읽기 편해졌다. 오래된 글은 날짜를 보고 독자가 알아서 판단하고, 최신 글은 날짜가 신뢰감을 준다.