国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

織夢DedeCMS讓聯動查詢支持系統的文章模型、圖集

2024-04-25 20:49:34
字體:
來源:轉載
供稿:網友
之前看過好幾個發布關于聯動的應用教程帖,但是發現只適合一個聯動項目,多個的話就不會聯動了,自己按照分類信息里的聯動改了一下成功了,現在寫個教程給那些也想使用多個聯動項目的朋友。(注:本篇教程只針對獨立模型,如需支持系統模型,比如文章、圖集、軟件模型就聯系QQ282477832,付費解決)。我這里是五個聯動項目,如果需要跟多或是少一點的話,可以根據我給的代碼修改一下。
第一步:修改include/taglib/infolink.lib.php文件
第一處:

require_once(DEDEDATA.'/enums/infotype.php');
下面添加
require_once(DEDEDATA.'/enums/自定義聯動類別字段名1.php');
require_once(DEDEDATA.'/enums/自定義聯動類別字段名2.php');
require_once(DEDEDATA.'/enums/自定義聯動類別字段名3.php');
require_once(DEDEDATA.'/enums/自定義聯動類別字段名4.php');
require_once(DEDEDATA.'/enums/自定義聯動類別字段名5.php');
 

5.6版本上面代碼與5.7版本不同,只要注意路徑即可。
第二處:

