欢迎来到元素模板ys720.com,本站提供专业的织梦模板PBOOTCMS模板网站模板网站修改/网站仿站
当前位置:主页 > 程序教程 > DEDECMS教程 >
DEDECMS教程

织梦DEDECMS内容页或列表页增加调用相关专题的功能,(专题节点里也可以调用)

(元素模板) / 2019-08-02 15:18

我们在使用DEDECMS制作文章页或者列表页模板时候,都希望在页面中显示和内容有关的标题或者专题内容,当然显示相关文章的标题这个功能是DEDECMS标签已经自带了的,今天主要是讲如何在DEDECMS文章模板中调用和内容有关的专题标题,这个我们需要修改DEDECMS相关的PHP文件来实现。

打开include/extend.func.php,在最后添加:


function getlikespc($keywords=0)  
    {  
        global $cfg_basehost,$dsql;  
        $key = array();  
        $key = explode(",",$keywords);  
        $likesql = '';  
        $len =count($key);  
        for($i=0;$i<$len;$i++){  
            $now = $len-$i;  
            if($now==1){  
                $likesql .= "keywords like '%".$key[$i]."%' ";  
            }else{  
                $likesql .= "keywords like '%".$key[$i]."%' or ";  
            }  
        }  
        //关键字分割检索,拼接 查询语句  
        $getsql = "SELECT * from  dede_archives where dede_archives.channel='-1'and $likesql order by  dede_archives.id limit 0,4 ";  
        //查询与该文章关键字相同的专题  
        //echo $getsql;  
        $toback = '';  
        $dsql->Execute("m",$getsql);  
        while($row = $dsql->GetObject('m'))  
        {  
            $title = $row->shorttitle;  
             //专题短标题   
            $id = $row->id;  
            //专题ID  
            $url=GetOneArchive($id);  //这个函数可以根据传进来的文档ID获取其URL地址  
            $aurl = $url['arcurl'];  
            $toback .= "<a href='".$aurl."' >".$title."</a>";  
        }  
        //print_r($toback);  
        //exit();  
        return $toback;  
          
        //返回文章链接  
        } 

然后如果在内容页调用直接用:


{dede:field.keywords function='getlikespc(@me)'/}   

列表和专题的节点一般用这样的格式调用:


[field:keywords function='getlikespc(@me)'/]  

 

Copyright @ 2013-2021 元素模板 www.ys720.com All Rights Reserved. 版权所有 元素模板 www.ys720.com