自动根据文章页面中的字段作为筛选条件输出k2 content模块文章

有时候我们会需要在一些文章页面中输出一些相关文章列表,K2默认也有相关文章的功能。

但是如果我们需要以自定义字段为筛选条件;又或者我们需要多组不同条件的相关文章功能,默认的相关文章功能就不能满足要求了。

修改modules/mod_k2_content/mod_k2_content.xml(不想修改的可以直接使用一些不用到的文本类型的参数,如itemCustomLinkTitle)

<params addpath="/administrator/components/com_k2/elements/">

下一行增加参数:

<param name="itemrentextraField" type="text" default="" label="ItemRentExtraField" description="Item Rent Extra Field"/>

保存

修改文章页面的模板文件(需要使用module anywhere 专业版的参数传导功能)

增加代码:

假设自定义字段的别名是daxia,模块的ID是43,分类ID(可选参数)是9,

{module 43|category_id=9|itemrentextraField=<?php echo $this->item->extraFields->daxia->value ; ?>}

修改模块模板文件

<?php if(count($items)): ?>
<?php foreach ($items as $key=>$item):    ?>
<?php foreach ($item->extra_fields as $extraField) {
if($item->extraFields->daxia->value != $params->get('itemrentextraField') ) {
continue 2;
}
} ?>
<?php echo $item->title;?>
<?php endforeach; ?>
<?php endif;?>