久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

織夢cms在datalist標簽中調出文章url方法

用過dedecms系統的都知道它的模板標簽自由度有很大的局限性,在 我使用datalist這個標簽時,如果不加擴展是無法直接調用文章的url的地址的。在arclist標簽中可用[field:arcurl]調出文章ur

用過dedecms系統的都知道它的模板標簽自由度有很大的局限性,在
我使用datalist這個標簽時,如果不加擴展是無法直接調用文章的url的地址的。在arclist標簽中可用[field:arcurl]調出文章url,在sql標簽中

[field:id runphp='yes']$arcRow=GetOneArchive(@me);@me=$arcRow['arcurl'];[/field:id]

也可以調出來。在datalist中似乎沒有什么好辦法,那只有在程序上擴展了。我們注意到sql標簽調用時GetOneArchive函數,看看它如何工作的
打開include文件夾下common.func.php文件找到GetOneArchive函數

  //獲取單篇文檔信息
function GetOneArchive($aid)
{
 global $dsql;
 include_once(DEDEINC."/channelunit.func.php");
 $aid = trim(ereg_replace('[^0-9]','',$aid));
 $reArr = array();
 
 $chRow = $dsql->GetOne("Select arc.*,ch.maintable,ch.addtable,ch.issystem From `dede_arctiny` arc
 
left join `dede_channeltype` ch on ch.id=arc.channel where arc.id='$aid' ");
 
 if(!is_array($chRow)) {
  return $reArr;
 }
 else {
  if(empty($chRow['maintable'])) $chRow['maintable'] = 'dede_archives';
 }
 
 if($chRow['issystem']!=-1)
 {
  $nquery = " Select arc.*,tp.typedir,tp.topid,tp.namerule,tp.moresite,tp.siteurl,tp.sitepath
              From `{$chRow['maintable']}` arc left join `dede_arctype` tp on tp.id=arc.typeid
              where arc.id='$aid' ";
 }
 else
 {
  $nquery = " Select arc.*,1 as ismake,0 as money,'' as filename,tp.typedir,tp.topid,tp.namerule,
 
tp.moresite,tp.siteurl,tp.sitepath
    From `{$chRow['addtable']}` arc left join `dede_arctype` tp on tp.id=arc.typeid
              where arc.aid='$aid' ";
 }
 
 $arcRow = $dsql->GetOne($nquery);
 
 if(!is_array($arcRow)) {
  return $reArr;
 }
 
 if(!isset($arcRow['description'])) {
  $arcRow['description'] = '';
 }
 
 if(empty($arcRow['description']) && isset($arcRow['body'])) {
  $arcRow['description'] = cn_substr(html2text($arcRow['body']),250);
 }
 
 if(!isset($arcRow['pubdate'])) {
  $arcRow['pubdate'] = $arcRow['senddate'];
 }
 
 if(!isset($arcRow['notpost'])) {
  $arcRow['notpost'] = 0;
 }
 
 $reArr = $arcRow;
 $reArr['aid']    = $aid;
 $reArr['topid']  = $arcRow['topid'];
 $reArr['arctitle'] = $arcRow['title'];
 $reArr['arcurl'] = GetFileUrl($aid,$arcRow['typeid'],$arcRow['senddate'],$reArr['title'],$arcRow['ismake'],
 
$arcRow['arcrank'],$arcRow['namerule'],
 $arcRow['typedir'],$arcRow['money'],$arcRow['filename'],$arcRow['moresite'],$arcRow['siteurl'],$arcRow['sitepath']);
 return $reArr;
 
}

不用細究它的細節,我們看到它處理$aid返回了一個$reArr數組,這個數組有arcurl這個元素,這下很好理解sql標簽中調用arcurl的方法了。
我們現在擴展一下GetOneArchive函數
打開include文件夾下extend.func.php,加入以下代碼

function getOneArchiveElement($aid,$element='arcurl'){
$arcRow=GetOneArchive($aid);
return $arcRow[$element];
}

在前臺datalist標簽中調用:

{dede:field.aid function="GetOneArchiveElement(@me,'arcurl')"}

@me是傳遞參數aid的功能
這下就解決了datalist標簽中調用arcurl的問題,而且GetOneArchiveElement這個函數還能調用其他元素。

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

我們有時候需要對織夢文檔的點擊量進行批量維護,比如采集來的文章,點擊量都為0,需要批量修改,可以用到如下方法1。 1、在數據庫里運行下面的代碼就可以了,文章的點擊量變得
用過dedecms的朋友都知道,織夢cms后臺系統基本參數里是無法直接上傳圖片的,我們更換logo圖只能到ftp里替換,非常的不方便,我們如果想直接在系統基本參數里上傳,要怎么處理呢?
dedecms要想調用所有子欄目是沒有這個標簽的,要調用只可用sql標簽,reid表示子欄目,channeltype=6表示模型為商品,sortrank表示按排序升序.小的放前面 {dede:sql sql=Select * from `dede_arctype` where r
這篇文章主要介紹了php在windows環境下獲得 cpu 內存實時使用率的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
這篇文章主要介紹了PHP實現在對象之外訪問其私有屬性private及保護屬性protected的方法,簡單介紹了php public、private及protected的功能及用法,并結合實例形式分析了php在對象之外訪問其私有屬
這篇文章主要介紹了PHP守護進程化的實現的方法以及原理過程,以及在C環境和PHP環境下實現的代碼,喜歡的朋友收藏一下。
主站蜘蛛池模板: 国产视频一区在线 | 欧美激情综合 | 黄色日本视频 | 黄色小视频免费 | 久久久精品一区 | 色综合久久综合 | 精品久久久久久久久久久久久久 | 97视频在线观看免费 | 国产成人一区二区 | 九九视频在线免费观看 | 老司机午夜免费精品视频 | 久久综合五月天 | 黄色午夜 | 久久精品欧美一区二区 | 午夜精品视频 | 91精品国产99久久久久久红楼 | 欧美三级 欧美一级 | 亚洲一区视频在线 | 成人一级毛片 | 一级毛片在线播放 | 国产精品国产三级国产专区53 | 国产精品三级在线 | 国产三级在线观看 | 久久久久久久久国产精品 | 深夜福利影院 | 中文字幕精品视频 | 综合伊人久久 | 黄色片www| 国产又粗又大又硬 | 又黄又爽又色视频 | 成人高清免费 | 一级黄色性生活片 | 精品久久视频 | 丁香色婷婷| 精品第一页 | 成人毛片在线播放 | 日韩一区二区在线视频 | 91在线视频播放 | 双性呜呜宫交受不住了h | 亚洲砖区区免费 | 在线成人免费 |