Veritabanındada tutsan genelde site bilgileri, dil bilgileri, ayar bilgileri gibi konularda cache kullanmanı öneririm, mümkün olduğunca select sorgusundan uzak durmalısın.
Örnek siteye kullanıcı girdi memcachede dil bilgisi yok süresi dolmuş sorgula al onu cacheye 12 saat veya 24 saat kalsın. Adminden güncelleme mi yaptın silip hemen tekrar cache mekanizmasını devreye sok.
Veritabanına dil ayarlarını kaydetmen bana göre daha mantıklıdır eğer çok dilli diyorsan şu şekilde olması muhtemel mimarin;
Yeni dil ekle => dil adı, dil ikonu, dil
Dile kelimeleri eşleştirme => default dil yanında yeni eklediğin dil ve içi boş inputlar olarak düşün solda Merhaba dünya sağda ise yeni dilin merhaba dünya karşılığı.
Dolayısıyla bu şekilde dinamik olarak bir çok dili ekletebilirsin ancak json yaparsan yeni dilde eklendiğinde uğraşırsın.
Ayrıca yeni bir içerik eklediğinde eklenmiş dilleri görebilir, ilgili içeriğin ilgili dil'in idsine eşleştirdiğinde o dilin içeriği var ise gösterebilirsin.
Son bir bilgide çok dilli sistemlerde artık içerik dili değiştiğinde url de değişiyor yapını buna göre yapmanı tavsiye ederim.
bu ne demek; Örnek
benimsitem.com/hakkimizda -
benimsitem.com/about-us Bu sayfalarda pek bişi fark etmez desenizde çok dilli bi e-ticaret sitesinde binlerce ürünün her ürüne özel ilgili dile uygun url olması büyük avantaj sağlar.