Skip to main content

Jekyll Varsayılan İçeriği: Dosya Yapısını Keşfetme 🌐


💡 Bu Rehberde Ne Öğreneceksiniz

Bu rehberde, yeni oluşturduğunuz Jekyll sitesinin dosya yapısını ayrıntılı şekilde inceleyeceksiniz. Jekyll’in Markdown tabanlı içerikleri nasıl statik HTML sayfalara dönüştürdüğünü, _config.yml yapılandırmasını ve Front Matter mantığını öğreneceksiniz.


🧠 Teknik Özet

Jekyll, dinamik içerik sistemleri yerine dosya tabanlı statik sayfalar üretir. Bu rehber:

  1. Geliştirme sunucusunu çalıştırmayı,
  2. _config.yml yapılandırmasını düzenlemeyi,
  3. Sayfa ve gönderi yapısını anlamayı,
  4. Yeni içerik eklemeyi öğretir.

⚙️ 1. Geliştirme Sunucusunu Başlatma

Projeye başlamadan önce Jekyll’in geliştirme sunucusunu çalıştırın:

cd ~/www
jekyll serve --host=192.168.1.10

Bu komut, Jekyll sunucusunu başlatır ve yerel IP üzerinden test imkânı sağlar.

Tarayıcıda http://192.168.1.10:4000 adresine giderek siteyi görüntüleyin.


⚙️ 2. Genel Yapılandırma: _config.yml

Jekyll’in en önemli dosyalarından biri olan _config.yml, tüm sitenin genel ayarlarını içerir.

Dosyayı düzenlemek için:

nano ~/www/_config.yml

Örnek yapılandırma:

title: Rabisu'nun Blogu
email: [email protected]
description: >
Rabisu Bulut teknik bloguna hoş geldiniz.
github_username: rabisu
twitter_username: rabisu

Bu dosyada yapılan değişiklikler, tüm sayfa ve gönderilere otomatik yansır.

Değişikliklerin etkin olması için Jekyll sunucusunu yeniden başlatın:

jekyll serve --host=192.168.1.10

📄 3. Sayfa Yapısını (about.md) Anlama

Jekyll’de her sayfa, “Front Matter” adlı YAML formatlı bir bilgi bloğu içerir. Bu blok Jekyll’e sayfanın nasıl oluşturulacağını söyler.

Örnek about.md:

---
layout: page
title: "Hakkımda ve Ekip"
permalink: /hakkimda/
---

“layout” şablonu belirler, “title” başlık ve menü metnidir, “permalink” ise sayfa URL’sini özelleştirir.

Front Matter’dan sonra gelen kısım, sayfanın Markdown içerik bölümüdür. Bu kısım HTML’e dönüştürülerek sitede görünür hale gelir.

Başlığı değiştirmek için dosyayı açın:

nano ~/www/about.md

Ve başlığı şu şekilde güncelleyin:

title: "Hakkımda ve Ekip"

Bu değişiklik menü ve başlık metinlerine otomatik olarak yansır.


🖼️ 4. Yeni Sayfa ve İçerik Ekleme

Yeni bir iletişim sayfası eklemek için görselleri tutacak bir dizin oluşturun:

mkdir ~/www/assets

Bu dizin, statik görselleri saklamak içindir.

Görsel ekleyelim:

wget -O ~/www/assets/rabisu-logo.jpg https://assets.digitalocean.com/articles/jekyll-1604/postcard.jpg

Yeni sayfayı oluşturun:

nano ~/www/contact.md

Sayfa içeriği:

---
layout: page
title: "Bize Ulaşın"
---

Rabisu Bulut\\
İletişim Departmanı\\
Büyükdere Cad. No: 1\\
İstanbul, Türkiye

![Rabisu Bulut Logosu](/assets/rabisu-logo.jpg)

Markdown içindeki \\ satır sonu ekler, ![]() görsel çağırır.

Yeni sayfa, menüye otomatik olarak eklenecektir.


📰 5. Gönderi Yapısını (_posts) Çözümleme

Jekyll gönderileri _posts dizininde saklanır ve özel bir isim formatı gerektirir:

YYYY-MM-DD-baslik.markdown

Örneğin: 2025-11-04-jekyll-guncelleme.markdown

Gönderi örneği:

---
layout: post
title: "Jekyll'e Hoş Geldiniz!"
date: 2025-11-04 17:35:19 +0300
categories: jekyll guncelleme
---

Tarih, gönderinin URL yapısını ve sıralamasını belirler.

Gelecekteki tarihler, gönderinin o tarihe kadar yayınlanmamasını sağlar.


🧾 6. Diğer Önemli Dosyalar

  • main.scss: Sass dosyalarını CSS’e dönüştürür.
  • feed.xml: RSS akışı oluşturur.
  • Gemfile: Kullanılan Ruby eklentilerini (gem’leri) listeler.
  • Gemfile.lock: Bu eklentilerin kesin sürümlerini saklar.

Bu dosyalar görünür değildir ama sitenin altyapısında kritik rol oynar.


❓ Sıkça Sorulan Sorular (SSS)

1. Front Matter neden zorunludur?

Çünkü Jekyll’e dosyanın şablon motoruyla işlenmesi gerektiğini belirtir.

2. _config.yml neden yeniden başlatma gerektirir?

Jekyll bu dosyayı başlangıçta okur; değişiklik sonrası siteyi yeniden oluşturmak gerekir.

3. Jekyll form gönderimlerini destekler mi?

Hayır, Jekyll statik çalışır. Formlar için Formspree veya Netlify Forms kullanılabilir.

4. Sayfa ve gönderi farkı nedir?

Gönderiler tarih bazlıdır ve ana sayfada listelenir. Sayfalar ise sabit içeriklerdir.


🎯 Sonuç

Bu rehberle Jekyll’in dosya yapısını, _config.yml yapılandırmasını ve içerik akışını öğrendiniz. Artık Jekyll projenizi kolayca özelleştirip statik yapınızı güvenli şekilde yönetebilirsiniz. 🚀 Projenizi Rabisu Bulut üzerinde barındırarak optimize edilmiş altyapıyla yayına alabilirsiniz.