【教程】相关标签如何跨模型调用数据

Mada 9月前 317

比如文章模型某文章有标签 【侠客游】。

游戏模型(mid=3)某游戏有标签 【侠客游】。

在文章内容页 article_show.htm 通过 【侠客游】 调用游戏数据。指定 mid="3",调用游戏模型数据。

 

{block:taglike type="1" mid="3" limit="5" dateformat="Y-m-d"}
{if:$data[list]}
<div class="row" style="margin-top: 10px;">
	<section>
		<div class="thleftcon">
			<div class="thleftbt thwenzhang"><span>{$data[tag_name]}</span></div>
			<ul class="th-5">
				{loop:$data[list] $v}
				<li><a href="{$v[url]}" title="{$v[title]}" target="_blank">{$v[subject]}</a></li>
				{/loop}
			</ul>
		</div>
	</section>
</div>
{/if}
{/block}

 

lecms\block\block_taglike.lib.php找到代码:

// 读取内容ID

$run->cms_content_tag_data->table = 'cms_'.$table.'_tag_data';

在该代码上面加入代码如下:

 

//跨模型调用相同标签的数据?根据标签名找到指定模型的标签ID
if(isset($conf['mid']) && $conf['mid'] > 1 && $mid != $conf['mid'] && isset($run->_cfg['table_arr'][$conf['mid']])){
        $mid = $conf['mid'];
        $table = $run->_cfg['table_arr'][$conf['mid']];
        $run->cms_content_tag->table = 'cms_'.$table.'_tag';
        $tags = $run->cms_content_tag->find_fetch(array('name'=>$tag_name), array(), 0, 1);
        if(empty($tags)){
            return array('tag_name'=>$tag_name, 'tag_url'=>$tag_url, 'list'=> array());
        }else{
            $tags = current($tags);
            $tagid = $tags['tagid'];
            $tag_url = $run->cms_content->tag_url($mid, $tag_name, $tagid);
        }
}



最新回复 (1)
  • 多标签是否能用,比方说,文章列表有多个标签,标签1  标签2   标签3    这时会分别调用吗
返回
发新帖