Premium WordPress temaları ve eklentileri geliştirirken, onları standart olarak yerelleştirilebilir yapmanız oldukça gereklidir. Bu sayede tema kullanıcısı, temalarını kolaylıkla çevirebilir ve böylece tema tüm dillerde kullanılabilir.

Bugünkü dersimizde,size bir WordPress temasına çeviri ve yerelleştirme desteğinin nasıl ekleneceğini ve .po ve .mo çeviri dosyalarının kolaylıkla nasıl oluşturulacağını göstermek istiyorum.


1: Textdomain Temasını Yükleme

Öncelikle functions.php dosyanızın içinde load_theme_textdomain() fonksiyonunu eklemeniz gerekir. Bu fonksiyon temanızın kök dizinlerinde locale.mo dosyanızı arayarak temanızın çevrilmiş metinlerini yükler.

Ayrıca .mo ve .po dosyalarının, temanızın dizininde ‘languages’ adlı ayrı bir klasörde  tutulduğunu farkedeceksinizdir. Eğer bu klasör yoksa, onu oluşturmanız veya fonksiyondaki klasör yolunu değiştirmeniz gerekir.


if ( !function_exists( 'yourprefix_theme_setup' ) ) {
	function yourprefix_theme_setup(){
	    // Load The Textdomain
	    load_theme_textdomain('themename', get_template_directory() . '/languages');
	    // Include Translations
	    $locale = get_locale();
	    $locale_file = get_template_directory() . "/languages/$locale.php";
	    if ( is_readable( $locale_file ) ) {
	    	require_once( $locale_file );
	    }
	}
}
add_action('after_setup_theme', 'yourprefix_theme_setup');


2: Metninizi Çevirin

WordPress’te metinde hardcoding(kodu doğrudan programın içine yazma) kaçınılması gereken bir durumdur ve metni İngilizce’den istenen başka bir dile çevirmeyi imkansız kılacaktır. WordPress sitenize metin eklemek istediğinizde, her zaman metni çeviri için işaretleyen, kurulu dört WordPress fonksiyonundan birini kullanmalısınız.


__('Çevirilecek Metin','tema adı');

Standart çeviri fonksiyonu, basitçe çevrilmiş metninizi getirir.

_e('Çevirilecek Metin','tema adı');

Aynen yukarıdaki fonksiyon gibi, ancak çevrilmiş metninizi getirmek yerine yazdırır.

_n('Çevirilecek Metin','tema adı');

Metninizin çoğul kullandığı durumlarda kullanılır, bu genellikle blogunuz yorum bölümünde, yorum sayısını listelerken kullanılır.

_x('Çevirilecek Metin','tema adı');

Bu fonksiyon, bir fiil ile isimi ayırt etmeyi sağladığından, çevirmenler için oldukça kullanışlıdır. İngilizce’den çevirirken oldukça faydalı.

3: POEdit ile Dil Dosyalarınızı Oluşturun

Tema metniniz, yukarıdaki WordPress çeviri fonksiyonları ile düzgünce işaretlenir işaretlenmez, dil dosyalarınızı oluşturmaya hazırsınız demektir. Bu iş için POEdit adli bir uygulama kullanacağız. POEdit’i çalıştırdığımızda, tüm WordPress dosyalarını tarayacak ve çeviri için işaretlenmiş metinleri çekecektir.

Çeviri bilgisi toplanacak ve temanızın dizininde languages klasörünün altında yeni oluşturulmuş veya güncellenmiş bir .pot dosyasında tutulacaktır.

4: POEdit’i WordPress ile Kullanmak

POEdit’i açın ve ‘File -> New Catalog’ a tıklayın. ‘Translation Properties’ sekmesinin altına proje detaylarınızı girin.

WordPress-Tema-Turkcelestirme-1

‘Sources Paths’ sekmesine tıklayın ve base path detaylarını girin.  Çevirimizi ‘languages’ klasörü altında tuttuğumuzdan, bizim base path ‘../’ şeklinde olacak.

WordPress-Tema-Turkcelestirme-2

‘Sources keywords’ sekmesine tıklayın, burada dört WordPress çeviri fonksiyonunu girmemiz gerekiyor. Bu sayede POEdit çeviri için gerekli metinleri çekebilecek.

WordPress-Tema-Turkcelestirme-3

default.po dosyasını languages klasörünün altına kaydedin.

WordPress-Tema-Turkcelestirme-4

5: Dosyalarınızı çevirmek

Dosyaları tarayıp, languages klasörünü çeviri metni ile güncellemek için POEdit’i kullandığım zaman, çeviri işlemini daha da kolay hale getirmek için kullanışlı bir WordPress eklentisi kullanıyorum.

Bu işlem için Codestyling Localization eklentisini kullanın, indirin ve temanızda aktive edin. Aktive edildikten sonra Tools -> Localization’ a gidip ‘Add New Language’ e tıklayın.

WordPress-Tema-Turkcelestirme-5

Dilinizi seçin ve eklenti temayı tarasın,  tarama tamamlandıktan sonra, siz veya bir çevirmen her metin satırına bakarak, metnin uygun çevirilmiş karşılığını ekleyebilir.

WordPress-Tema-Turkcelestirme-6

Sonuç Olarak

WordPress temalarınızı ve eklentilerinizi çeviriye hazır hale getirmenin oldukça kolay olduğunu ve eğer tema oluşturucusu, temayı standart çeviri fonksiyonelliği ile oluşturduysa, temayı çevirmenin daha da kolay olduğunu göreceksiniz.

Önceleri, POEdit’e düzgünce tarattırıp, gerekli çeviri metinlerimi kaydettirmem bir kaç denememi aldı, ama alıştıktan sonra oldukça kolaydı.


Referanslar

http://codex.wordpress.org/Translating_WordPress
http://codex.wordpress.org/Function_Reference/load_theme_textdomain
http://www.poedit.net/download.php

  • Çok teşekkürler. POEdit ile sadece eklenti Türkçeleştiriyoruz sanıyordum 🙂

  • Tüm dosyaları tek tek açıp Türkçeleştirme yaptığım günler geldi aklıma. Başarılı bir anlatım olmuş teşekkür ederim.

  • https://www.transifex.com/ isimli bir siteden yukarıda anlattığınız tüm işlemleri gerçiekleştirebiliyorsunuz. hatta kayıt olup daha öncebir tema çevrilmişse indirebuluyorsunuz.

  • Güzel bilgiler. WordPress ile uğraşanlar için çok faydalı olacağını düşünüyorum.

  • ellerinize sağlık denedim ve çok güzel sonuçlar aldım.

  • Bu konu üzerine okadar fake başlıklar varki, resimli anlatımı görünce dahi inanmadım, ancak adım adım uygulayınca sonucu aldım, herkese tavsiye ederim. Teşekkürler Admin, hakkını helal et.

  • artık istediğim ingilizce temayı türkçeleştirebileceğim işte bu harika!

  • Başarılı bir anlatım olmuş teşekkür ederim.

  • Başarılı bir anlatım olmuş teşekkür ederim.