개요
포스팅만으로도 블로그 운영은 가능하지만, 종류별로 세분화된 글을 한곳에 모아 두고 싶을 때는 Jekyll의 Collections 기능이 적합하다. 이 글에서는 Collections를 도입해 “다시 찾아볼 만한 글"만 정리해 보여 주는 페이지를 만드는 방법을 단계별로 정리한다.
대상 독자: Jekyll 블로그를 운영 중이며, 카테고리와 별도로 “선별된 콜렉션” 페이지가 필요한 경우.
Collections란 무엇인가
- 카테고리: 모든 글을 기준으로 분류해 보여 준다.
- Collections: 특정 폴더(
_컬렉션명) 안의 문서만 골라서 하나의 묶음으로 보여 준다.
즉, “알고리즘 정리”, “시리즈 모음”, “추천 포스트"처럼 일부 글만 선정해 모아 보는 용도로 쓰면 된다.
장점과 단점
장점
- 기존 카테고리는 전체 글을 기준으로 하므로, “꼭 다시 보고 싶은 글"만 따로 묶기 어렵다.
- Collections는 해당 컬렉션 폴더에 넣은 글만 표시하므로, 재방문·시리즈·주제별 정리를 명확히 할 수 있다.
단점
- Posts에 있는 글 → Collections 페이지에서 링크로 노출하는 것은 가능하다.
- Collection으로만 지정된 글 → 기본 Posts 목록에는 나타나지 않으며, Jekyll 기본 기능만으로는 “Collections 전용 글을 Posts에도 보이게” 하려면 추가 작업이 필요하다.
이 점을 감안해 “일반 포스트"와 “컬렉션 전용 정리글"을 구분해 사용하는 것이 좋다.
적용 절차 요약
Collections를 쓰려면 아래 세 가지를 모두 해야 한다. 하나라도 빠지면 해당 컬렉션 글이 목록에 제대로 나오지 않는다.
- 네비게이션에 Collections 링크 추가 (
_data/navigation.yml) - Collections 아카이브 페이지 생성 (
_pages/+collection-archive.html등) - 컬렉션 폴더 생성 +
_config.yml설정 (default, collections)
다음 Mermaid 다이어그램은 이 절차의 흐름을 보여 준다.
flowchart LR
subgraph stepOne["Step 1"]
Nav["navigation.ymlCollections 링크 추가"]
end
subgraph stepTwo["Step 2"]
Page["collection-archive.html아카이브 레이아웃"]
end
subgraph stepThree["Step 3"]
Folder["컬렉션 폴더 생성예: _algorithm"]
Config["_config.ymldefault + collections"]
end
Nav --> Page
Page --> Folder
Folder --> Config
1. 링크 만들기 (navigation.yml)
메인 페이지에서 Collections 페이지로 들어갈 수 있도록 _data/navigation.yml에 항목을 추가한다.
| |
2. Collections 아카이브 페이지 만들기
Collections 목록을 렌더링할 레이아웃이 필요하다. _pages/에 collection-archive.html을 두고, site.collections를 순회해 각 컬렉션과 문서를 출력한다.
전체 레이아웃 코드는 아래 Gist에서 확인할 수 있다.
요약하면:
site.collections에서output == false가 아닌 컬렉션만 사용한다.posts컬렉션은 “Posts not in the collection” 등 별도 제목으로 처리할 수 있다.- 각 컬렉션별로
collection.Title(머리글)과 문서 목록을 보여 주고, 필요 시archive-single.html을 include 해 포스트 스타일로 렌더링한다.
3. Collections에 표시되는 글 작성하기
컬렉션에 글이 보이려면 다음 세 가지를 모두 적용해야 한다.
| 순서 | 작업 | 설명 |
|---|---|---|
| ① | 별도 폴더에 글 작성 | 예: 최상위에 _algorithm 폴더 생성 후 bubblesort.md 등 작성 |
| ② | _config.yml의 defaults에 해당 컬렉션 설정 | 경로·타입 지정, 레이아웃·toc 등 공통 값 부여 |
| ③ | _config.yml의 collections에 컬렉션 등록 | output: true, permalink, 머리글용 Title 등 |
하나라도 누락되면 해당 컬렉션 문서가 아카이브에 나타나지 않거나 오류가 날 수 있다.
3-1. 별도 폴더에 글 작성하기
예시처럼 최상위 레벨에 _algorithm 폴더를 만들고, 그 안에 bubblesort.md 같은 문서를 넣는다. Posts와 달리 파일명에 날짜를 넣지 않아도 동작한다.

