Featured image by Paul Hanoka.

Beberapa waktu lalu, semua website BINUS SCHOOL diharuskan memiliki fitur multi bahasa. Saat itu saya yang mendapat tugas untuk menerapkan fitur multi bahasa di website BINUS SCHOOL. Fyi, semua website BINUS SCHOOL menggunakan CMS WordPress sebagai engine websitenya. Sementara WordPress sendiri tidak memfasilitasi fitur multi bahasa, melainkan dengan memberikan pilihan solusi salah satunya berupa penggunaan plugin-plugin yang dibuat oleh komunitas.

https://wordpress.org/support/article/multilingual-wordpress/

Sebelum menentukan solusi apa yang saya gunakan, saya terlebih dahulu mengidentifikasi kebutuhan dari website BINUS SCHOOL sendiri. Beberapa kebutuhannya adalah:

  1. Setiap bahasa mempunyai URL sendiri, ada 3 website berarti terdapat 3 URL baru.
  2. Pemberian nama domain harus bertipe subdirectory atau nama di belakang nama domain, contoh: binus.ac.id/nama-subdir.
  3. Tutur bahasa harus baik dan benar. Karena kami adalah institusi pendidikan dan memiliki orang yang dapat melakukan translasi bahasa.
  4. Terkadang ada posting khusus yang hanya ada pada beberapa bahasa. Maksudnya setiap bahasa bisa berbeda maksud kontennya, tidak sekedar translasi bahasa saja.
  5. Dari programmer sendiri (saya), hanya memiliki waktu yang sedikit yaitu hanya 1 minggu. Sehingga proses development sendiri harus yang tergolong mudah.

Dan berikut beberapa pilihan yang dapat digunakan atau pun ditawarkan oleh WordPress adalah sebagai berikut:

  1. Google Translate
  2. Satu bahasa, satu posting
  3. Install plugin multi bahasa seperti WPGlobus, Polylang, qTranslate-X, dan sebagainya
  4. Multi instalasi WordPress
  5. WordPress Multisite

Mari bahas satu persatu.

Google Translate
Menggunakan Google Translate akan sangat memudahkan pembuat konten karena konten akan secara otomatis ditranslasi oleh Google Translate. Namun, translasi dari Google Translate masih belum sempurna, di beberapa kata atau kalimat masih belum tepat translasinya. Ini bukan pilihan yang baik mengingat kebutuhan website adalah harus mempunyai tutur bahasa yang baik dan benar.

Satu Bahasa, Satu Posting
Masing-masing bahasa mempunyai URL nya masing-masing. Jika menggunakan solusi ini maka harus membuatkan filter tambahan (pilih bahasa) agar sistem tahu bahasa apa yang digunakan pada konten. Lalu untuk menampilkannya pun membutuhkan upaya tambahan untuk memfilter konten bahasa apa yang akan ditampilkan.

Selain itu juga, arsitektur website menjadi lebih rumit karena ada beberapa konten website yang datanya statis, dan perlu diubah berdasarkan bahasa yang dipilih oleh user. Sehingga akan banyak sekali filter yang harus dilakukan.

Install Plugin Multi Bahasa
Solusi selanjutnya adalah install plugin Multi Bahasa. Solusi ini sangat baik mengingat plugin yang tersedia dibuat oleh programmer-programmer hebat. Tapi yang menjadi kendala adalah:

  1. Karena ini adalah buatan orang lain maka perlu mempelajari dahulu bagaimana cara mengintegrasikan dengan theme WordPress yang dibuat.
  2. Sejalan dengan poin satu, jika ada tambahan fitur khusus di masa depan yang tidak di fasilitasi oleh plugin maka ada kemungkinan saya perlu mempelajari struktur pluginnya atau kemungkinan membongkar plugin tersebut.
  3. Sama dengan solusi Satu Bahasa, Satu Posting, kendala nya adalah struktur website menjadi lebih rumit karena perlu tambahan (banyak) filter yang dilakukan.

Multi Instalasi WordPress
Solusi ini adalah salah satu cara yang paling aman dibandingkan 3 solusi sebelumnya. Namun, dengan solusi ini berarti saya perlu membuat 3 instalasi WordPress baru karena ada 3 website yang harus ditambahkan fitur multi bahasa. Hal tersebut hanya akan menambah resource yang perlu dijaga atau dikelola.

WordPress Multisite
Solusi yang terakhir adalah dengan menggunakan fitur yang disediakan oleh WordPress yaitu fitur Multisite. Fitur ini memungkinkan satu instalasi WordPress dapat memiliki banyak website dengan membuatkan URL berupa subdomain maupun subdirectory (nama di belakang nama domain, contoh: binus.ac.id/nama-subdir).

https://wordpress.org/support/article/create-a-network/

Solusi ini mirip dengan solusi Multi Instalasi WordPress, tapi hanya butuh 1 instalasi WordPress saja. Dan solusi ini yang akhirnya dipilih karena beberapa hal, yaitu:

  1. Yang sudah disebutkan sebelumnya, mudah untuk membuatkan subdirectory untuk masing-masing bahasa yang dibutuhkan.
  2. Development yang mudah karena setiap bahasa bisa memakai theme yang sama. Filter yang dibutuhkan untuk penyesuaian pun tidak terlalu banyak. Atau pilihan lain dengan mengcopy theme yang sudah ada dan mengganti konten-konten statis dengan bahasa yang akan digunakan.
  3. Setiap bahasa akan memiliki website dan halaman adminnya sendiri sehingga tutur bahasa dapat terjaga.
  4. Aman jika ada penambahan fitur khusus di kemudian hari karena source code adalah hasil kerja sendiri sehingga tidak banyak belajar lagi jika ada perubahan / pengembangan.

Seperti itu cara saya dalam menerapkan fitur Multi Bahasa di Website BINUS SCHOOL. Hasilnya dapat dilihat pada link berikut:

http://simprug.binus.sch.id/
http://simprug.binus.sch.id/id/

Terima kasih.