๋ณธ๋ฌธ์œผ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

[Step by Step Tutorial] 06. Data Files

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>

๊ฒฐ๊ณผ๋ฌผ์€ ๋™์ผํ•˜์ง€๋งŒ, ์ด ๊ตฌ์กฐ๋Š” ์ƒˆ๋กœ์šด ๋„ค๋น„๊ฒŒ์ด์…˜์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•  ๋•Œ ํŽธ๋ฆฌํ•˜๋‹ค๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.