[Step by Step Tutorial] 06. Data Files
Jekyll์ _data
๋๋ ํ ๋ฆฌ์ ์์นํ YAML, JSON, CSV ํ์ผ๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋๊ฒ์ ์ง์ํ๋ค.๋ฐ์ดํฐ ํ์ผ์ ์ฝํ
์ธ ๋ฅผ ์์ค์ฝ๋๋ก๋ถํฐ ๋ถ๋ฆฌํ์ฌ ์ฌ์ดํธ๋ฅผ ๊ด๋ฆฌํ๊ธฐ์ฝ๊ฒ ๋ง๋ค์ด์ฃผ๋ ์ข์ ๋ฐฉ๋ฒ์ด๋ค.
์ด๋ฒ ๋จ๊ณ์์๋ ๋ค๋น๊ฒ์ด์ ์ ์ฝํ ์ธ ๋ฅผ ๋ฐ์ดํฐ ํ์ผ๋ก ๋ณด๊ดํ๊ณ , ๋ค๋น๊ฒ์ด์ ์ ํฌํจ๋ ๊ฒ๋ค์ ๋ฐ๋ณต๋ฌธ์ ์ด์ฉํด ์ฌ์ฉํ ๊ฒ์ด๋ค.
#
๋ฐ์ดํฐ ํ์ผ ์ฌ์ฉ๋ฒYAML์ Ruby ์์คํ ์์ ์ผ๋ฐ์ ์ธ ํฌ๋งท์ด๋ค. ์ฐ๋ฆฌ๋ ๋ค๋น๊ฒ์ด์ ์ ์๋ ๊ฐ๊ฐ์ ์ด๋ฆ๊ณผ๋งํฌ ์์ ๋ฐฐ์ด๋ก ๋ณด๊ดํ์ฌ ์ฌ์ฉํ ๊ฒ์ด๋ค.
๋ค๋น๊ฒ์ด์
์ ์ํ ๋ฐ์ดํฐ ํ์ผ์ _data/navigation.yml
์ ๋ง๋ ๋ค.
- name: Home link: /- name: About link: /about.html
Jekyll์์๋ site.data.navigation
์ ์ด์ฉํด ํด๋น ๋ฐ์ดํฐ ํ์ผ์ ์ด์ฉํ ์ ์๋ค.
_includes/navigation.html
์์ ๊ฐ๊ฐ์ ๋งํฌ๋ฅผ ๋ฃ๋ ๊ฒ ๋์ ์ ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ๋ค.
<nav> {% for item in site.data.navigation %} <a href="{{ item.link }}" {% if page.url == item.link %}style="color: red;"{% endif %}> {{ item.name }} </a> {% endfor %}</nav>
๊ฒฐ๊ณผ๋ฌผ์ ๋์ผํ์ง๋ง, ์ด ๊ตฌ์กฐ๋ ์๋ก์ด ๋ค๋น๊ฒ์ด์ ์ ์ถ๊ฐํ๊ฑฐ๋ ๋ณ๊ฒฝํ ๋ ํธ๋ฆฌํ๋ค๋ ์ฐจ์ด๊ฐ ์๋ค.