我需要检查访问者是否是第一次在网站上显示与国家选择(商店)的区块。然后,我需要将访问者的选择保存在Cookie中(我认为将它保存在Cookie中是正确的)。也许有人这样做,或者可以帮忙?Magento。在Cookies中保存访客商店选择
谢谢。
我需要检查访问者是否是第一次在网站上显示与国家选择(商店)的区块。然后,我需要将访问者的选择保存在Cookie中(我认为将它保存在Cookie中是正确的)。也许有人这样做,或者可以帮忙?Magento。在Cookies中保存访客商店选择
谢谢。
当用户登录页面时,检查是否设置了cookie,然后根据cookie值重定向到商店视图。
我对magento很陌生,所以可能有更好的方法来做到这一点,但我需要类似的东西。
我在弹出窗口中有一个选择框,当用户登陆页面列出了所有的商店视图(这是在index.php中,只显示cookie未设置时),更改值表单提交,然后我做在head.php文件的底部以下
if(isset($_POST['selectbox'])){
$storeId = $_POST['selectbox'];
$store_url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB).$storeId;
$cookie = Mage::getModel('core/cookie');
$period = time()+86400;
$cookie->set('country', $storeId,$period, '/');
Mage::app()->getResponse()->setRedirect($store_url);
}
所以表单提交后,我抓起店内码值和设定一个cookie命名的国家,我然后重定向用户到特定的存储视图。
我当时也这段代码的下方另一个检查,看是否该国的cookie设置(以备下一次用户访问网站时)
if(isset($_COOKIE['country'])){
$storeId = $_COOKIE['country'];
$magento_store_id = Mage::app()->getStore()->getCode();
$redirect_to = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB).$storeId;
if($storeId != $magento_store_id)
{
echo "<script type='text/javascript'>window.location.href='".$redirect_to."';</script>";
}
我检查,看看是否当前存储代码不等于存储在cookie中的值,如果不存在,则将该用户重定向到正确的存储视图。我不得不使用JavaScript重定向,因为标题已经输出错误..
希望这会给你一些想法和如何使用cookie ..但就像我说我想象有一个更好的方式做到这一点。我很乐意看到正确的做法,我自己说实话,所以我可以利用它。
永远不会使用$ _POST ['selectbox']是Magento.It将绕过Magento的所有安全逻辑,因此将容易受到黑客攻击。 – oscprofessionals
嗨Satish,那该怎么办?你能否提供上述例子的修改后的代码,供其他人使用。谢谢 – iSrini