BU DERSİN BAŞLIKLARI
_ex( string $text, string $anlam_ipucu, string $textdomain = 'default' )
Açıklaması:
Bu fonksiyon, tercümanların, aynı texti farklı şekillerde tercüme edebilmesi için oluşturulmuş bir fonksiyondur. Yani, eş sesli kelimeleri, farklı metinlerde, farklı anlamlarda tercüme etmeyi mümkün kılan bir fonksiyondur.
Türkçeden örnek vermek gerekirse; “Yüz” kelimesi, her zaman aynı anlamı taşımaz. Bazen suda yüzmek, bazen bir insanın yüzü, bazen de bir sayı olan yüz anlamlarına gelir. İşte, “Yüz” kelimesinin, farklı anlamlarına göre tercüme edilebilmesini mümkün kılmak için, _ex()
fonksiyonunu kullanabiliriz.
_ex()
fonksiyonu ile _x()
fonksiyonu arasındaki tek fark _ex()
fonksiyonunun texti ekrana bastırması; _x()
fonksiyonunun ise text değerini döndürmesidir.
Aşağıdaki iki satır birbirine eşittir:
_ex('Yüz', 'Sayı olarak', 'textdomain');
echo _x('Yüz', 'Sayı olarak', 'textdomain');
Parametreleri:
$text
(Zorunludur.) Tercümeye hazır olmasını istediğimiz metindir.
$anlam_ipucu
(Zorunludur.) Kelimenin belli bir anlamı için ipucu niteliğinde bir texttir. Yani, kelimenin hangi anlamını kullandığımızı anlamak için, hatırlatıcı bir kelime ya da ifadedir.
$textdomain
Her temanın, diğer temalardan farklı bir textdomain değeri vardır. Textdomainler, WordPress’in, tema ya da eklentiye özgü tercümeleri saptayabilmesini sağlar, farklı temaların ya da eklentilerin tercümelerinin birbirine karışmasını engeller.
Varsayılan değeri 'default'
olarak ayarlanmıştır.
Temanıza özel bir $textdomain
değeri oluşturmayı öğrenmek için, Textdomain Parametresi başlığımızı okuyabilirsiniz.
Döndürdüğü değer:
Tercüme edilmiş olarak, $text parametresindeki ifadeyi ekrana bastırır.
Kaynak kodu:
Dizini : wp-includes/l10n.php
function _ex( $text, $context, $domain = 'default' ) {
echo _x( $text, $context, $domain );
}
Kullanımı:
Örnek-1
Aşağıda verilen örneklerde, “Yüz” kelimesini, iki farklı şekilde tercüme edilebilecek halde hazırladık:
'Birinci anlam: ' . _ex('Yüz', 'Sayı olarak', 'textdomain');
echo '<br>';
'İkinci anlam: ' . _ex('Yüz', 'Vücut bölümü olarak', 'textdomain');