DEDECMS首页digg代码:
orderby=digg 就是按照DIGG的次数来排序的
{dede:arclist row=5 titlelen=24 orderby=digg}
[field:textlink/] [field:digg/]<br/>
{/dede:arclist}
具体详细代码如下
<div class="dignews margintop">
<div class="digtitle"><span></span>
<ul id="digtitle">
<li><a href="###">热门</a> </li>
<li><a href="###">推荐</a> </li>
<li><a href="###">关注</a> </li>
</ul>
</div>
<dl id="diglist"><dt>正在载入,请稍后... <!--DIG菜单:热门--></dt><dd><!--DIG循环体开始-->{dede:arclist row=5 titlelen=24 orderby=digg}
<div class="digbox" id="digboxa">
<div class="diglink" id="digg[field:id/]"><span>[field:digg/]</span> <a class="digvisited" href="javascript:Digg('digg',[field:id/]);"><!--顶一下--></a></div>
<div class="title">[field:textlink/]<span>[field:pubdate function=strftime('%m-%d',@me)/]</span> </div>
<div class="preview">[field:info/]... </div>
</div>
{/dede:arclist} <!--DIG循环体结束--><!--DIG菜单:推荐--></dd><dd><!--DIG循环体开始-->{dede:arclist row=5 titlelen=24 orderby=digg att=5}
<div class="digbox" id="digboxb">
<div class="diglink" id="digg[field:id/]"><span>[field:digg/]</span> <a class="digvisited" href="javascript:Digg('digg',[field:id/]);"><!--顶一下--></a></div>
<div class="title">[field:textlink/]<span>[field:pubdate function=strftime('%m-%d',@me)/]</span> </div>
<div class="preview">[field:info/]... </div>
</div>
{/dede:arclist} <!--DIG循环体结束--><!--DIG菜单:关注--></dd><dd><!--DIG循环体开始-->{dede:arclist row=5 titlelen=24 orderby=click}
<div class="digbox" id="digboxc">
<div class="diglink" id="digg[field:id/]"><span>[field:digg/]</span> <a class="digvisited" href="javascript:Digg('digg',[field:id/]);"><!--顶一下--></a></div>
<div class="title">[field:textlink/]<span>[field:pubdate function=strftime('%m-%d',@me)/]</span> </div>
<div class="preview">[field:info/]... </div>
</div>
{/dede:arclist} <!--DIG循环体结束--></dd></dl></div>
</div>
<!--左侧栏结束--><script language="javascript" type="text/javascript">
<!--
//DIGG资讯无刷新切换
pigzmo("digtitle","diglist",3,3000);
-->
</script><!--中栏-->
DEDE5的DIGG功能,顶完可以看到“顶”的数量是加了1,但是如果刷新页面,你会发现“顶”的数量有复原了。
这是因为文章被顶数,已经被生成了静态HTML固定下来显示了,除非直到下一次后台更新此文章
那么我做了以下修改,就是当当前文章被顶的时候,同时更新一次该文章,让它的静态HTML里的“顶”数是最新的真实数字。
修改方法很简单,如下:
打开DEDE根目录下的digg.php 文件,在26行插入以下三行代码即可
include_once(dirname(__FILE__)."/include/inc_archives_view.php");
$arc = new Archives($aid);
$reurl = $arc->MakeHtml();
首页实现顶一下自动刷新一下方法:
打开diggindex.php 文件。。
找到
header("Expires:0");
header("Content-Type: text/html; charset=gb2312");
在下面加入
if($action == indexdigg ){
echo '<span>'.$row['digg'].'</span>';
echo "<a class=\"digvisited\" href=\"javascript:Digg(\"digg\",".$aid.");\"></a>";
exit();
}
首页模板加入
<!-- Digg 参数 -->
<script language="javascript" src="{dede:global name='cfg_cmspath'/}/include/dedeajax2.js"></script>
<script language="javascript">
function Digg(divId,aid){
var taget_obj = document.getElementById(divId '' aid);
var myajax = new DedeAjax(taget_obj,false,false,"","","");
myajax.SendGet2("/diggindex.php?action=indexdigg&aid=" aid);
DedeXHTTP = null;
}
</script>
实例:
<div class="right"><!-- Digg 参数 -->
<script language="javascript" src="{dede:global name='cfg_cmspath'/}/include/dedeajax2.js"></script>
<script language="javascript">
function Digg(divId,aid){
var taget_obj = document.getElementById(divId '' aid);
var myajax = new DedeAjax(taget_obj,false,false,"","","");
myajax.SendGet2("/diggindex.php?action=indexdigg&aid=" aid);
DedeXHTTP = null;
}
</script>
<div class="digtitle">DIGG排行</div>
<div class="diglist">
{dede:arclist row=9 titlelen=24 infolen='29' orderby=digg}
<dd>
<div class="diglink" id="digg[field:id/]"><span>[field:digg/]</span> <a class="digvisited" href="javascript:Digg('digg',[field:id/]);"><!--顶一下--></a></div>
<h3>[field:textlink/]</h3>
[field:info/]...
</dd>
{/dede:arclist}
</div>
</div>