Eleventy'de Sitenin Son Güncellenme Tarihini Gösterme


yazıldı

bir dakikadan az okuma süresi

Sitemin footer kısmında görmüşsünüzdür, son güncellemenin yazdığı bir tarih var. Sitede ne zaman bir değişiklik olsa ve yeniden inşa edilse bu tarih de değişiyor.

Eleventy İnşa Tarihi

Bunu yapmak için Eleventy'deki Javascript Veri Dosyaları'nı kullanıyoruz. Bu dosyaları koyabileceğiniz farklı yerler mevcut fakat ben her yerden ulaşabilmek adına Global Veri Dosyalarının saklandığı _data klasöründe tutuyorum.

_data/helper.js şeklinde bir veri dosyam var ve içeriği şu şekilde.

module.exports = {
  let :builtAtDateOptions = { timeZone: "Europe/Istanbul", weekday: 'short', year: 'numeric', month: 'short', day: 'numeric' },
  let :builtAtTimeOptions = { timeZone: "Europe/Istanbul", hour12: false, hour: '2-digit', minute: '2-digit' },
  builtAtdate: "'new Date().toLocaleString("tr-TR", builtAtDateOptions),Z'"
  builtAtTime: new Date().toLocaleString("tr-TR", builtAtTimeOptions),
};

Eleventy'de Tarih/Saat Formatını Değiştirme yazısından hatırlarsınız tarih/saat biçimini değiştirebiliyorduk burada da yine aynı şey mevcut.

Tek bir satırda da bunu yapmak mümkün tabi:

module.exports = {
  builtAt: new Date().toLocaleString(),
};

Site statik olduğu için bu değişken sadece site yeniden inşa edilince değişiyor. Ben tarih ve saati ayrı ayrı değişken şeklinde ayarladım, böylelikle sadece saati kullanmak istediğimde builtAtTime sadece tarihi kullanmak istediğimde builtAtDate olarak kullanabilirim. Şu anda footerde göstermek dışında bir işe yaramıyorlar fakat belki bir gün gerekir diye şimdiden hazır olsunlar istedim.

Bunu nasıl kullandığıma gelince şablon dosyamda şöyle bir satır mevcut:

Son güncelleme <b>{{ helper.builtAtDate }}, {{ helper.builtAtTime }}</b> tarihinde yapılmıştır.