Instal terjemahan otomatis Linguise di Concrete CMS

Tabel Isi

Persyaratan teknis Concrete CMS

Terjemahan otomatis neural yang akan digunakan dengan Concrete CMS memerlukan penggunaan skrip PHP (dapat diunduh di bawah). Untuk menginstal skrip Linguise , Anda memerlukan persyaratan berikut:

  • Jalankan PHP 7.3+
  • Apache, Server IIS, NGINX
  • Pastikan penulisan ulang URL diaktifkan di server Anda
  • Concrete CMS 9 dan di atasnya

1. Hasilkan Kunci API

Setelah Anda terhubung atau mendaftar ke dasbor Linguise , Anda perlu menyiapkan domain baru terlebih dahulu dan menyimpan pengaturannya untuk mendapatkan Kunci API.

Anda dapat memilih platform “PHP Lainnya” untuk melanjutkan pendaftaran domain Linguise , seperti dokumentasi ini dan bahasa sumber serta tujuan.

Pengaturan platform situs web dan bahasa terjemahan

Setelah itu, Anda akan mendapatkan:

  • Kunci API yang memvalidasi keanggotaan Anda
  • Tautan ke skrip Linguise untuk pengalih bahasa
Tangkapan layar halaman web dengan video tentang menerjemahkan situs web

Kunci API adalah yang dibutuhkan untuk mengaktifkan terjemahan di situs web Concrete CMS Anda. Pada dasarnya, kunci API akan memeriksa bahasa apa yang diaktifkan di domain Anda dan memungkinkan terjemahan konten secara otomatis.

Untuk saat ini, Anda dapat menyalin Kunci API dan menyimpannya di clipboard Anda.

2. Unggah dan hubungkan skrip terjemahan Linguise

Skrip terjemahan Linguise perlu diunggah ke server tempat Concrete CMS terinstal. Unduh di sini.

Setelah skrip diunduh, ekstrak file tersebut dan unggah ke folder utama tempat Concrete CMS diinstal.

  • Pastikan file tersebut ditempatkan di level root situs web Anda (tempat Concrete CMS berada).
  • Pastikan folder tersebut tetap menggunakan nama default linguise ”.

Bagaimana cara mengakses antarmuka Linguise Script?

Setelah menyelesaikan Linguise , Anda dapat mengakses dasbor dengan mengunjungi situs web Anda menggunakan format URL berikut
linguise https://www.domain.com/linguise

Ubah alamat domain sesuai dengan alamat situs web Anda*
Pastikan Linguise memiliki izin baca dan tulis yang tepat*

Atur Kata Sandi dan Koneksi Basis Data

Setelah Anda mengakses antarmuka skrip, Anda akan diperhadapkan dengan layar pengaturan tempat Anda dapat membuat kata sandi dan terhubung ke basis data pilihan Anda.

Anda dapat:

  • Tetapkan kata sandi, yang akan diperlukan untuk akses ke antarmuka ini di masa mendatang.
  • Pilih jenis basis data Anda — baik MySQL atau SQLite, tergantung pada pengaturan dan preferensi Anda.

Pengaturan awal ini memastikan akses yang aman dan memungkinkan Anda untuk mengkonfigurasi skrip sesuai dengan lingkungan Anda.

Koneksi basis data MySQL

Jika Anda memilih MySQL, antarmuka yang berbeda akan muncul dan meminta detail koneksi berikut dari Kolom Konfigurasi MySQL di bawah ini:

Pastikan informasi yang dimasukkan sudah benar agar koneksi ke database MySQL Anda berhasil. 

MySQL vs SQLite – Apa Perbedaannya?
Baik MySQL maupun SQLite adalah sistem basis data populer yang digunakan untuk menyimpan dan mengelola data untuk situs web dan aplikasi. Namun, keduanya dirancang untuk kasus penggunaan yang berbeda dan memiliki beberapa perbedaan utama:

FiturSQLiteMySQL
PengaturanSangat mudah (diperlukan instalasi SQLite)Membutuhkan pengaturan server
PenyimpananBerbaris satu per satuDikelola oleh server MySQL
KinerjaCocok untuk aplikasi skala kecilLebih cocok untuk sistem besar dengan lalu lintas tinggi
Kasus penggunaanAplikasi lokal, pengujian, situs kecilAplikasi web, e-commerce, sistem perusahaan

