Terjemahkan kunci url ketika berpindah toko

8

Semoga orang bisa membantu saya dengan masalah yang saya hadapi.

Situasi:

Saya punya 1 situs web dalam 5 bahasa (misalnya example.com, example.com/it dll)

Masalah:

Sekarang saya punya example.com/about-us dan example.com/it/about-us. Jelas saya ingin versi Italia menjadi seperti: example.com/it/chi-siamo.

Saya telah mencoba menerjemahkan pengidentifikasi dan menautkannya dalam kategori produk untuk mengatakan "chi-siamo". Masalahnya adalah jika Anda mencoba untuk beralih ke bahasa yang berbeda dibutuhkan pengenal itu.

Misalnya: Saya saat ini di example.com/it/chi-siamo tapi saya ingin beralih ke versi Jerman, yang seharusnya example.com/de/ueber-uns. Jika saya beralih dari bahasa Italia ke bahasa Jerman menggunakan pengalih bahasa, saya dapat: example.com/de/chi-siamo. Yang memberi 404 .

Apa solusinya?

el_machine
sumber

Jawaban:

4

Tidak ada solusi. Magento tidak mendukung itu.

Saya menulis sebuah modul yang memeriksa pengidentifikasi dan melihat terjemahan dalam konfigurasi, kemudian membuat pengalihan.

Jadi, Anda memiliki dua opsi:

  1. pilih satu bahasa dan gunakan untuk semuanya - jangan terjemahkan url
  2. mengimplementasikan beberapa modul yang melakukan apa yang Anda inginkan.

Alih-alih menjelaskan cara membuat modul ini lihat ini: https://github.com/klein0r/magento-language-routes

Fabian Blechschmidt
sumber
2
Pikiran berbagi modul Anda?
Simon
Maaf, saya tidak diizinkan, jika saya mau :)
Fabian Blechschmidt
@FabianBlechschmidt dapat Anda jelaskan lebih lanjut. Saya ingin mengembangkan modul ini. Anda memasukkan url toko lain di laman cms untuk setiap tampilan toko?
jrosell
1
menambahkan tautan ke modul yang harus menyelesaikan masalah, jika tidak memberi tahu saya, maka saya akan menjelaskan lebih dalam bagaimana menerapkannya.
Fabian Blechschmidt
1
Terima kasih. Saya menemukan modul ini yang saya pikir saya bisa beradaptasi. github.com/tzyganu/CmsRewrites
jrosell
2

Saya berasumsi bahwa kelima bahasa Anda masing-masing memiliki tampilan toko sendiri. Jika demikian, Anda dapat menerapkan ini menggunakan Katalog> Manajemen Penulisan Ulang URL untuk produk - satu untuk masing store_id- masing - dan kemudian memperluas Mage_Catalog_Model_Product_Url::getUrluntuk mencari penulisan ulang khusus toko dan menggunakannya request_pathbukan sebagai default.

fantastis
sumber
Ya saya menggunakan tampilan toko yang berbeda. Karena saya sedikit Magento nooby, saya tidak yakin apa yang Anda maksud. Maukah Anda memberi saya panduan langkah demi langkah :) Akan luar biasa.
el_machine
Saya tidak melihat masalah ini di halaman produk tetapi di halaman cms.
jrosell
1

Anda seharusnya tidak melakukannya.

  1. ia menambahkan lapisan lain dalam pemrosesan url. Memberikan kemungkinan kesalahan dan hambatan kinerja.

  2. beralih bahasa menjadi jauh lebih sulit, karena Anda tidak hanya perlu menautkan ke pengidentifikasi bahasa lain, Anda juga perlu mengambil URL yang benar untuk setiap bahasa (untuk kasus Anda memiliki saklar bahasa di situs Anda)

  3. hampir tidak ada manfaatnya. Banyak browser hari ini bahkan mulai menyembunyikan url lengkap, hanya menampilkan domain, atau bahkan hanya pengidentifikasi pada sertifikat ssl.

Flyingmana
sumber
Namun, untuk SEO masih penting menurut informasi saya?
Melvyn
0

Jika SEO adalah perhatian utama Anda, maka Anda cukup menggunakan atribut rel = "alternate" hreflang = "x" di header Anda untuk memberi tahu mesin pencari (Google) bahwa halaman yang dilihat adalah terjemahan tepat dari halaman lain.

Google tidak hanya akan mulai mengindeks halaman terjemahan Anda tetapi juga akan menghapus hukuman duplikat konten untuk bagian mana pun dari halaman yang tidak diterjemahkan.

Bagian pertama adalah bahasa dan kedua adalah negara ("it-it" Italia-Italia atau "de-ch" Jerman-Swiss) jika itu yang Anda targetkan. Juga selalu memiliki set default.

Contoh untuk dikemukakan:

<link rel="alternate" href="example.com/about-us" hreflang="x-default" />
<link rel="alternate" href="example.com/about-us" hreflang="en-us" />
<link rel="alternate" href="example.com/it/about-us" hreflang="it-it" /> 
<link rel="alternate" href="example.com/de/about-us" hreflang="pt-pt" />

Ini menjelaskannya dengan cukup baik:

https://support.google.com/webmasters/answer/189077?hl=id

https://moz.com/learn/seo/hreflang-tag

SamInMontreal
sumber