我在荷蘭有一個網站。 http://www.domain.com和德國國旗按鈕http://www.domain.com/german。Magento語言按鈕存儲視圖
我已經用當地語言德語製作了一個名爲德語的商店視圖。 如何查看鏈接www.domain.com/german上的此店鋪視圖
我在荷蘭有一個網站。 http://www.domain.com和德國國旗按鈕http://www.domain.com/german。Magento語言按鈕存儲視圖
我已經用當地語言德語製作了一個名爲德語的商店視圖。 如何查看鏈接www.domain.com/german上的此店鋪視圖
有幾種方法可以做到這一點。
1)在URL中啓用商店代碼。
Magento允許您將商店視圖的商店代碼添加到URL。例如,如果您的荷蘭商店視圖有代碼dutch
,而您的德國商店視圖有代碼german
,則Magento會自動加載正確的商店。 domain.com/dutch
將加載荷蘭語版本,domain.com/german
將加載您的網站的德語版本。此解決方案的缺點是即使對於主域添加了商店代碼。
可以在管理面板(即後臺,BO)>系統>配置> Web> Url選項中找到配置設置。你會發現「添加商店代碼到URL」選項。
2)編輯.htaccess
文件。
如果你想避免解決方案的缺陷1)你可以修改你的主文件.htaccess
。添加一個條目,將搜索/german
後綴,並將加載德國商店代碼。這裏有一個小例子(我不是這方面的專家,但它應該是這樣的):
SetEnvIf Host .*domain.com/german.* MAGE_RUN_CODE="german"
可以玩弄.htaccess
更多。搜索網絡,如果你想了解更多關於.htaccess
的東西。
3)修改應用程序
這是非常相似的解決方案2),但你直接在PHP這樣做的index.php
。查找的index.php
$mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';
線和像這樣的東西替代它:
if (!$_SERVER['MAGE_RUN_CODE'] && strpos($_SERVER['HTTP_HOST'], '/german') !== false) {
$mageRunCode = 'german';
} else {
$mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';
}
4)添加新條目到Apache虛擬主機。
爲域domain.com/german
創建一個新的虛擬主機(vhost),並將其放在那裏SetEnv MAGE_RUN_CODE "german"
。
在我看來最好的選擇是2)。這是最靈活的,你不必更改任何代碼。對於開發工作站4)也是足夠的。
請注意,這些僅僅是示例,它們可能不適用於第一次拍攝。我從記憶中寫下這些,現在我無法真正檢查它們。希望這給你一個簡單的想法如何處理你的情況。