首頁 CMS教程 DEDECMS dedecms專題模板怎麼用

dedecms專題模板怎麼用

Jan 13, 2020 am 09:38 AM
dedecms

dedecms專題模板怎麼用

dedecms專題範本怎麼用?

DeDeCms的專題相關資訊bbs相對較少,之前查閱了許多資料都找不到其解決方案

  

推薦學習:織夢cms

無柰只有靠自己動手豐衣足食;在官方的版本上有這樣的一段話: 

1、文章列表用ID1,ID2,ID3這樣形式分開,系統會自動排除不同節點的相同文章;

2、關於單一記錄範本裡的[field:fieldname /]標記的使用,請參考關於系統幫助關於arclist 標記的說明;

#3、節點ID是節點的唯一標識,允許在專題模板中用{dede:specnote id='標識'/}這樣來表示單一節點。

4、正常的情況下,每個節點顯示的是“節點文章列表”裡的文檔,如果你指定為“自動獲取模式”,那麼必須指定關鍵字和欄位ID。

可是經測試{dede:specnote id='標識'/}這個並沒有升效;因此開始解決這個,以替換掉原來比較死板{dede:field name='note'/}標籤;

舉例說明:

我要分兩欄顯示不同節點的文章,目前用"note"就不能實現,只能是同一節點分欄,難免就顯得有些捌扭,不夠靈活。

下面我就把自己解決方案寫下供同學們參考,首先得申明一點,只能是實現了功能,可算法不一定是最好的,因為我不太熟悉DEDECMS代碼且沒有認真的研究過,希望大家海涵!

步驟1:

檔案位置:{include/inc_archives_view.php} 

程式碼如下:

//广告标记
//-----------------------
else if($ctag->GetName()=="myad"){
$this->dtp->Assign($tagid,$this->PartView->GetMyAd($typeid,$ctag->GetAtt("name")));
}
// 专题标识
// by phpfans
else if($ctag->GetName()=="specnote"){
$this->dtp->Assign($tagid,$this->ChannelUnit->GetSpecList('',$this->ChannelUnit->specrule,$ctag->GetAtt("id")));
}
登入後複製

  介紹:{在廣告標記下增加專題標識}這樣專題文章列表頁就可以辨識specnote標籤了

步驟2:

檔案位置:{include/inc_channel_unit.php} 

var $specrule;
//-------------
//php5构造函数
//-------------
登入後複製

介紹:增加了對$pecrule變數的定義

步驟3:

檔案位置:{include/inc_channel_unit.php} 

程式碼如下:

else if($ftype=="specialtopic"){
$this->specrule = $fvalue;
$fvalue = $this->GetSpecList($fname,$fvalue); 
}
登入後複製

   介紹:這兒增加了$this->specrule = $fvalue;這句,以便取得addonspec表的note字段資料;

步驟4:

  檔案位置:{include/inc_channel_unit.php} 

#程式碼如下:

//获得专题文章的列表
//--------------------------------
function GetSpecList($fname,$noteinfo,$noteid="")
{
if(!isset($GLOBALS['__SpGetArcList'])) require_once(dirname(__FILE__)."/inc/inc_fun_SpGetArcList.php");
if($noteinfo=="") return "";
$rvalue = "";
$tempStr = GetSysTemplets("channel/channel_spec_note.htm");
$dtp = new DedeTagParse(); </p> <p></p> <p>$dtp->LoadSource($noteinfo);
if(is_array($dtp->CTags))
{
foreach($dtp->CTags as $k=>$ctag){
$notename = $ctag->GetAtt("name");
if($noteid!="" && $ctag->GetAtt("noteid")!=$noteid){ continue; } //指定名称的专题节点
if($noteid!="" && $ctag->GetAtt("noteid")===$noteid) {
$isauto = $ctag->GetAtt("isauto");
$idlist = trim($ctag->GetAtt("idlist"));
$rownum = trim($ctag->GetAtt("rownum"));
if(empty($rownum)) $rownum = 40;
$keywords = "";
$stypeid = 0;</p> <p>if($isauto==1){
$idlist = "";
$keywords = trim($ctag->GetAtt("keywords"));
$stypeid = $ctag->GetAtt("typeid");
}</p> <p>if(trim($ctag->GetInnerText())!="") $listTemplet = $ctag->GetInnerText();
else $listTemplet = GetSysTemplets("spec_arclist.htm");
$idvalue = SpGetArcList($this->dsql,
$stypeid,$rownum,$ctag->GetAtt("col"),
$ctag->GetAtt("titlelen"),$ctag->GetAtt("infolen"),
$ctag->GetAtt("imgwidth"),$ctag->GetAtt("imgheight"),
"all","default",$keywords,$listTemplet,100,0,$idlist);</p> <p>$notestr = str_replace("~notename~",$notename,$tempStr);
$notestr = str_replace("~spec_arclist~",$idvalue,$notestr);
$rvalue .= $notestr;
if($noteid!="" && $ctag->GetAtt("noteid")==$noteid){ break; }
}
}
}
$dtp->Clear();
return $rvalue;
}
登入後複製

