将自定义类添加到wishlist顶部链接

时间:2014-12-12 15:35:38

标签: php css xml magento templates

我想在心愿单链接中添加一个自定义类来进行样式化。

我尝试将wishlist.xml更改为:

<reference name="top.links">

        <block type="wishlist/links" name="wishlist_link" />
        <action method="addLinkBlock"><blockName>wishlist_link</blockName><prepare/><liParams>class="test"</liParams><position>10</position></action>
    </reference>

但是没有设置类

我也尝试将代码/核心/ Mage / Wishlist / Block / Links.php更改为:

protected function _toHtml()
{
    if ($this->helper('wishlist')->isAllow()) {
        $text = $this->_createLabel($this->_getItemCount());
        $this->_label = $text;
        $this->_title = $text;
        $this->_aParams = 'class="test"';
        $this->_url = $this->getUrl('wishlist');
        return parent::_toHtml();
    }
    return '';
}

但是它还没有设置。

这是我的links.phtml文件:

<?php $_links = $this->getLinks(); ?>
<?php if(count($_links)>0): ?>
<ul class="links"<?php if($this->getName()): ?> id="<?php echo $this->getName() ?>"<?php endif;?>>
<?php $i=0; ?>
<?php foreach($_links as $_link): ?>
    <?php if ($_link instanceof Mage_Core_Block_Abstract):?>
        <?php echo $_link->toHtml() ;?>
    <?php else: ?>
        <?php $i++; ?>
        <li class="<?php if($_link->getIsFirst()): ?>first<?php elseif($_link->getIsLast()): ?>last<?php else: ?>menu<?=$i?><?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 endforeach; ?>

结果,心愿单是唯一没有课程的顶级链接。

1 个答案:

答案 0 :(得分:4)

有趣的是,从来没有对此进行测试,但尝试它并不需要花费太多费用;)

在你的布局文件中:

<reference name="wishlist_link">
    <action method="setAParams">
        <param><![CDATA[class="myclass"]]></param>
    </action>
</reference>