Takeaways Key
Langkah pertama untuk pengantarabangsaan untuk tema anda adalah untuk membuat tema. Anda boleh memulakan, dalam contoh ini dengan mencipta tema kanak -kanak tema TwentySeventeen. Untuk membuat tema kanak-kanak, mula-mula buat folder WP-Content/Tema/WPInternationLizationTheMe. Dalam folder ini tambahkan gaya.css fail dengan kandungan berikut:
<span>/* </span><span> Theme Name: wpinternationlizationtheme </span><span> Description: Twenty Seventeen Child Theme. </span><span> Author: Abbas Suterwala </span><span> Author URI: http://example.com </span><span> Template: twentyseventeen </span><span> Version: 1.0.0 </span><span> Text Domain: wpinternationlizationtheme </span><span>*/ </span>
Fail ini mentakrifkan tema kanak -kanak dengan nama wpInternationLizationTheMe. Ini adalah tema kanak -kanak TwentySeventeen. Di atas, setiap bidang adalah bidang standard yang kami tentukan untuk tema kanak -kanak. Domain teks medan adalah medan yang mentakrifkan nama unik untuk domain teks tema ini. Tema ini harus memuatkan fail terjemahan dengan kunci ini sebagai pengenal unik.
Buat fungsi.php dengan kod berikut
<span><span><?php </span></span><span><span>function wpinternationlizationtheme_enqueue_styles() { </span></span><span> </span><span> <span>$parent_style = 'parent-style'; </span></span><span> </span><span> <span>wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' ); </span></span><span> <span>wp_enqueue_style( 'child-style', </span></span><span> <span>get_stylesheet_directory_uri() . '/style.css', </span></span><span> <span>array( $parent_style ), </span></span><span> <span>wp_get_theme()->get('Version') </span></span><span> <span>); </span></span><span><span>} </span></span><span><span>add_action( 'wp_enqueue_scripts', 'wpinternationlizationtheme_enqueue_styles' ); </span></span><span> </span><span><span>?></span> </span>
Kod di atas memuat tema induk (iaitu dua belas dalam kes ini) gaya. Kemudian gaya dari tema kanak -kanak dimuatkan.
Ini membolehkan gaya tema kanak -kanak menjadi orang yang dimuatkan terakhir, dan boleh disesuaikan dengan keperluan tema kanak -kanak. Sekarang anda ingin memuatkan domain teks, yang bermaksud menunjukkan di mana WordPress akan mencari terjemahan untuk tema ini. Anda boleh memuatkan domain teks tema menggunakan fungsi WordPress LOAD_THEME_TEXTDOMAIN.
untuk berbuat demikian, tambahkan kod berikut ke fungsi anda.php:
<span>function wpinternationlizationtheme_setup(){ </span> <span>$domain = 'wpinternationlizationtheme'; </span> <span>// wp-content/languages/wpinternationlizationtheme/de_DE.mo </span> <span>load_theme_textdomain( $domain, trailingslashit( WP_LANG_DIR ) . $domain ); </span> <span>// wp-content/themes/wpinternationlizationtheme/languages/de_DE.mo </span> <span>load_theme_textdomain( $domain, get_stylesheet_directory() . '/languages' ); </span> <span>// wp-content/themes/wpinternationlizationtheme/languages/de_DE.mo </span> <span>load_theme_textdomain( $domain, get_template_directory() . '/languages' ); </span><span>} </span><span>add_action( 'after_setup_theme', 'wpinternationlizationtheme_setup' ); </span>
kod di atas cangkuk sehingga tindakan after_setup_theme. Mengenai tindakan itu, anda memuatkan domain teks untuk tema. Ini dilakukan dengan menggunakan fungsi LOAD_THEME_TEXTDORAIN. Fungsi ini adalah persediaan untuk mencari fail .mo dalam direktori berikut:
- Languages directory - Child theme directory - Parent theme directory
Sebaik sahaja anda telah menubuhkan domain teks, lihat fungsi yang boleh anda gunakan untuk pengantarabangsaan di WordPress. Terdapat dua fungsi yang boleh anda gunakan. Yang pertama ialah __. Fungsi ini mengambil dua hujah, yang pertama adalah rentetan dan domain kedua. Fungsi ini kemudian mengembalikan rentetan setempat yang ditetapkan berdasarkan bahasa yang dipilih.
Jadi jika anda ingin menambah beberapa teks pada akhir setiap jawatan, tetapi juga mahu ini disetempatkan berdasarkan bahasa pilih, tambahkan kod berikut ke fungsi anda.php:
<span>function wpinternationlizationtheme_after($content) { </span> <span>return $content . __('Read more', 'wpinternationlizationtheme'); </span><span>} </span><span>add_filter('the_content', 'wpinternationlizationtheme_after'); </span>
Fungsi lain ialah _e. Ini mengambil dua hujah yang sama seperti __. Fungsi ini memaparkan teks setempat secara langsung pada halaman dan bukan hanya mengembalikannya.
Jadi, sebagai contoh, jika anda ingin menambah mesej footer yang harus dipaparkan setempat, maka anda harus membuat footer.php dengan kandungan berikut:
<span>/* </span><span> Theme Name: wpinternationlizationtheme </span><span> Description: Twenty Seventeen Child Theme. </span><span> Author: Abbas Suterwala </span><span> Author URI: http://example.com </span><span> Template: twentyseventeen </span><span> Version: 1.0.0 </span><span> Text Domain: wpinternationlizationtheme </span><span>*/ </span>
Sebaik sahaja anda telah membuat kod yang diperlukan untuk pengantarabangsaan, anda akan mahu membuat fail penyetempatan. Terdapat banyak alat yang tersedia untuk membuat fail .mo. Dalam artikel ini, anda akan melihat salah satu yang popular, PoEdit. Anda boleh memuat turun poEdit untuk sistem operasi anda dari https://poedit.net/download.
Sebaik sahaja anda telah memuat turun poEdit, anda boleh memilih 'File-> New Catalog' untuk melihat skrin berikut:
Di skrin ini, anda boleh memasukkan maklumat asas mengenai projek ini. Tab seterusnya adalah untuk memberi laluan kod yang perlu dihuraikan untuk mencari rentetan yang perlu dilokalkan, seperti yang ditunjukkan di bawah:
Tab seterusnya membolehkan anda memasukkan kata kunci yang perlu dicari untuk mendapatkan semua rentetan yang memerlukan penyetempatan. Seperti yang telah anda gunakan dua fungsi __ dan _e dalam contoh di atas, tambahkan kedua -dua mereka di tab ini.
Sebaik sahaja anda telah melakukan ini, alat ini akan mencari semua rentetan yang memerlukan penyetempatan seperti yang ditunjukkan dalam imej di bawah.
Anda kini boleh menambah penyetempatan untuk setiap rentetan dan kemudian klik 'Simpan' untuk menyimpan fail di WP-Content/Tema/WPInternationLizationTheMe/Languages/Fr_Fr.Mo
Sekarang, akhirnya, jika anda menukar bahasa ke 'Perancis', anda harus melihat rentetan anda dilokalkan dalam bahasa Perancis di tapak utama.
WordPress adalah salah satu platform CMS yang paling popular. Anda boleh belajar tentang pembangunan tema WordPress dengan mudah. Pengguna laman web yang dibuat pada tema WordPress sangat luas dan pelbagai. Oleh itu, keperluan mendesak untuk tema anda mempunyai pelbagai bahasa yang tersedia. Di banyak industri, ia benar -benar diperlukan untuk laman web WordPress anda untuk dapat memenuhi khalayak di kawasan dan negara yang berbeza.
Membuat tema anda siap untuk pengantarabangsaan boleh menjadi faktor utama untuk berjaya. API WordPress untuk pengantarabangsaan mudah digunakan. Ia menjadikannya sangat mudah untuk menyetempatkan tema anda tanpa mengubah mana -mana fail kod. Oleh itu, bersenang -senang mengantaraikan tema WordPress seterusnya, dan beritahu kami tentang pengalaman anda dalam komen di bawah!
Antarabangsa tema WordPress adalah penting untuk mencapai khalayak global. Ia membolehkan laman web anda diterjemahkan ke dalam bahasa yang berbeza, menjadikannya mudah diakses oleh pengguna di seluruh dunia. Ini bukan sahaja meningkatkan pengalaman pengguna tetapi juga meningkatkan penglihatan dan jangkauan tapak anda. Dengan mengantarabangsakan tema anda, anda boleh memenuhi khalayak yang pelbagai dan mengembangkan perniagaan anda secara global. Itu membolehkan WordPress membezakan antara semua terjemahan yang dimuatkan. Ia pada dasarnya mengendalikan tema anda dan digunakan bersempena dengan fungsi __ () atau _e () untuk menjadikan tema anda diterjemahkan. Tanpa domain teks, WordPress tidak akan mengetahui terjemahan mana yang akan dimuatkan untuk tema tertentu, menjadikan pengantarabangsaan tidak mungkin. beberapa langkah. Pertama, anda perlu menyediakan tema anda untuk terjemahan dengan membungkus semua teks dalam fungsi getText. Seterusnya, anda perlu membuat fail .pot, yang merupakan fail templat yang mengandungi semua teks yang boleh diterjemahkan. Kemudian, anda perlu menterjemahkan tema anda menggunakan fail .po, yang merupakan fail objek mudah alih yang mengandungi terjemahan sebenar. Akhirnya, anda perlu memuatkan domain teks untuk memberitahu WordPress yang diterjemahkan untuk digunakan. Fail ini mengandungi semua teks yang diterjemahkan dari tema anda dan terjemahannya yang sepadan. Anda boleh menggunakan editor terjemahan seperti PoEdit untuk membuka fail .po dan tambahkan terjemahan anda. Sebaik sahaja anda selesai, anda boleh menyimpan fail dengan lanjutan .mo, yang merupakan fail objek mesin yang boleh dibaca oleh WordPress. >
Beberapa isu biasa yang dihadapi semasa pengantarabangsaan tema WordPress termasuk domain teks yang hilang, nama domain teks yang salah, dan teks yang tidak diterjemahkan. Isu -isu ini boleh menghalang tema anda daripada diterjemahkan sepenuhnya. Untuk mengelakkan isu -isu ini, pastikan untuk memasukkan domain teks dalam semua fungsi getText, gunakan nama domain teks yang betul, dan bungkus semua teks dalam fungsi gettext. >Anda boleh menguji pengantarabangsaan tema WordPress anda dengan menukar bahasa pemasangan WordPress anda. Jika tema anda diubahsuai dengan betul, anda harus melihat teks yang diterjemahkan dalam tema anda. Anda juga boleh menggunakan alat seperti Plugin Semak Tema WordPress, yang boleh menyemak tema anda untuk isu pengantarabangsaan yang sama.
Untuk membuat bahasa RTL tema WordPress anda serasi, anda perlu membuat fail RTL.CSS dalam direktori tema anda. Fail ini harus mengandungi semua peraturan CSS yang diperlukan untuk membalikkan susun atur tema anda untuk bahasa RTL. WordPress secara automatik akan memuatkan fail ini apabila bahasa laman web ditetapkan ke bahasa RTL. Proses ini sama dengan mengantarabsanisasi tema induk. Walau bagaimanapun, anda perlu menggunakan domain teks tema induk dalam fungsi getText anda dan memuatkan domain teks dalam fail tema anak anda.
Atas ialah kandungan terperinci Pengantarabangsaan untuk tema WordPress anda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!