k2模板中,不同页面的自定义字段引用方式

之前我有写过一篇关于k2的自定义字段的文章《K2自定义字段的定制输出》,主要是讲述在k2模板中的文章页面的自定义字段的定制输出方法。那么如果想在k2的分类页面或者标签页面中显示自定义字段,又该怎么做呢?

一、文章页面的引用(item.php)

<?php if($this->item->params->get('itemRelated') && isset($this->relatedItems)): ?>
<?php foreach ($this->item->extra_fields as $key=>$extraField): ?>
<div class="<?php echo ($key%2) ? "odd" : "even"; ?>">
<?php if ($extraField->id==23):?>
<p><?php echo $extraField->name; ?></p>
<p><?php echo $extraField->value; ?></p>
<?php endif; ?>
</div>
<?php endforeach; ?>
<?php endif; ?>

二、分类列表中的引用(category_item.php)

 <?php if($this->item->params->get('catItemExtraFields') && count($this->item->extra_fields)): ?> 
<?php foreach ($this->item->extra_fields as $extraField): ?>
<?php if ($extraField->id==2):?>
<p><?php echo $extraField->value; ?></p>
<?php endif; ?>
<?php endforeach; ?>
<?php endif; ?>

三、标签列表中的引用(tag.php)

<?php if($item->params->get('tagItemExtraFields',0) && count($item->extra_fields)): ?>
<?php foreach ($item->extra_fields as $extraField): ?>
<?php if ($extraField->id==23):?>
<p><?php echo $extraField->value; ?></p>
<?php endif; ?>
<?php endforeach; ?>
<?php endif; ?>

注意区分他们的函数的区别,用错了就显示不了数据。