Saya telah menulis sistem multi-bahasa yang sederhana, dengan mengklik ikon bendera menetapkan cookie satu tahun yang berisi kode bahasa dua huruf (misalnya nl, de, dll).
Saya menghubungkan ke wp
tindakan untuk membaca nilai cookie, kemudian menggunakan the_title
dan the_content
filter untuk menunjukkan bahasa yang benar (berbagai bahasa dimasukkan melalui metabox pada halaman / posting layar edit).
Ini semua berfungsi dengan baik kecuali saya juga ingin memiliki permalink untuk setiap versi bahasa di mana kode bahasa dua huruf berada di antara nama domain dan struktur permalink yang biasa. Saya menggunakan %postname%
struktur permalink, jadi semua yang berikut ini akan valid:
http://example.com/nl/about-us
http://example.com/de
http://example.com/fr/2012/03
http://example.com/es/this-is-a-post-title
Jika bahasa saat ini adalah bahasa Inggris, maka tidak ada dua kode huruf yang harus digunakan (itu hanya akan menjadi permalink normal).
Sejauh ini saya telah menggunakan query_vars
filter untuk menambahkan permintaan yang disebut lang
, tetapi sejauh ini saya sudah, saya tidak yakin apa langkah selanjutnya. Setiap saran sangat dihargai!
sumber
Jawaban:
Pertanyaan Anda cukup rumit untuk dijawab sendiri, tetapi saya sarankan Anda untuk menginstal
qTranslate
plugin. Seperti yang dijelaskan oleh plugin plugin:Jadi Anda dapat mencoba memeriksa kode plugin dan melihat bagaimana mereka melakukannya, atau cukup gunakan saja.
sumber
Ini adalah filter yang saya gunakan:
sumber