Antarmuka Skrip Linguise : Pengaturan untuk platform PHP

Dasbor terjemahan Linguise , yang sebelumnya hanya tersedia untuk Joomla dan WordPress, kini memperluas dukungannya ke PHP dan platform tambahan. Pembaruan ini memungkinkan pengguna untuk mengkonfigurasi pengaturan bahasa dengan mudah—seperti opsi tampilan, gaya bendera, dan penyesuaian tampilan—langsung dari antarmuka terpadu, terlepas dari CMS atau kerangka kerja yang mereka gunakan.

antarmuka api

Administrator dapat mengelola pengaturan Linguise dengan lebih efisien, dengan fitur-fitur yang konsisten seperti popup pemilihan bahasa, efek bayangan, dan varian pilihan bendera khusus wilayah. Dasbor mempertahankan desain yang ramah pengguna sambil menawarkan kompatibilitas yang lebih luas untuk berbagai lingkungan web.

antarmuka tampilan
tampilan-antarmuka
KAMI MEMAHAMI BAHWA KONFIGURASI URL DAN PENGGANTI BAHASA AGAK TEKNIS; TETAPI KABAR BAIK! KAMI MENAWARKAN INSTALASI GRATIS

3. Menyiapkan penulisan ulang URL Concrete CMS

Secara default, penulisan ulang URL aktif di Concrete CMS. Jika tidak, Anda dapat mengaktifkannya dari penyedia hosting Anda.

URL berdasarkan bahasa perlu dikonfigurasi di file .htaccess. Cukup salin kode di bawah ini setelah kode RewriteEngine on Concrete CMS bawaan .htaccess.

				
					<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
</IfModule>
				
			

Terakhir , Concrete CMS seharusnya terlihat seperti ini:

				
					<IfModule mod_rewrite.c>
    RewriteEngine On
    
    RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ /concretee/linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME}/index.html !-f
    RewriteCond %{REQUEST_FILENAME}/index.php !-f
    RewriteRule . /concretee/index.php [L]
</IfModule>

				
			

Sekarang Anda dapat memuat semua halaman terjemahan Anda menggunakan URL, misalnya: www.concretewebsite.com/fr/

Sekarang mari kita buka pengalih bahasa.

KAMI MEMAHAMI BAHWA KONFIGURASI URL DAN PENGGANTI BAHASA AGAK TEKNIS; TETAPI KABAR BAIK! KAMI MENAWARKAN INSTALASI GRATIS

4. Aktifkan pengalih bahasa

4.1 Memuat skrip Linguise JS

Tautan skrip Linguise JS perlu dimuat di semua halaman Concrete CMS Anda agar pengalih bahasa dengan flag dan URL alternatif dapat ditampilkan di header HTML Anda (untuk tujuan SEO).

Untuk menyalin tautan skrip, dari dasbor Linguise buka pengaturan domain dan salin tautan skrip tersebut.

Grafik yang menggambarkan langkah-langkah untuk menginstal modul. Grafik menunjukkan garis putus-putus biru yang naik.

Cara termudah untuk memuat kode ini di Concrete CMS adalah dengan menambahkannya di dalam file header.php atau kode.

Anda dapat mengaturnya dengan mengikuti langkah-langkah berikut: Akses panel Admin , lalu di sisi kanan, buka Sistem & Pengaturan > SEO & Statistik > Kode Pelacakan . Secara default, Anda dapat menggunakan metode ini.

Namun, jika Anda menggunakan tema yang berbeda dari tema bawaan, Anda perlu memasukkan kode tersebut ke dalam file header.php , yang dapat ditemukan di folder tema .

Edit file skrip untuk menyertakan tautan skrip di bagian header seperti di bawah ini.

skrip-dalam-Concrete-cms

Pengalih bahasa akan ditampilkan secara default di posisi kanan atas yang mengambang di situs web Anda. Anda dapat menyesuaikannya seperti yang dijelaskan di bab berikutnya.

pengalih bahasa CMS beton

Catatan penting SEO: Jumlah bahasa yang Anda atur sangat berpengaruh pada SEO. Saat Anda mengatur bahasa terjemahan, jika Anda memiliki banyak halaman yang terindeks (>500), mesin pencari mungkin membutuhkan waktu lama untuk memprosesnya. Hal ini dapat memengaruhi SEO Anda dalam bahasa asli. Karena itu, kami merekomendasikan untuk menambahkan maksimal 5 bahasa terlebih dahulu, kemudian setelah terindeks, Anda dapat menambahkan bahasa secara bertahap, masing-masing 3 bahasa per bulan.