문서 front matter는 최소한 title만 있어도 된다.
| |
3-2. _config.yml의 defaults에 추가하기
컬렉션 문서에 공통으로 적용할 레이아웃·toc·댓글 등을 defaults로 지정한다. 아래 Gist는 _algorithm 타입에 대한 예시다.
예시 요약:
| |
scope.type을 컬렉션 이름(예: algorithm)과 맞추면, 해당 컬렉션 문서에 목차(toc) 등이 적용된다.
3-3. _config.yml의 collections에 추가하기
컬렉션을 사이트에 등록하고, 아카이브에서 쓰일 머리글(Title) 과 URL 구조(permalink)를 정한다.
예시 요약:
| |
Title에 적은 문자열이 Collections 아카이브 페이지에서 해당 컬렉션의 머리글로 표시된다.
주의사항 정리
- defaults / collections / 폴더 구조 세 가지가 모두 맞아야 컬렉션 글이 정상 노출된다.
- 컬렉션 전용 글은 기본 Posts 목록에는 안 나온다. “일반 포스트에도 보이게” 하려면 별도 플러그인이나 스크립트가 필요할 수 있다.
path가 빈 문자열이면 해당type의 모든 문서에 defaults가 적용되므로, 컬렉션별로 다른 레이아웃을 쓰고 싶다면path를 컬렉션 디렉터리로 한정하는 편이 안전하다.
총평 및 활용 방향
- 카테고리: 블로그의 모든 글을 분류해 보여 주는 용도.
- Collections: “다시 찾아볼 만한 글”, “시리즈 모음”, “주제별 정리"처럼 일부만 선정해 모아 보는 용도로 쓰면 좋다.
둘을 함께 사용하면 일반 포스트 흐름과 선별된 정리 페이지를 구분해 운영하기 수월하다.
참고 문헌
- Jekyll Collections (공식 문서) — Collections 개념과 설정 방법.
- collection-archive.html Gist — 아카이브 레이아웃 예시.
- Jekyll Configuration (공식 문서) —
_config.yml의defaults,collections옵션 설명.
![Featured image of post [Jekyll] 모아 볼 수 있는 콜렉션 만들기](/post/2021-04-06-make-collections/wordcloud_hu_6a3f3ba34b6f10cd.webp)
![[Tutorial] Learn Prompting - 프롬프트 엔지니어링 무료 가이드 정리](/post/2022-12-30-learn-prompting/wordcloud_hu_6a9d105de4834753.webp)
![[Hardware] LattePanda Alpha에 Ubuntu 16.04 LTS 설치 가이드](/post/2018-12-06-install-ubuntu-16.04-on-lattepanda/wordcloud_hu_fc536f8de2cbd4bf.webp)
![[Rust] Comprehensive Rust 무료 강의 정리 및 코스 구조](/post/2022-12-30-comprehensive-rust/wordcloud_hu_d1420ff38434cdb6.webp)
![[How-To] Windows 10 다중 사용자 카카오톡 실행 권한 부여](/post/2021-04-07-window10-multiuser-kakaotalk/wordcloud_hu_5fcf6a8683d09a52.webp)
![[Hyper-V] 가상 머신 해상도 설정: Set-VMVideo 활용 가이드](/post/2025-05-24-hyper-v-virtual-machine-resolution-setting-set-vmvideo-utilization-guide/image_hu_96966cce8efeeb71.webp)