咱們在使用DEDECMS製做文章頁或者列表頁模板時候,都但願在頁面中顯示和內容有關的標題或者專題內容,固然顯示相關文章的標題這個功能是DEDECMS標籤已經自帶了的,今天主要是講如何在DEDECMS文章模板中調用和內容有關的專題標題,這個咱們須要修改DEDECMS相關的PHP文件來實現。php
打開include/extend.func.php,在最後添加:sql
- 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;
- //返回文章連接
- }
而後若是在內容頁調用直接用:curl
- {dede:field.keywords function='getlikespc(@me)'/}
列表和專題的節點通常用這樣的格式調用:ide
- [field:keywords function='getlikespc(@me)'/]