织梦根据字段指定的id获取文章教程: 本代码只支持文章模型,如果是其他模型需要自行修改表名称。 打开/include/helpers/extend.helper.php文件,在结尾增加如下代码: 01 // 获取指定 id 02 if (!function_exists( 'getarc' )) 03 { 04 function getarc($ai
本代码只支持文章模型,如果是其他模型需要自行修改表名称。
打开/include/helpers/extend.helper.php文件,在结尾增加如下代码:
- // 获取指定id
- if(!function_exists('getarc'))
- {
- function getarc($aid,$field)
- {
- global $dsql;
- if(empty($aid) || empty($field)){ return '';}
- //获取指定字段值
- $row = $dsql->GetOne("SELECT $field FROM `#【分隔符】@__addonarticle` WHERE aid = '$aid'");
- $idlist= $row["$field"];
- $resualt='';
- if($idlist != '')
- {
- $query = "SELECT arc.*,tp.* FROM `#【分隔符】@__archives` arc left join `#【分隔符】@__addonarticle` tp on arc.id=tp.aid WHERE arc.id in($idlist) ORDER BY arc.id ";
- $dsql->Execute('me',$query);
- while($rs = $dsql->GetArray('me'))
- {
- $url = GetOneArchive($rs['id']) ;
- $resualt .="<dl><dt><a href='".$url['arcurl']."'>".$rs['title']."</a></dt><dd>".cn_substr($rs['body'],230)."</dd></dl>";
- }
- }
- return $resualt;
- }
- }
请手动去掉上面代码中的【分隔符】,添加完成后在模板中用下面的标签调用:
- {dede:field.id function="getarc(@me,field)"/}
其中field为自己建立的字段名,调用返回数据的格式修改此句
- $resualt .="<dl><dt><a href='".$url['arcurl']."'>".$rs['title']."</a></dt><dd>".cn_substr($rs['body'],230)."</dd></dl>";