Apa itu domain teks tema?

19

Saya menemukan bahwa setiap tema WordPress menggunakan fungsi ini, tetapi saya tidak mengerti apa tujuan dan apa fungsinya, dalam hal ini 'themify'? Berikut adalah beberapa contoh di Themify functions.php:

1).

load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );

2).

if (function_exists('register_nav_menus')) {
        register_nav_menus( array(
            'main-nav' => __( 'Main Navigation', 'themify' ),
            'footer-nav' => __( 'Footer Navigation', 'themify' ),
        ) );
    }

Dan dalam file tempate:

3). <?php _e( 'Sorry, nothing found.', 'themify' ); ?>

Dan masih banyak lagi! Keraguan saya adalah apa artinya 'themify'? Apa tujuan mereka Bisakah saya mengubahnya atau menghapusnya? Untuk apa tempatnya 'themify'?

Sok Vanrithy
sumber

Jawaban:

23

Dalam hal ini, 'themify'adalah domain teks yang ditentukan untuk Tema, yang digunakan untuk membuat Tema dapat diterjemahkan . (Referensi Codex:) load_theme_textdomain().

Mempersiapkan terjemahan Tema memerlukan beberapa langkah.

  1. Tentukan domain teks Tema :

    load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );
  2. Tentukan string yang dapat diterjemahkan dalam templat.

    Ini dilakukan dengan menggunakan salah satu dari beberapa fungsi terjemahan: __()(untuk string yang dikembalikan ), _e()(untuk string yang digaungkan ), dan _x()/ _ex()(untuk string konteks gettext ). Ada yang lain, tetapi Anda mendapatkan ide ...

    String teks statis, seperti <p>Hello world!</p>, dibungkus dengan fungsi terjemahan yang sesuai, seperti <p><?php _e( 'Hello World!', 'themify' ); ?></p>, untuk membuatnya tersedia untuk terjemahan.

  3. Hasilkan referensi file .mo / .po
    tentang cara mengedit file bahasa

Chip Bennett
sumber
@ SokVanrithy, lihat T&J ini untuk cara menangani .mo/.pofile. (Chip, saya belum menambahkan tautan ke dalam Jawaban Anda karena Anda mungkin memiliki rekomendasi lain :)
brasofilo
1
@brasofilo jangan ragu untuk menambahkannya jika Anda mau. Saya pikir itu di luar ruang lingkup untuk pertanyaan yang ditanyakan, tetapi masih informasi yang berguna.
Chip Bennett
Mengapa Anda mengubahnya? Apakah Anda forking the Theme?
Chip Bennett
Ya, saya ingin menyingkirkan mereka. Saya sudah mengunduh tema dari Webdesigndepot, dan itu panggilan base theme. Saya bertanya kepada penulis apakah saya dapat mengubah kode asli? Mereka diizinkan karena itu adalah tema dasar kosong untuk siapa yang ingin memiliki struktur untuk tema khusus. Selain itu, ini adalah hadiah dari penulis di sana untuk diberikan kepada pembaca. Keraguan saya seperti di atas!
Sok Vanrithy
1
Tentu, Anda bisa menyingkirkannya; tapi tidak ada ruginya meninggalkan mereka. Anda bahkan dapat mengubah textdomainke string yang berbeda, untuk referensi Tema bercabang Anda. Praktik terbaik pengembangan termasuk membuat Tema dapat diterjemahkan, jadi saya akan menyarankan untuk tidak menghapusnya sepenuhnya. Yang mengatakan, Anda pasti bisa , jika Anda mau.
Chip Bennett