我使用现代主题中的tab.phtml来创建产品标签,但是我已经将其切换为使用jquery和jquery-ui,因为我需要直接链接到标签。
因此,在坚果壳中,代码与现代主题中的代码几乎相同。
<div id="tabs">
<ul>
<?php foreach ($this->getTabs() as $_index => $_tab): ?>
<?php if($this->getChildHtml($_tab['alias'])): ?>
<li class="<?php echo !$_index?' active first':(($_index==count($this->getTabs())-1)?' last':'')?>"><a href="#<?php echo $_tab['alias'] ?>"><?php echo $_tab['title']?></a></li>
<?php endif; ?>
<?php endforeach; ?>
</ul>
<div class="clearer"></div>
<?php foreach ($this->getTabs() as $_index => $_tab): ?>
<?php if($this->getChildHtml($_tab['alias'])): ?>
<div class="product-tabs-content" id="<?php echo $_tab['alias'] ?>"><?php echo $this->getChildHtml($_tab['alias']) ?></div>
<?php endif; ?>
<?php endforeach; ?>
</div>
并且我在catalog.xml下使用相同的方法添加自定义标签:
<action method="addTab" translate="title" module="catalog"><alias>how-to-use</alias><title>How to Use</title><block>catalog/product_view</block><template>catalog/product/view/how-to-use.phtml</template></action>
然而,我已经注意到标签&#39; upsells&#39;仅在分配了追加产品时出现。如果有要显示的内容,我想使用相同的功能来显示自定义产品属性。</ p>
所以我要问的是,加售会如何检测到没有分配产品,因此没有显示标签,所以我可以为我的自定义标签执行此操作。我的自定义标签phtml文件如下所示:
<?php $_howtouse = $this->getProduct()->getHowToUse(); ?>
<?php if ($_howtouse): ?>
<div class="std">
<?php echo $this->helper('catalog/output')->productAttribute($this->getProduct(), $_howtouse, 'howtouse') ?>
</div>
感谢任何帮助,谢谢:)
答案 0 :(得分:0)
upsell.phtml中的第一行代码控制外观:
<?php if(count($this->getItemCollection()->getItems())): ?>
我猜测你的代码只是评估为true并且总是显示该部分。您从$ this-&gt; getProduct() - &gt; getHowToUse()的输出是什么?
答案 1 :(得分:0)
原来我的上面有一行:
<?php $_howtouse = $this->getProduct()->getHowToUse(); ?>
这意味着它注册为有一些内容都是白色空间。 摆脱现在的空白。