[magento] 在用户登录后显示价格 登录前不显示价格

隐藏价格:

修改文件路径:app/design/frontend/default/default/template/catalog/product/price.phtml
在第一个条件判断“<?php if (!$_product->isGrouped()): ?>”之前加上

<?php if (Mage::getSingleton('customer/session')->isLoggedIn()) { ?>

在文件最后加上

<?php } ?>

隐藏  “添加到购物车” 按钮: 

修改文件路径 app/design/frontend/default/default/template/catalog/product/list.phtml

<?php if($_product->isSaleable()): ?>
                    <button class="form-button" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><?php echo $this->__('Add to Cart') ?></span></button>
                <?php else: ?>
                <div class="out-of-stock"><?php echo $this->__('Out of stock') ?></div>
                <?php endif; ?>

 

在这段代码前加上登录条件判读

<?php if (Mage::getSingleton('customer/session')->isLoggedIn()) { ?>

在button 代码段后面加上

<?php } ?>

magento 有两个产品展示模式,上面是列表模式 另一个是下面将要说的网格模式:

修改文件路径:app/design/frontend/default/default/template/catalog/product/view.phtml

 <div class="add-to-holder">

                    <?php if($_product->isSaleable()): ?>
                        <?php echo $this->getChildHtml('addtocart') ?>
                        <?php if( $this->helper('wishlist')->isAllow() || $_compareUrl=$this->helper('catalog/product_compare')->getAddUrl($_product)): ?>
                            <span class="add-or"><?php // echo $this->__('OR') ?></span>
                        <?php endif; ?>
                    <?php endif; ?>
                    <?php echo $this->getChildHtml('addto') ?>
                </div>

在这段代码前加上登录条件判读

<?php if (Mage::getSingleton('customer/session')->isLoggedIn()) { ?>

在button 代码段后面加上

<?php } ?>

如果你的产品有阶梯价格,你要做相同的修改到下面路径的其它文件中,我觉得你可以在这个目录中查找相关文件

 

app/design/frontend/default/default/template/catalog/product/

 

文档参考原文:http://www.magentocommerce.com/boards/viewthread/22673/

550 total views, 4 views today

Revisions

There are no revisions for this post.

No comments yet.

发表评论