포스트
Jekyll 에는 블로그 기능이 완전히 반영되어 있습니다. 당신은 텍스트 파일로 블로그 포스트를 작성하고 Jekyll 은 그것을 블로그로 변환하는데 필요한 모든것을 제공합니다.
포스트 폴더
당신의 블로그 포스트가 사는 곳은 _posts
폴더입니다. 포스트는 일반적으로
마크다운으로 작성하며, HTML
또한 지원합니다.
포스트 생성하기
포스트를 생성하려면, _posts
디렉토리에 파일을 추가하고 다음과 같은
형식으로 내용을 작성합니다:
YEAR-MONTH-DAY-title.MARKUP
여기서 YEAR
는 네 자리의 숫자, MONTH
와 DAY
는 두 자리 숫자이고, 확장자
부분의 MARKUP
은 파일에 사용된 마크다운 포맷입니다. 올바른 포스트 파일명을
예로 들면 다음과 같습니다:
2011-12-31-new-years-eve-is-awesome.md
2012-09-12-how-to-write-a-blog.md
모든 블로그 포스트 파일은 머리말로 시작되어야 하며, 이것은 일반적으로 레이아웃 이나 다른 메타 데이터를 설정하는데 사용됩니다. 아무 내용이 없는 것도 가능합니다:
---
layout: post
title: "Welcome to Jekyll!"
---
# Welcome
**Hello world**, this is my first Jekyll blog post.
I hope you like it!
ProTip™: 다른 포스트로 링크하기
post_url
태그를 사용하면
사이트 고유주소 스타일이 바뀌는 경우에도 URL 이 잘못될 걱정을 할 필요가
없습니다.
캐릭터 세트에 주의하세요
컨텐츠 처리기는 특정 문자들을 변경할 수 있어서 결과물을 더 좋게 보이게
합니다. 예를 들어, Redcarpet 변환 기본방식의 smart
확장기능은
ASCII 인용 부호를 유니코드 문자로 바꿉니다. 따라서, 이러한 문자들이
브라우저에 올바르게 표시되게 하려면, 레이아웃 파일의 <head>
에 <meta charset="utf-8">
라고 입력하여 캐릭터
세트 메타 정보를 정의해야 합니다.
이미지와 자원 삽입하기
때때로 글 중간에 이미지, 다운로드 또는 그 밖에 다른 종류의 자원을
삽입해야할 때가 있습니다. 가장 일반적인 방법 중 하나는
프로젝트의 루트 디렉토리에 assets
같은 이름의 디렉토리를 만들고,
이미지와 파일, 그 밖의 다른 자원들을 보관하는 것입니다. 그 다음, 어느
포스트에서든지 링크하는 자원의 경로에 사이트 루트 경로를
포함시키면 됩니다. 이를 위한 최선의 방법은 사이트의 (서브)도메인과
경로 설정에 따라 다르지만, 여기 몇 가지 단순한 마크다운 예제가 있습니다:
포스트에 이미지를 삽입:
... which is shown in the screenshot below:
![My helpful screenshot](/assets/screenshot.jpg)
PDF 다운로드 링크를 삽입:
... you can [get the PDF](/assets/mydoc.pdf) directly.
포스트 목록 표시하기
별도의 페이지에 포스트 목록을 생성하는 것은 Liquid 와 이에 포함된 태그 기능을 사용하면 쉽습니다. 여기, 포스트 링크 목록을 생성하는 간단한 예시가 있습니다:
<ul>
{% for post in site.posts %}
<li>
<a href="{{ post.url }}">{{ post.title }}</a>
</li>
{% endfor %}
</ul>
포스트를 어떻게 (그리고 어디에) 표시할 것인지, 사이트를 어떻게 구성할 것인지, 전부 다 제어할 수 있습니다. 더 자세한 내용을 알고 싶다면, Jekyll 에서 템플릿이 작동하는 방법을 읽어보세요.
위 예제에서 post
변수는 오직 for
루프 안에서만 존재한다는 것에 주의하세요.
만약 현재 렌더링중인 페이지/포스트의 변수 (for
루프를 포함하고 있는
포스트/페이지의 변수) 에 접근하고자 한다면, post
대신 page
변수를
사용하세요.
카테고리와 태그
Jekyll 은 블로그 포스트의 카테고리와 태그에 대한 최고 수준의 지원을 제공합니다. 카테고리와 태그의 차이점은 카테고리는 포스트의 URL 에 포함될 수 있으며 태그는 안된다는 점입니다.
이 기능을 사용하려면, 머리말에 카테고리와 태그를 설정합니다:
---
layout: post
title: A Trip
categories: [blog, travel]
tags: [hot, summer]
---
Jekyll 은 site.categories
로 카테고리를 사용할 수 있게 해줍니다. 페이지에서
site.categories
에 반복문을 적용하면 두 항목으로 구성된 또 다른 배열을 사용할 수 있는데,
첫 번째 항목은 카테고리의 이름이고 두 번째 항목은 해당 카테고리의 포스트
배열입니다.
{% for category in site.categories %}
<h3>{{ category[0] }}</h3>
<ul>
{% for post in category[1] %}
<li><a href="{{ post.url }}">{{ post.title }}</a></li>
{% endfor %}
</ul>
{% endfor %}
태그는 변수가 site.tags
라는 것만 제외하면 완벽히 동일합니다.
포스트 발췌
---
excerpt_separator: <!--more-->
---
Excerpt with multiple paragraphs
Here's another paragraph in the excerpt.
<!--more-->
Out-of-excerpt
다음은 발췌와 함께 블로그 포스트 목록을 출력하는 예시입니다:
<ul>
{% for post in site.posts %}
<li>
<a href="{{ post.url }}">{{ post.title }}</a>
{{ post.excerpt }}
</li>
{% endfor %}
</ul>
Drafts
초안이란 파일명에 날짜가 없는 포스트입니다. 현재 작성중이기 때문에 아직은
온라인에 게시하고 싶지 않은 포스트를 의미합니다. 초안 기능을 사용하려면,
사이트의 루트 디렉토리에 _drafts
폴더를 만들고 초안을 생성하면 됩니다:
.
├── _drafts
│ └── a-draft-post.md
...
초안을 포함해서 사이트를 미리보기 하려면, jekyll serve
나 jekyll build
명령에 --drafts
스위치를 추가해서 실행하세요. 초안의 작성시간에
해당 파일의 수정시간을 할당하기 때문에, 현재 작업중인 초안이
가장 최신 포스트인 것처럼 표시됩니다.