function lib_infolink(&$ctag,&$refObj)
{
global $dsql,$nativeplace,$infotype,$自定義聯動類別字段名1,$自定義聯動類別字段名2,$自定義聯動類別字段名3,$自定義聯動類別字段名4,$自定義聯動類別字段名5,$hasSetEnumJs,$cfg_cmspath,$cfg_mainsite;
global $em_nativeplaces,$em_infotypes,$em_自定義聯動類別字段名1s,$em_自定義聯動類別字段名2s,$em_自定義聯動類別字段名3s,$em_自定義聯動類別字段名4s,$em_自定義聯動類別字段名5s;??//看清楚,這里后面的個S
 

第三處:


$fields = array('nativeplace'=>'','infotype'=>'','typeid'=>$typeid,
'channelid'=>$channelid,'linkallplace'=>'','linkalltype'=>'');

$fields['nativeplace'] = $fields['infotype'] = '';
后面添加

$fields = array('自定義聯動類別字段名1'=>'','自定義聯動類別字段名2’=>'','自定義聯動類別字段名3'=>'','自定義聯動類別字段名4'=>'','自定義聯動類別字段名5'=>'','typeid'=>$typeid,
'channelid'=>$channelid,'linkallplace'=>'','linkalltype'=>'','linkall自定義聯動類別字段名1'=>'','linkall自定義聯動類別字段名2‘=>'','linkall自定義聯動類別字段名3'=>'','linkall自定義聯動類別字段名4'=>'','linkall自定義聯動類別字段名5'=>'');

$fields['自定義聯動類別字段名1'] = $fields['自定義聯動類別字段名2'] = $fields['自定義聯動類別字段名3'] = $fields['自定義聯動類別字段名4'] = $fields['自定義聯動類別字段名5'] = '';
 

第四處:


$fields['linkalltype'] = "<a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$nativeplace}'>不限</a>";

后面添加

$fields['linkall自定義聯動類別字段名1'] = "<a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&自定義聯動類別字段名1={$eid}&自定義聯動類別字段名2={$自定義聯動類別字段名2}&自定義聯動類別字段名3={$自定義聯動類別字段名3}&自定義聯動類別字段名4={$自定義聯動類別字段名4}&自定義聯動類別字段名5={$自定義聯動類別字段名5}'>全部</a>";

(這里注意了,想要聯動這個地方是關鍵之一,后面的聯動字段一定都要有,如果你有增加聯動那么這里一定要加全了)
 

第五處:

if(is_array($ctp->CTags))

上面添加

if(empty($自定義聯動類別字段名1))
{
foreach($em_自定義聯動類別字段名1s as $eid=>$em)
{
if($eid % 500 != 0) continue;
$fields['自定義聯動類別字段名1'] .= " <a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&自定義聯動類別字段名1={$eid}&自定義聯動類別字段名2={$自定義聯動類別字段名2}&自定義聯動類別字段名3={$自定義聯動類別字段名3}&自定義聯動類別字段名4={$自定義聯動類別字段名4}&自定義聯動類別字段名5={$自定義聯動類別字段名5}'>{$em}</a>";
}
}
else
{
foreach($em_自定義聯動類別字段名1s as $eid=>$em)
{
if($eid % 500 != 0) continue;
if(isset($_GET['自定義聯動類別字段名1']))
{
$navclass=$_GET['自定義聯動類別字段名1'];
if ($navclass==$eid)
{
$navclass=' style=color:#ff0000;font-weight:bold';
}
$fields['自定義聯動類別字段名1'] .= " <a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&自定義聯動類別字段名1={$eid}&自定義聯動類別字段名2={$自定義聯動類別字段名2}&自定義聯動類別字段名3={$自定義聯動類別字段名3}&自定義聯動類別字段名4={$自定義聯動類別字段名4}&自定義聯動類別字段名5={$自定義聯動類別字段名5}'".$navclass.">{$em}</a>";
}
}
}

(這里也多聯動的關鍵之一,由于東西太多,我只列出一個,其他的自己添加一下,注意的是在鏈接也就是a href里面自定義聯動類別字段名一定要加全了)
 

第二步:修改plus/list.php 文件

第一處:

$infotype = ( (empty($infotype) || !is_numeric($infotype)) ? 0 : $infotype );

下面加上

$自定義聯動類別字段名1 = ( (empty($自定義聯動類別字段名1) || !is_numeric($自定義聯動類別字段名1)) ? 0 : $自定義聯動類別字段名1 );(多個就復制改名即可)
 

第二處:


if(!empty($infotype)) $cArr['infotype'] = $infotype;

下面加上

if(!empty($自定義聯動類別字段名1)) $cArr['自定義聯動類別字段名1'] = $自定義聯動類別字段名1;(多個就復制改名即可)
 

第三步:修改include/arc.sglistview.class.php 文件(本站測試,此步可忽略)


if(!empty($this->searchArr['infotype']))
{
if($this->searchArr['infotype'] % 500 ==0 )
{
$naddQuery .= " And arc.infotype >= '{$this->searchArr['infotype']}' And arc.infotype < '".($this->searchArr['infotype']+500)."'";
}
else
{
$naddQuery .= "And arc.infotype = '{$this->searchArr['infotype']}'";
}
}

下面加上

if(!empty($this->searchArr['jztype']))
{
if($this->searchArr['jztype'] % 500 ==0 )
{
$naddQuery .= " And arc.jztype >= '{$this->searchArr['jztype']}' And arc.jztype < '".($this->searchArr['jztype']+500)."'";
}
else
{
$naddQuery .= "And arc.jztype = '{$this->searchArr['jztype']}'";
}
}
(多個就復制改名即可)
 

第四步:模板調用

[field:linkeall自定義聯動類別字段名1/] [field:自定義聯動類別字段名1 /] (多個就復制改名即可)

切記前后一定要加上{dede:infolink}和{/dede:infolink}要不然是調用不出來的

另外list列表類的分頁代碼也要加上相關的參數,才能正確顯示分頁。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兴文县| 钟山县| 双鸭山市| 紫云| 迁西县| 舞钢市| 彩票| 泾川县| 望城县| 新闻| 锡林浩特市| 高密市| 连平县| 图木舒克市| 舟山市| 绥宁县| 广东省| 博爱县| 徐州市| 金沙县| 游戏| 岳阳县| 紫云| 安平县| 开封县| 乌苏市| 蛟河市| 新野县| 鸡泽县| 武夷山市| 云南省| 兰西县| 中阳县| 新乐市| 呈贡县| 育儿| 九台市| 海口市| 双辽市| 于都县| 肥乡县|