magento cms页面并检查客户是否已登录

时间:2014-02-12 18:23:09

标签: magento

我有一个CMS页面,上面有下载链接。这就是我需要发生的事情:

  1. 如果用户已登录,请保留下载链接。
  2. 如果用户未登录,请更改链接的行为,使其成为注册链接。
  3. 我看到有布局更新xml我可以使用<customer_logged_in>并可能根据它更改该链接。如何在此cms页面中使用该布局更新xml以使链接不同?

    或者有更好的方法可以尝试吗?

1 个答案:

答案 0 :(得分:2)

更好的方法是使用自定义块创建。以下是如何实现自己想要的目标。

1)创建CMS页面,并在内容部分中包含您的自定义块

对于Ex:

{{block type="core/template" name="download_page" template="YourTemplateFolder/TemplateFileName.phtml"}}

2)检查客户是否已登录。

对于Ex:

 <?php if(!Mage::getSingleton('customer/session')->isLoggedIn()): ?> //If user is logged in
 <?php $downloadUrl = 'Your Download URL'; ?> //generate your download URL

    <div>
    <?php echo $downloadUrl; ?> // Allow user to download 
    </div>

    <?php else: ?>//If user is NOT logged in
    <?php $registerUrl = 'Your Register URL'; ?> //generate your register URL

    <div>
    <?php echo $registerUrl; ?> // Ask user to Register
    </div>

<?php endif; ?>