介紹:有些小改動,自己對比一下就清楚了,這兒就不再哆嗦了

步驟5:

##說明:原{dede:field name='note'/}標籤失效了,如果要用的朋友請自行修改步驟四部份。 。

很簡單的;

完成!

以上是dedecms專題模板怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1665
14
CakePHP 教程
1423
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
帝國cms資源網模板在哪 帝國cms資源網模板在哪 Apr 17, 2024 am 10:00 AM

帝國CMS模板下載位置:官方模板下載:https://www.phome.net/template/第三方模板網站:https://www.dedecms.com/diy/https://www.0978.com.cn /https://www.jiaocheng.com/安裝方式:下載模板解壓縮模板上傳模板選擇模板

dedecms怎麼上傳本機視頻 dedecms怎麼上傳本機視頻 Apr 16, 2024 pm 12:39 PM

如何使用 Dedecms 上傳本機影片?準備影片文件,確保格式符合 Dedecms 支援的格式。登入 Dedecms 管理後台,建立新的影片分類。在影片管理頁面上傳影片文件,填寫相關資訊並選擇影片分類。在編輯文章時嵌入視頻,輸入上傳視頻的文件名並調整尺寸。

dedecms怎麼實現模板替換 dedecms怎麼實現模板替換 Apr 16, 2024 pm 12:12 PM

在 Dedecms 中實作範本替換可以透過以下步驟:修改 global.cfg 文件,設定所需的語言包。修改 taglib.inc.php 鉤子文件,加入對語言後綴模板文件的支援。建立帶有語言後綴的新模板文件,修改所需內容。清除 Dedecms 快取。

dedecms都能做什麼網站 dedecms都能做什麼網站 Apr 16, 2024 pm 12:24 PM

Dedecms是一款開源CMS,可用於創建各種類型的網站,包括:新聞網站部落格網站電商網站論壇和社群網站教育網站入口網站其他類型的網站(例如企業網站、個人網站、相簿網站、影片分享網站)

dedecms有什麼漏洞 dedecms有什麼漏洞 Aug 03, 2023 pm 03:56 PM

DedeCMS是一個開源的內容管理系統,會存在一些潛在的漏洞和安全風險:1、SQL注入漏洞,攻擊者可以透過建構惡意的SQL查詢語句來執行未經授權的操作或取得敏感資料;2、文件上傳漏洞,攻擊者可以上傳包含惡意程式碼的檔案到伺服器上,從而執行任意程式碼或取得伺服器權限;3、敏感資訊外洩;4、未經身份驗證的漏洞利用。

dedecms怎麼用 dedecms怎麼用 Apr 16, 2024 pm 12:15 PM

Dedecms 是一款開源中文 CMS 系統,提供內容管理、模板系統和安全保護等功能。具體使用方法包含以下步驟:1. 安裝 Dedecms。 2. 配置資料庫。 3. 登入管理介面。 4. 創建內容。 5. 設定模板。 6. 管理用戶。 7. 維護系統。

dedecms怎麼改圖片 dedecms怎麼改圖片 Apr 16, 2024 pm 12:27 PM

修改 DedeCMS 圖片的步驟:登入 DedeCMS 後台。造訪「系統」>「媒體管理」頁面。選擇要修改的圖片。點選“編輯”按鈕。修改圖片標題、描述、標籤和版權資訊。裁剪或調整圖片大小。點選「儲存」按鈕儲存變更。返回媒體管理頁面,點選「更新圖片庫」按鈕,使變更套用到網站中。

dedecms怎樣實現模版替換? dedecms怎樣實現模版替換? Apr 16, 2024 pm 12:21 PM

在 DedecMS 中實現模版替換,需執行下列步驟:決定要替換的模版文件,常見的文件有 index.htm、list.htm 和 show.htm。建立新的模版文件,保留 DedecMS 標記。上傳新模版文件,覆蓋原始文件。清除快取。刷新網站以查看更改。

See all articles