我想在我的自定義html塊中重定向到特定的URL。Magento從HTML塊中重定向
我嘗試:
SetEnvIf之後主機www.myurl.dev MAGE_RUN_CODE =基本
SetEnvIf之後主機WWW:
class Mage_Page_Block_Html_World extends Mage_Core_Block_Template {
function __construct()
{
$i = 0;
parent::__construct();
$this->setTemplate('page/html/world.phtml');
$this->setCookie();
}
public function setCookie()
{
$lang = $this->getLanguageCode();
if(isset($_GET['country'])) {
$country = $_GET['country'];
Mage::getModel('core/cookie')->set('country', $country);
} else {
$country = Mage::getModel('core/cookie')->get('country');
}
/*Redirect to cookie url*/
if($country) {
try {
$url = "http://myurl.dev/".$country."/";
Mage::app()->getFrontController()->getResponse()->setRedirect($url);
} catch (Exception $e) {
echo 'Exception: ', $e->getMessage(), "\n";
}
}
}
因爲我在我的.htaccess使用使用MultiStore的配置。 myurl.dev MAGE_RUN_TYPE =網站
SetEnvIf之後主機^ myurl.dev MAGE_RUN_CODE =基本
SetEnvIf之後主機^ myurl.dev MAGE_RUN_TYPE =網站
SetEnvIf之後主機www.myurl1.dev MAGE_RUN_CODE = VS
SetEnvIf之後主機www.myurl1.dev MAGE_RUN_TYPE =網站
SetEnvIf之後主機^ myurl1.dev MAGE_RUN_CODE = VS
SetEnvIf之後主機^ myurl1.dev MAGE_RUN_TYPE =網站
該問題: 有了這個重定向我得到錯誤310:太多的重定向。 我無法弄清楚如何解決這個問題。
試圖解釋爲什麼你這樣做然後其他人可以建議如何做到這一點,也許理解你爲什麼失敗 – 2012-07-16 09:48:15
這個邏輯應該是在一個控制器,而不是在一個塊。 – Nick 2012-07-16 10:25:30
爲什麼我這樣做:我有一個登陸頁面,用戶可以選擇他們的語言。語言代碼存儲在cookie中,如果用戶再次輸入基本網址,用戶將被重定向到正確的商店。 html塊通過getChildHtml('world')加載到我的自定義模板文件中。 我用我的phtml文件中的一個小小的javascript解決了這個問題,但是如果s.o.知道一個解決方案,在這個HTML塊做到這一點,我會apprechiate它。 – s4lfish 2012-07-16 10:28:40