Yerelleştirme
Liman eklenti paketlerinizde farklı dil desteği sağlamak için yapmanız gereken işlemler.

Yerelleştirme nedir?

Yerelleştirme, yazılım geliştirme sürecinde, içeriklerin (kitaplar, filmler, Ağ Sayfaları), süreçlerin, ürünlerin ve özellikle bilgisayar yazılımlarının (Software) belirli bir coğrafyaya ya da etnik topluluğa özgü pazar ya da coğrafi bölgede (ülke, bölge ya da etnik gruplar) geçerli yerel dilsel ve kültürel özelliklere uyarlanmasıdır.
Bu sözcüğün İngilizcesi olan localization (Amerikan İngilizcesi) ya da localisation (İngiltere) yazılım geliştiriciler tarafından L10N şeklinde kısaltılmıştır. 10 rakamı L ile N harfleri arasında kalan harflerin sayısını gösterir. Yerelleştirmenin karşıt anlamına gelen I18N ise internationalization için kullanılır.)

Nasıl yapılır?

Liman üzerinde yerelleştirme yapabilmek için sağladığımız yardımcı fonksiyonlar mevcuttur. Bu yardımcı fonksiyon diğer PHP projelerinizden de hakim olabileceğiniz üzerine double underscore fonksiyonudur. __() şeklinde tanımlanır.

Blade içerisinde yerelleştirme

main.blade.php
1
{{ __("Türkçe string") }}
Copied!
Blade viewları üzerinde yerelleştirme yaparken yukarıdaki görüntüyü kullanırız. Çifte süslü parantez kullanımının içerisinde yerelleştirme fonksiyonunu çağırabiliriz.

Javascript üzerinde yerelleştirme

Liman eklentileri üzerinde yerelleştirmeyi sağlayabilmek ve PHP'den gelen veriye göre değişken script gösterimi yapabilmek için yine Blade kullanıyoruz. Örnek eklentimizde görebileceğiniz üzere her tab için ayrı bir scripts.blade.php dosyası tanımlanmaktadır. Yine de bizim temel olarak "Yükleniyor..." yazısında kullandığımız örneği görelim.
scripts.blade.php
1
showSwal("{{__('Yükleniyor...')}}", 'info', 2000);
Copied!

Çevirileri oluşturma

Çeviriler için eklenti klasörünüzdeki lang klasörünü kullanmaktayız. Türkçe girdiğimiz stringler için en.json dosyası üzerinde key olarak Türkçe stringin kendisini, diğer tarafa da İngilizce çevirisini eklemeliyiz. Örnek olarak kendi eklentiniz içerisindeki en.json dosyasını inceleyebilirsiniz.
en.json
1
{
2
"Sandbox Elemanları": "Sandbox Components",
3
"Kullanıcı Ayarları": "Kullanıcı Ayarları",
4
"Grup Ayarları": "Grup Ayarları",
5
"Merhaba Dünya!": "Hello World!",
6
"Hostname Değiştir": "Change Hostname",
7
"Durdur": "Stop",
8
"Task çalıştırılıyor...": "Running task...",
9
"Görev İşleniyor": "Executing Task"
10
}
Copied!
Last modified 3mo ago