Saya ingin mengonfigurasi situs Magento agar dapat mengenali bahasa default dan lokasi pengguna dan menampilkan situs dalam bahasa itu dan dengan lokalisasi yang sesuai.
Sebagai contoh:
Seorang pengguna dari Rusia dengan bahasa Rusia sebagai default akan langsung pergi ke situs web Bahasa Rusia dengan Rubel sebagai mata uang dan harga default.
Apakah ini mungkin? Kalau begitu bagaimana?
sumber
Ada ekstensi Magento GeoIP (ditulis oleh saya) yang mengunduh file data MaxMind terbaru dan secara berkala memperbaruinya.
Saya sarankan mengaitkan ke
controller_front_init_before
acara. Anda dapat menggunakan kode berikut untuk memeriksa mendapatkan kode ISO 3166-1 dari negara pengunjung dan kemudian mengarahkannya ke tampilan toko koresponden jika Anda memilikinya:Artikel terperinci tentang penggunaan ekstensi ini dapat ditemukan di sini .
sumber
lihat http://www.thefutureoftheweb.com/blog/use-accept-language-header jika Anda dapat memprogram. Anda bisa beralih di
index.php
memuat tampilan toko yang sesuai untuk bahasa.sumber
Satu hal yang perlu dilihat adalah GEO IP.
Beberapa baris kode akan memberi Anda kode negara pengguna, yang dapat Anda alihkan berdasarkan itu.
Tetapi perhatikan bahwa Anda akan memiliki masalah menggunakan kode berbasis redirection jika Anda menggunakan toko yang sama dengan Edisi Perusahaan dan Cache Halaman Penuh ketika klik halaman pertama di-cache .
sumber
Vary: Accept-Language
di header untuk browser dan FPC.Pilihan lain adalah menggunakan konfigurasi auto_preprogram PHP . Ini akan menyebabkan semua skrip yang ditangani oleh PHP menjalankan skrip sebelum skrip yang diminta berjalan, tetapi setelah .htaccess (jika Anda menggunakannya).
Pendekatan ini dikombinasikan dengan beberapa saran lain (misalnya menggunakan MaxMind untuk data lokasi geografis dan menyimpan tampilan untuk wilayah tertentu) dapat menghasilkan pendekatan yang agak bersih.
Jika Anda menjalankan versi Magento> = 1.4, kode toko default dapat dikonfigurasikan dengan mengatur nilai $ _SERVER ['MAGE_RUN_CODE'].
Baik dalam file .htaccess atau konfigurasi apache tambahkan yang berikut ini:
php_value auto_prepend_file /var/www/mystore/path/to/script.php
Dalam
script.php
menjalankan logika bisnis yang diperlukan dan tetapkan kode toko yang sesuai:Satu hal yang perlu diperhatikan adalah ini akan berlaku untuk semua file PHP yang diminta, jadi Anda harus mengingatnya.
sumber