基本使用
sql
参数只支持php变量
传递模式
{php $sql= " tid=1 and title like '%极致cms%' ";/}
{loop table="article" sql="$sql" limit="10" as="v"}
{/loop}
假设要执行一个多条件查询,比如like
操作,根据当前文章的关键词查询相关文章
已知当前文章内容中,关键词变量为{$jz['keywords']}
,示例:极致cms,建站
要做一个通用的精准相关文章查询,查询标题与关键词相关
{php
//判断是否存在关键词
if($jz['keywords']){
$kys = explode(',',$jz['keywords']);//拆分每个关键词
$sql = [];
foreach($kys as $v){
$sql[]= " title like '%".$v."%' or keywords like '%".$v."%' ";
}
//把所有查询拼接
$sqls = implode(' or ',$sql);
$sqls .= ' and id!='.$jz['id'];
}else{
//关键词,则查询栏目相同的文章
$sqls = 'tid='.$jz['tid'].' and id!='.$jz['id'];
}
/}
{loop table="article" sql="$sqls" limit="10" as="v"}
{/loop}