织梦dede后台文章列表显示修改权重weight及调用方法

我们有时候可能需要采用权重进行排序,但是dede后台默认文章列表页面是没有相关权重设置及显示的。所以我们需要通过一些修改,才能够在织梦后台添加与权重相关的内容,方法如下:
 


/*  织梦 后台列表显示修改权重 */
 
1. 分别在   /dede/templets/content_i_list.htm   和   /dede/templets/content_list.htm   文件的 70-80 行之间添加
<td  width="3%" align="center"><input type='text' name="weight" value="{dede:field.weight/}" onblur="arcWeight({dede:field.id/},this.value)" style='width:80px;' /></td>
说明:如果你的dede文件夹名称有修改,那么需求进入相应的文件夹,下同。
 
2. 在 /dede/js/list.js    中加入
 
function arcWeight(aid,val){
if(val === "" || val ==null){
        return;
 }else if(!isNaN(val)){ 
  //window.open("archives_do.php?aid="+aid+"&dopost=arcWeight&val="+val);
  var xhr = new XMLHttpRequest();
  xhr.open("get","archives_do.php?aid="+aid+"&dopost=arcWeight&val="+val);
  xhr.send();
 
  }else{ 
    return; 
 } 
}
 
3. 在 /dede/content_list.php 中找到   大概在208行
 
$query = "SELECT arc.id,arc.typeid,arc.senddate,arc.flag,arc.ismake,
arc.channel,arc.arcrank,arc.click,arc.title,arc.color,arc.litpic,arc.pubdate,arc.mid
FROM `$maintable` arc
$whereSql
ORDER BY $orderbyField DESC";
 
替换为
 
$query = "SELECT arc.id,arc.typeid,arc.senddate,arc.flag,arc.ismake,
arc.channel,arc.arcrank,arc.click,arc.title,arc.color,arc.litpic,arc.pubdate,arc.mid,arc.weight
FROM `$maintable` arc
$whereSql
ORDER BY $orderbyField DESC";
 
 
4. 在 /dede/archives_do.php 中 添加
 
if($dopost=='arcWeight'){
$dsql->ExecuteNoneQuery("UPDATE `dede_archives` SET weight='$val' WHERE id='$aid' "); 
exit();
}
dede后台文章列表页权重显示的效果

dede后台文章列表页权重显示的效果

至此,就可以在dede后台文章列表页,查看到我们新增的权重了。默认所有的权重设置都为0 ,如果想要将相应的文章权重进行调整,可以直接在输入框中输入相应的数字即可。按权重调用的代码为:{dede:arclist row='8' titlelen='60' order="weight" typeid='2,5' channelid='1'}    小技巧:注意代码中有相应的栏目ID,我们可以借用栏目ID,将不同权重的文章分别进行调用,这样可以扩大我们在前端调用显示文章的方式,对于不同页面给予不同的文章显示具有很好的效果。

需要刷新才可评论
  • 全部评论(0
    还没有评论,快来抢沙发吧!