Atur pemilih bahasa

Pengalih bahasa dapat disesuaikan dari dasbor Linguise > Pengaturan > Tampilan bendera bahasa. Setiap perubahan di sini akan tercermin di situs web.

Tangkapan layar yang menunjukkan menu tarik-turun untuk memilih pengaturan bahasa dengan opsi bahasa Inggris.

Di sisi kanan layar, Anda dapat melihat pratinjau pengalih bahasa. Berikut adalah elemen-elemen yang dapat Anda atur:

  • 3 tata letak: berdampingan, tarik-turun atau munculan
  • Posisi pengalih bahasa
  • Konten pengalih bahasa
  • Nama-nama bahasa dalam bahasa Inggris atau bahasa asli
  • Bentuk dan ukuran bendera
  • Warna dan bayangan kotak

Muat pengalih bahasa di konten Concrete CMS

posisi bendera di tempat

Untuk menampilkan pengalih bahasa di tempat tertentu dalam Concrete CMS , Anda harus mengatur posisinya sebagai “Di tempat”.
Setelah Anda mengatur posisinya di Linguise , Anda dapat menambahkan kode pendek di bawah ini untuk menyertakannya. Klik kode di bawah ini untuk menyalinnya ke clipboard Anda.

				
					<div>&#091;linguise&#093;</div>
				
			

Setelah ditambahkan, di bagian frontend Anda akan melihat nama bendera dan bahasa ditampilkan di area HTML tempat Anda menambahkan kode tersebut.

Aktifkan opsi sistem cache lokal

Sebagai pilihan, Anda dapat mengaktifkan sistem cache lokal yang menyimpan URL dan konten multibahasa terkait untuk mempercepat penyajian halaman. Cache lokal akan menghemat transfer data antara server Linguise dan server situs web Anda. Cache hanya digunakan ketika sebuah halaman telah diterjemahkan dan belum diperbarui. Cache yang diprioritaskan adalah cache dari halaman multibahasa yang paling banyak dilihat.

Sebagai pelengkap, Anda dapat menentukan jumlah cache yang disimpan dalam MB. Pada contoh berikut, cache diaktifkan dan jumlah cache yang akan disimpan adalah 500 MB.

Contoh kode konfigurasi terjemahan Laravel . Konfigurasi untuk mengatur terjemahan.
				
					    /** Basic configuration **/
    public $cache_enabled = true;
    public $cache_max_size = 500; // In megabyte
				
			

Terjemahan otomatis pada server NGINX

Tambahkan baris yang sesuai dengan CMS Anda di blok konfigurasi server NGINX Anda.
Pengaturan ini harus dilakukan sebelum pengalihan lainnya, terutama pengalihan di file utama PHP Anda.
				
					rewrite ^/(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ /linguise/linguise.php?linguise_language=$1&original_url=$2 last;
				
			

Terjemahan otomatis pada server Windows IIS

Tambahkan baris yang sesuai dengan pembuat situs web Anda di file Web.config Anda.
Baris ini harus diatur sebelum pengalihan lainnya, terutama pengalihan ke file utama PHP Anda:

				
					<rule name="Linguise" stopProcessing="true">
<match url="^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$" ignoreCase="false" />
        <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
            <action type="Rewrite" url="linguise/linguise.php?linguise_language={R:1}&amp;original_url={R:2}" appendQueryString="true" />
</rule>
				
			

Dari SQLite ke MySQL

Masih di dalam Configuration.php terdapat pengaturan untuk memaksa penggunaan MySQL sebagai pengganti SQLite, jika SQLite tidak terpasang di server.

Dalam hal ini, Anda perlu mengisi informasi MySQL di bagian ini pada file Configuration.php:

				
					    /** Advanced database configuration **/
    /*
     *  In case you don't want to use Sqlite, you can use MySQL
     *  To do so, you need to fill the following variables
     *  Linguise will create the tables for you
     */
    public static $db_host = '';
    public static $db_user = '';
    public static $db_password = '';
    public static $db_name = '';
    public static $db_prefix = '';