如何在Magento PHP生成列表之间添加HTML

时间:2013-04-14 16:20:43

标签: php magento

我有这个清单:

enter image description here

我想在蓝色链接之间添加“|”字符。

但是,列表项由PHP在以下代码中生成:

<ul class="links pull-right"<?php if($this->getName()): ?> id="<?php echo $this->getName() ?>"<?php endif;?>>
    <?php foreach($_links as $_link): ?>
        <?php if ($_link instanceof Mage_Core_Block_Abstract):?>
            <?php echo $_link->toHtml() ?>
        <?php else: ?>
            <li<?php if($_link->getIsFirst()||$_link->getIsLast()): ?> class="<?php if($_link->getIsFirst()): ?>first<?php endif; ?><?php if($_link->getIsLast()): ?> last<?php endif; ?>"<?php endif; ?> <?php echo $_link->getLiParams() ?>><?php echo $_link->getBeforeText() ?><a href="<?php echo $_link->getUrl() ?>" title="<?php echo $_link->getTitle() ?>" <?php echo $_link->getAParams() ?>><?php echo $_link->getLabel() ?></a><?php echo $_link->getAfterText() ?></li>
        <?php endif;?> |   //----------- the | character was added here ---------------
    <?php endforeach; ?>
</ul>

问题是:

  1. PHP用于每个循环和|字符也被添加到最后一个链接。
  2. 我想在我的页面上的其他位置定位“登录”。有没有办法分离最后一个列表项并将其放在别处呢?
  3. 非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

1: 使用$_link->getIsLast()。检查它是否不是最后一个 - &gt;添加分隔符。

<ul class="links pull-right"<?php if($this->getName()): ?> id="<?php echo $this->getName() ?>"<?php endif;?>>
    <?php foreach($_links as $_link): ?>
        <?php if ($_link instanceof Mage_Core_Block_Abstract):?>
            <?php echo $_link->toHtml() ?>
        <?php else: ?>
            <li<?php if($_link->getIsFirst()||$_link->getIsLast()): ?> class="<?php if($_link->getIsFirst()): ?>first<?php endif; ?><?php if($_link->getIsLast()): ?> last<?php endif; ?>"<?php endif; ?> <?php echo $_link->getLiParams() ?>><?php echo $_link->getBeforeText() ?><a href="<?php echo $_link->getUrl() ?>" title="<?php echo $_link->getTitle() ?>" <?php echo $_link->getAParams() ?>><?php echo $_link->getLabel() ?></a><?php echo $_link->getAfterText() ?></li>
        <?php endif;?> 
        <?php if (! $_link->getIsLast()):?>|<?php endif;?>   //----------- the | character was added here ---------------
    <?php endforeach; ?>
</ul>

应该工作。

修改 对于2号: 不是100%肯定。可能必须禁用该链接,然后手动将其/块的URL添加到您的布局/ .phtml。

由于链接生成是自动生成的,因此您必须禁用该链接,然后调用$something->getUrl() SIMILAR <a href="<?php echo $this->getUrl('wishlist') ?>">Wishlist</a> 发件人: Magento add wishlist_link to different block?