? ?
电脑维修网
当前位置:电脑维修网 >操作系统 > 其他系统 >dede专题模型没有跳转

dede专题模型没有跳转

2013-11-15 20:21 | 作者:dede代码 | 来源:电脑维修技术网 | 参与评论 | 点击:1113次

文章简介

一般来说企业网站都有很多专题,如果专题偶尔需要修改一些标题或是其他东西而不建成模板可能就比较麻烦,而有时一些栏目就必须需要一些专题,或是只要一个栏目名却指定特定的地址,但是dede专题模型没有跳转怎么办呢?

因为系统文章系统分面问题,本文代码把#P# 改成*p*,大家看的时候,可自行修改成#P#即可。

适用范围及演示系统

适用范围:dede各版本(其他版本未做测试,大家可按本文自行修改)

演示系统:dede5.7

dede专题模型没有跳转解决方法

第1步:打开dede后台目录下的添加专题模板文件,文件名为“/dede/templets/spec_add.htm”。

第2步:在sped_add.htm文件中找到第114行,也就是自定义属性这里,把官方默认的php代码修改成以下代码。

  1. <?php 
  2.                 $dsql->SetQuery("Select * From `dede_arcatt` order by sortid asc"); 
  3.                 $dsql->Execute(); 
  4.                 while($trow = $dsql->GetObject()) 
  5.                 { 
  6.                     if($trow->att=='j') 
  7.                       echo "<input class='np' type='checkbox' name='flags[]' id='flags{$trow->att}' value='{$trow->att}' onclick='ShowUrlTr()'>{$trow->attname}[{$trow->att}]"; 
  8.                     else 
  9.                       echo "<input class='np' type='checkbox' name='flags[]' id='flags{$trow->att}' value='{$trow->att}'>{$trow->attname}[{$trow->att}]"; 
  10.                 } 
  11.                 ?> 

第3步:加完后,在第127行(</tr>后),加上以下代码。

  1. <tr> 
  2.       <td height="24" colspan="4" class="bline" id="redirecturltr" style="display:none"> 
  3.        <table width="800" border="0" cellspacing="0" cellpadding="0"> 
  4.           <tr> 
  5.             <td width="90">&nbsp;跳转网址:</td> 
  6.             <td> 
  7.                 <input name="redirecturl" type="text" id="redirecturl" style="width:300px" value="" /> 
  8.             </td> 
  9.           </tr> 
  10.        </table> 
  11.        </td> 
  12.     </tr> 

电脑维修技术网注:如果不加上以上代码,那么在dede后台添加新的专题点击跳转网址时,就不会出现跳转网址的文本框了。

第4步:打开dede后台目录下的添加专题php文件,文件名为“/dede/spec_add.php”。

第5步:在spec_add.php文件中找到第188行代码那里(可在文件中搜索 处理图片文档的自定义属性 即可搜索到),在原本缩略图下再添加一个跳转的代码判断,具体代码如下所示。

  1. if($litpic!='' && !preg_match('*p*', $flag)) 
  2.     $flag = ($flag=='' ? 'p' : $flag.',p'); 
  3. if($redirecturl!='' && !preg_match("#j#", $flag)) 
  4.     $flag = ($flag=='' ? 'j' : $flag.',j'); 

第6步:在sped_add.php文件中找到第199行代码(可全文搜索 加入附加表 下面一行即可),修改代码如下。

  1. $inQuery = "INSERT INTO `dede_addonspec`(aid,typeid,userip,templet,note{$inadd_f},redirecturl) VALUES ('$arcID','$typeid','$useip','$templet','$notelist'{$inadd_v},'$redirecturl');"

电脑维修技术网注:原本SQL语句中是没有添加redirecturl这个字段的,这里修改的SQL语句就是添加上了。

第7步:到此为止,如果大家在dede后台发布专题页时,添加新的专题时跳转就有了,而且添加后,数据库也有了,下面就是在修改专题页时也加上跳转(默认也是没有跳转的)。

第8步:打开dede后台目录下的修改专题模板文件,文件名为“/dede/templets/spec_edit.htm”。

第9步:在spec_edit.htm文件中找到自定义属性(第124行),把下面的的php代码替换为以下代码。原文网址http://www.wikiblast.net/6/7/26211.html

  1. <?php 
  2.                 $dsql->SetQuery("SELECT * FROM `dede_arcatt` ORDER BY sortid ASC"); 
  3.                 $dsql->Execute(); 
  4.                 while($trow = $dsql->GetObject()) 
  5.                 { 
  6.                     if($trow->att=='j') $jumpclick = " onclick='ShowUrlTr()'"
  7.                     else $jumpclick = ''
  8.                     if(preg_match("#".$trow->att."#", $arcRow['flag'])) 
  9.                     echo "<input class='np' type='checkbox' name='flags[]' id='flags{$trow->att}' value='{$trow->att}' {$jumpclick} checked='checked' />{$trow->attname}[{$trow->att}]"; 
  10.                     else 
  11.                     echo "<input class='np' type='checkbox' name='flags[]' id='flags{$trow->att}' value='{$trow->att}'{$jumpclick} />{$trow->attname}[{$trow->att}]"; 
  12.                 } 
  13.             ?> 

第10步:添加完第8步的php代码后,向下找到"</tr>",然后再添加以下代码,然后保存。

  1. <tr> 
  2.       <td height="24" class="bline" id="redirecturltr" style="display:<?php echo (empty($addRow['redirecturl']) ? 'none' : 'block');?>"> 
  3.        <table width="800" border="0" cellspacing="0" cellpadding="0"> 
  4.           <tr> 
  5.             <td width="90">&nbsp;跳转网址:</td> 
  6.             <td> 
  7.                 <input name="redirecturl" type="text" id="redirecturl" style="width:300px" value="<?php echo $addRow['redirecturl']; ?>" /> 
  8.             </td> 
  9.           </tr> 
  10.        </table> 
  11.        </td> 
  12.     </tr> 

 第11步:找到处理图片文档自定义属性那行下面的if开始的代码(第126行代码),并替换成以下代码。

  1. //处理图片文档的自定义属性 
  2. if($litpic!='' && !preg_match('*p*',$flag)) 
  3.     $flag = ($flag=='' ? 'p' : $flag.',p'); 
  4. $redirecturl!='' && !preg_match("#j#", $flag)) 
  5.     $flag = ($flag=='' ? 'j' : $flag.',j'); 

第12步:找到更新附加表处(第250行代码),同下面的SQL语句一起替换为以下代码,并保存。

  1. //更新附加表 
  2. $inQuery = "UPDATE `dede_addonspec` SET typeid ='$typeid',redirecturl='$redirecturl',note='$notelist'{$inadd_f},templet='$templet' WHERE aid='$id';"

第13步:完成以上代码之后,然后上传到dede后台,并覆盖即可。

转载时请注明:转载自《电脑维修技术网》原文地址:http://www.wikiblast.net/6/7/26211.html
凡文章内未标注来源均为原创文章!恭候您的意见
------分隔线----------------------------
?
最新评论
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
友情连接版权声明广告合作联系我们意见投诉网站地图百度地图谷歌地图
敬告:本站所有信息都为网友发布,及网络收集而来,我们只对信息的合法性进行审核 请朋友们自行鉴别真实性。
老北京赛车-老北京赛车官网