k2的相关文章(Related items)的图片显示设置

K2作为joomla的强大的内容组件,非常适用于产品展示的网站。

K2可以建立多种的产品模板,配合它的自定义字段会更加多可定制性。

而且其中的Related items功能也是非常实用,它是根据文章的标签(tag)来展示相关的文章。

但一般来说,相关文章只可以设置展示的文章数,并不可以显示文章图片。对于产品展示的网站,其实是有需要展示相关的产品,而以图片的形式展示。

修改k2模板的item.php的下面语句:

<?php if($this->item->params->get('itemRelated') && isset($this->relatedItems)): ?>
<!-- Related items by tag -->
<div class="itemRelated">
<h3><?php echo JText::_("Related items (by tag)"); ?></h3>
<ul>
<?php foreach($this->relatedItems as $key=>$item): ?>
<li class="<?php echo ($key%2) ? "odd" : "even"; ?>">
<a href="/<?php echo $item->link ?>"><?php echo $item->title; ?></a>
</li>
<?php endforeach; ?>
</ul>
<div class="clr"></div>
</div>
<?php endif; ?>

替换成:

<?php if($this->item->params->get('itemRelated') && isset($this->relatedItems)): ?>
<!-- Related items by tag -->
<div class="itemRelated">
<h3><?php echo JText::_("Related items (by tag)"); ?></h3>
<ul>
<?php foreach($this->relatedItems as $key=>$item): ?>
<li class="<?php echo ($key%2) ? "odd" : "even"; ?>">
<a href="/<?php echo $item->link ?>"><img src="/<?php echo JURI::root().'media/k2/items/cache/'.md5("Image".$item->id).'_S.jpg'; ?>" alt="<?php echo $item->title; ?>" /></a>
</li>
<?php endforeach; ?>
</ul>
<div class="clr"></div>
</div>
<?php endif; ?>

用下面的参数替换上面代码中的 _S.jpg 可以获得不同尺寸。

  • _XS.jpg
  • _S.jpg
  • _M.jpg
  • _L.jpg
  • _XL.jpg
  • _Generic.jpg

更新日期:2011年11月24日

此文章讨论的是K2 2.4版本,在K2 2.5版本已经默认支持相关文章显示图片