修改Magento只允许登陆用户访问网站

修改Magento只允许登陆用户访问网站


修改Magento只允许登陆用户访问网站,未登录的用户提示必须登陆以后才能访问网站。
经过google查找资料一番。具体实现步骤如下:

一、在文件app/design/frontend/模板目录/layout/page.xml中

<layout version="0.1.0">
<!--
Default layout, loads most of the pages
-->
<default translate="label" module="page">
<label>All Pages</label>

<block type="page/html" name="root" output="toHtml" template="page/3columns.phtml">

的后面加上代码:大概37行

<block type="page/html" name="user-redirect" as="user-redirect" template="page/html/redirect.phtml"/>

二、创建一个redirect.phtml用来判断用户是否登陆

在目录 app/design/frontend/模板目录/template/page/html创建redirect.phtml.

redirect.phtml的内容为:

<?php
//Mage::getSingleton('customer/session')->setBeforeAuthUrl($this->getRequest()->getRequestUrl());
//这句注释掉
 if(!Mage::getSingleton('customer/session')->isLoggedIn()) 
{
 header("Status: 301");
 header('Location:'.Mage::getBaseUrl('web').'customer/account/login/') ;
 exit; 
}

 ?>

三、在app/design/frontend/模板目录/templatge/page下的页面文件(如果没有就是默认default或者base default)

1column.phtml
2columns-left.phtml
2columns-right.phtml
3columns.phtml
popup.phtml
print.phtml
中,在最前面加入代码

<?php
echo $this->getChildHtml('user-redirect');
?>

四、考虑到登录和注册页面是不需要跳转,所以在app/design/frontend/模板目录/layout/custom.xml中
标签
<customer_account_login translate=”label”>

………….

</customer_account_login>


<customer_account_create translate=”label”>

…………………

</customer_account_create>

加入代码
<remove name=”user-redirect” />

例如:

<!--
Layout for customer login page
-->

<customer_account_login translate="label">
<label>Customer Account Login Form</label>
<!-- Mage_Customer -->
<remove name="user-redirect" />
<remove name="right"/>
<remove name="left"/>

<reference name="root">
<action method="setTemplate"><template>page/1column.phtml</template></action>
</reference>
<reference name="content">
<block type="customer/form_login" name="customer_form_login" template="customer/form/login.phtml"/>
</reference>

</customer_account_login>

清楚网站缓存,刷新试试效果如何.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值