dede如何调用相关文章
织梦的调用相关文章根本就是调用无关文章!然而在网上搜集的解决方法,都是很久以前的了,织梦改版文件名改了些,找了半天终于找到了。在别人的基础上改了下,自己测试可以用了。
好了,看下具体如何做吧:
在include文件夹中找到archives.func.php,在?>前面加上如下代码:
//查询指定栏目里包含相应关键字的文章,并列出
//参数说明:$showImg 是否显示缩略图,0表示不显示,1表示显示
// $titleLen 标题长度,0表示无限
// $rowCount 输出行数,0表示无限
// $typeid 栏目ID,0表示所有栏目
// $keyWord 关键字,字符串
function ShowKeyWordArc($showImg,$titleLen,$rowCount,$typeid,$keyWord){
$dsql = new DedeSql(false);
$sql = TypeGetSunID($typeid,$dsql);
//关键字分词技术
$ks = explode(” “,$keyWord);
foreach($ks as $k){
$k = trim($k);
if ($k!=””) {
$kwsqlarr[] = ” (dede_archives.title like ‘%$k%’) “;
//$kwsqlarr[] = ” (dede_archives.keywords like ‘%$k%’) “; //如果需要相关到其它文章的关键字,解除此行注释
}
}
$where = implode(‘ OR ‘,$kwsqlarr);
$sql=”Select tp.namerule,tp.typedir,dede_full_search.aid,dede_full_search.url,dede_archives.* From dede_full_search left join dede_archives on dede_full_search.aid=dede_archives.ID left join dede_arctype tp on dede_archives.typeid=tp.ID where {$sql} and ((dede_archives.title like ‘%”.$keyWord.”%’) or $where) order by dede_full_search.aid desc”;
$dsql->SetQuery($sql);
$dsql->Execute();
$ss=””;
$i=0;
while($row=$dsql->GetObject()){
$url=GetFileUrl($row->ID,$row->typeid,$row->senddate,$row->title,$row->ismake,$row->arcrank,$row->namerule,$row->typedir,$row->money);
if ($showImg==0){
$ss=$ss.”<LI><a href='”.$url.”‘ target=_blank>”;
if ($titleLen!=0) $ss=$ss.cn_substr($row->title,$titleLen);
else $ss=$ss.$row->title;
$ss=$ss.”</A></LI>”;
}else{
$ss=$ss.”<LI><span class=’sjdqimggl’><a href='”.$url.”‘ target=_blank>”;
if ($row->litpic!=””) $ss=$ss.”<img src='”.$row->litpic.”‘ alt='”.$row->title.”‘ />”;
else $ss=$ss.”<img src=’/images/titl.gif’/>”;
$ss=$ss.”</a></span><span class=’sjdqtxttl’><a href='”.$url.”‘ target=_blank>”;
if ($titleLen!=0) $ss=$ss.cn_substr($row->title,$titleLen);
else $ss=$ss.$row->title;
$ss=$ss.”</A></span></LI>”;
}
$i++;
if (($rowCount!=0)&&($i>=$rowCount)) return $ss;
}
return $ss;
}
加好代码后在文章内容模板页需要的位置加上如下代码:
<div>
<dl>
<dt><b>相关文章</b></dt>
<dd>
<ul>
{dede:likearticle row=’10’ titlelen=’42’}
<li><a href=”[field:arcurl/]”>[field:title/]</a></li>
{/dede:likearticle} </ul>
</dd>
</dl>
</div><!– /相关文章 –>
大功告成!
有关全站调用:
找到文件:\include\taglib\likearticle.lib.php
找到代码:
$typeid = ” And arc.typeid in($typeid) And arc.id<>$arcid “;
修改为:
$typeid = ” And arc.id<>$arcid “;
保存,再跟新就搞定了找到文件:\include\taglib\likearticle.lib.php