Magento的。 保存访客店选择在饼干(Magento. Save visitor store

2019-10-17 06:58发布

我需要检查,如果游客是第一次在网站上,并显示出与国家的选择(店)块。 然后我需要保存游客选择在cookie中(我只是认为这是正确的,它保存在cookie中)。 也许有人这样做,和\或能帮忙吗?

谢谢。

Answer 1:

当出现在页面检查用户如果土地设置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重定向由于头部已输出的错误..

希望这会给你一些想法,以及如何使用cookies..but就像我说我想有这样做的更好的方法。 我很高兴看到这样做的正确的方式自己是诚实的,所以我可以利用它。



文章来源: Magento. Save visitor store choice in cookies