ストアを切り替えるときにURLキーを翻訳する


8

私が直面しているこの問題を解決できることを願っています。

状況:

5つの言語のウェブサイトが1つあります(example.com、example.com / itなど)。

問題:

これで、example.com / about-usとexample.com/it/about-usができました。もちろん、イタリア語版はexample.com/it/chi-siamoのようにする必要があります。

私は識別子を翻訳し、それを製品カテゴリにリンクして「chi-siamo」と言ってみようと試みています。問題は、別の言語に切り替えようとすると、その識別子が使用されることです。

例:現在example.com/it/chi-siamoにいますが、ドイツ語版に切り替えたいので、example.com / de / ueber-unsにする必要があります。言語スイッチを使用してイタリア語からドイツ語に切り替える場合は、example.com / de / chi-siamoを取得します。これは404を与えます。

どのようなソリューションが必要ですか?

回答:


4

解決策はありません。Magentoはそれをサポートしていません。

識別子をチェックし、構成内の変換を調べるモジュールを書いた後、リダイレクトを行います。

したがって、2つのオプションがあります。

  1. 1つの言語を選択してすべてに使用する-URLを翻訳しない
  2. あなたが望むことをするいくつかのモジュールを実装します。

このモジュールを作成する方法を説明する代わりに、これを見てくださいhttps : //github.com/klein0r/magento-language-routes


2
モジュールを共有しますか?
Simon

申し訳ありませんが、許可されませんでした。許可された場合:)
Fabian Blechschmidt

@FabianBlechschmidtあなたはさらに説明することができます。このモジュールを開発したいと思います。ストアビューごとに他のストアのURLをcmsページで入力しますか?
jrosell

1
問題を解決するはずのモジュールへのリンクを追加しました。それが私に知らない場合は、これを実装する方法について詳しく説明します。
Fabian Blechschmidt、2015

1
ありがとう。私は私が適応できると思うこのモジュールを見つけました。github.com/tzyganu/CmsRewrites
jrosell

2

私はあなたの5つの言語がそれぞれ独自のストアビューを持っていると想定しています。その場合は、製品ごとにカタログ> URL書き換え管理を使用してこれを実装store_idし、拡張Mage_Catalog_Model_Product_Url::getUrlしてストア固有の書き換えを探しrequest_path、デフォルトの代わりにそれを使用することができます。


はい、さまざまなストアビューを使用しています。私は少しマゼントのヌービーなので、あなたの意味がよくわかりません。ステップバイステップのガイドを私にくれませんか:)素晴らしいでしょう。
el_machine

この問題は製品ページではなくcmsページで見られます。
-jrosell

1

あなたはそれをするべきではありません。

  1. URL処理に別のレイヤーを追加します。エラーやパフォーマンスのボトルネックが発生する可能性があります。

  2. 別の言語識別子にリンクする必要があるだけでなく、言語ごとに正しいURLをフェッチする必要があるため、言語の切り替えは非常に難しくなります(サイトで言語を切り替える場合)

  3. メリットはほとんどありません。今日の多くのブラウザは、完全なURLを隠し始め、ドメインのみ、またはssl証明書の識別子のみを表示しています。


それでも、私の情報によれば、SEOにとってそれはまだ重要ですか?
Melvyn

0

SEOが主な関心事である場合は、ヘッダーのrel = "alternate" hreflang = "x"属性を使用して、表示されているページが別のページの正確な翻訳であることを検索エンジン(Google)に伝える必要があります。

Googleは翻訳されたページのインデックス作成を開始するだけでなく、翻訳されていないページの一部に対する重複したコンテンツのペナルティも削除します。

最初の部分は言語で、もう1つは国( "it-it"イタリア語-イタリアまたは "de-ch"ドイツ語-スイス)です。それがターゲットの方法です。また、常にデフォルトのセットがあります。

頭に置く例:

<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" />

これはかなりよく説明しています:

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

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.