published on 01.06.2018

Jekyll; static website generatorlar arasında önde gelen çözümlerden biri. […] Henüz konunun başındayken okuyucuyu farklı bir yere yönlendirmek saçma olsa da nasıl olsa kâr amacı gütmüyoruz burada. Onun için, sayın okuyucu seni yönlendiriyorum: henüz Jekyll kullanmıyorsan ve bir static website …

published on 20.05.2018

Jekyll’da herhangi bir yerde (aynı ya da farklı dosyalarda) aynı kodu tekrar kullanacaksak bu kodu include.html dosyası içerisinde saklayıp oradan çağırırız. Böylece tekrarın önüne geçeriz. Bir nevi fonksiyon tanımlamak gibi düşünülebilir. Github’daki bloglarda görmüşsünüzdür genelde …

published on 19.05.2018

Liquid syntaxı ile tarihleri, eğer ki “19.05.2018” formatında elde etmek istiyorsak işimiz kolay. page.date | date: "%d.%m.%Y" ile sayılarla istediğimiz formatı elde etmemiz mümkün. Eğer istediğimiz format, “19 Mayıs, 1919” şeklinde ise page.date | date: "%d …

published on 21.05.2018

Jekyll’a yeni başlayan biri için, kod bloklarını görüntülemek problemli bir iş olabilir. En azından benim için epey problemli oldu. Bu yazıda, karşılaşabileceğiniz problemlere karşı birkaç ipucu vermeye çalışacağım. […] Eğer, yazılar kod bloğu içeriyorsa ve anasayfada postları …

published on 13.06.2018

Eğer, matematiksel bir şeyler yazıyorsanız matematiksel gösterimlere de ihtiyacınız olacaktır. Bu konuda akla ilk gelen belge hazırlama sistemi LaTeX‘dir. Peki, bir jekyll blogunda bu iş nasıl yapılır? Kullandığınız markdown işleyicisine göre farklı seçeneklere yönelebilirsiniz. Ben, kendi …

published on 16.06.2018

Eğer yazılarımıza etiket ekleyip arşivimizi de etiketlere göre filtrelemek istiyorsak, ihtiyacımız olanlar; […] Oldukça kolaydır, aşağıdaki gibi oluşturulabilir: […] {% assign posts = site.posts | sort: "date" | reverse %} {% for post in posts %} <li><a …

published on 31.05.2018

Daha önce Liquid: Sayfalandırma ve Dizi Filtreleme konusunda birkaç dizi operasyonundan ve döngülerden bahsetmiştim. Şimdi stringler ile oynayacağız. Öncelikle belirteyim, liquid syntax’ı kesinlikle matematikte iyi değil, zaten amacı da o değil. Buna bağlı olarak jekyll ile dinamik yapılar …

published on 03.07.2018

Bu yazıda liquid syntaxında forloop’dan bahsedeceğiz. Yeni başlayanların da ilk karşılaştıkları klasik yapı, for döngüsü. {% for post in site.posts%} // Do something here {% endfor %} Hemen karşınıza çıkmayan bazı incelikleri var. Onları paylaşalım: {% for i in (0..10) %} {{i}} {% endfor %} …

published on 03.07.2018

Bu yazıda, liquid syntax’ı ile diziler üzerinde yapılabilecek bazı işlemler üzerinde duracağım. Etiketlere Göre İlgili Yazılar Devam konusundaki inadım üzerine liquid’in array yapısı ile epey içli dışlı oldum. Öğrendiklerimi burada not alacağım. […] Doğru cevap: …

published on 18.05.2018

Pagination. Sayfalandırma. İsteğimiz her post için ‘önceki’ ve ‘sonraki’ postlara gidecek birer link oluşturmak ve bunu herhangi bir plugin kullanmadan yapmak. Aslında, postları tarihe göre sıralayıp önceki ve sonraki postlar için birer link ekleyeceğiz. Olduça basit bir iş. …

published on 01.07.2018

Oldukça uzun, bir o kadar da gerekliliği tartışılır kod parçasını paylaşmak üzereyim. Baştan söyleyelim, biraz döngüler dönecek if statementlar kontrol edilecek. Bunlara bağlı olarak, eğer blogunuzda çok post varsa build time kötü derecede etkilenecek. Ne kadar etkisi olur, 11 postluk blogta şu an …

published on 03.07.2018

Bu yazıda daha önce yazdığım Etiketlere Göre İlgili Yazılar konusundaki yapıyı eleştirip iyileştireceğiz. En azından başlangınçta öyle düşünüyordum. Kısaca hatırlayalım, ne yaptığımızı: […] Amaç: Tüm postlar arasından (all_posts) mevcut sayfanın etiketlerinden (page.tags) en az birine sahip …

published on 20.01.2019

Tag Cloud. Bloglarda karşımıza çıkan klişe yapı. Wordpress kullananlar automatic generate ediyorlardır, Jekyll için ise belki vardır plugin ama biz kendimiz oluşturacağız. Öncelikle tag-cloud.html adı altında bir include dosyası oluşturalım. Böylece daha sonra arşiv sayfasında, tag ya da post …

published on 20.01.2019

Bir postun altına, sıradaki N adet postun linkini nasıl ekleriz? Pagination, ama previous ile next yerine next N post. N, sizin seçeceğiniz bir sayı. Pagination adlı yazıda, önceki ve sonraki yazıları nasıl elde edeceğimizi anlatmıştım. Bir de uzunca ve build time kötü etkileyecek ama teoride …

published on 21.01.2019

Jekyll’da varsayılan olarak gelen yapıda tüm postları _posts/ klasörü altında tutarız. Post sayısı arttıkça postları gruplama, alt klasörlere bölme ihtiyacı duyabilirz. Jekyll hâlâ postları görecek ve site.posts değişkeni, _posts/ ve altındaki tüm alt dizinlerdeki tüm postları getirecektir. …

published on 21.01.2019

Jekyll’da dosyalara front-matter eklerken çoğunlukla tekrara düşebiliriz. Örneğin, birçok dosyaya aynı layoutu, layout: default, layout: post, kategoriyi category: your_category veya koleksiyonunuza özel belirlediğiniz custom attributeları eklerken benzer dosyaların herbirine, aynı satırları …

published on 27.01.2019

Sitemap, sitemap.xml dosyası, bir websitesinin içeriğinin gösterildiği modeldir. URL’lerden oluşur. Search enginelerin crawl botlarla siteyi dolaşabilmelerine yardımcı olur. Sitemap, crawler’ın tüm sayfaları indexleyeceğini garantilemez; ancak yine de büyük arama motorları sitemap …

published on 21.08.2020

Hugo için rss-feed-in-hugo yazısını paylaştıktan sonra fark ettim ki jekyll için yazmamışım. İki yol göstereceğim, birincisi eklenti ile ikincisi liquid kodu ile. […] Eklenti ile yapmak oldukça kolay. Gemfile’ınıza gem 'jekyll-feed' satırını ekleyin ve _config.yml dosyasına ise …

published on 10.11.2018

Run jekyll site: jekyll serve If you have gem files use the below code instead: bundle exec jekyll serve Parameters Usage -o open the site in browser -w watch –port port, to run multiple sites locally. jekyll serve -o -w --port 8000 jekyll serve -o -w --port 4000 This way you can run more than …