织梦dedecms 首页列表点击加载更多ajax实现瀑布流效果
使用方法:
?1、加载是用AJAX,需要先引用jQuery
2、模板在arcajax.php第二十八行请自行按需修改
3、arcajax.php放到plus目录下
HTML和js代码:
PHP代码(arcajax.php):?<div id="loading27">加载中</div><a href="javascript:;" id="getMore" pnum="2" class="index-more bgw mt15">浏览更多案例......</a><script type="text/javascript">$("#getMore").click(function(){var _this = $(this),pnum = _this.attr("pnum"),//分页码typeid = 1;// 栏目IDif(pnum == 0){return false;}$("#loading27").show();$.ajax({url: '/plus/arcajax.php',data: {typeid:typeid,pnum:pnum},success: function(data){if(data != ''){$(".index-list").append(data);//数据显示到页面_this.attr("pnum", Number(pnum)+1);//分页+1}else{_this.text("没有更多的数据");_this.attr("pnum", 0)}$("#loading27").hide();}})return false;})</script>
<?phprequire_once(dirname(__FILE__)."/../include/common.inc.php");require_once(DEDEINC.'/channelunit.class.php');require_once(DEDEINC.'/taglib/arcpagelist.lib.php');$pnum = empty($pnum)? 0 : intval(preg_replace("/[^\d]/",'', $pnum));$typeid = empty($typeid)? 0 : intval(preg_replace("/[^\d]/",'', $typeid));if($typeid==0 || $pnum==0) die(" Request Error! ");if($typeid > 0){$titlelen = AttDef($titlelen,30);$infolen = AttDef($infolen,160);$imgwidth = AttDef($imgwidth,120);$imgheight = AttDef($imgheight,120);$listtype = AttDef($listtype,'all');$arcid = AttDef($arcid,0);$channelid = AttDef($channelid,0);$orderby = AttDef($orderby,'default');$orderWay = AttDef($order,'desc');$subday = AttDef($subday,0);$line = $row;$artlist = '';//通过页面及总数解析当前页面数据范围$strnum = ($pnum-1) * 12;$limitsql = " LIMIT $strnum,12 ";$innertext = '<li [field:global name="autoindex" runphp="yes"]if(@me%3==0)@me=\'class="mrnone"\'; else @me="";[/field:global]><div><a href="[field:arcurl/]" title="[field:title/]"><img src="[field:litpic/]" width="278" height="245"></a></div><h3><a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a></h3><p>[field:description function="cn_substr(@me,150)"/]</p><span class="more"><a href="[field:arcurl/]">浏览案例</a></span></li>';//模板//处理列表内容项$query = "SELECT arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath FROM `dede_archives` arc LEFT JOIN `dede_arctype` tp ON arc.typeid=tp.idWHERE arc.typeid IN (".GetSonIds($typeid).") ORDER BY arc.sortrank desc $limitsql";$dsql->SetQuery($query);$dsql->Execute('al');$dtp2 = new DedeTagParse();$dtp2->SetNameSpace('field', '[', ']');$dtp2->LoadString($innertext);$GLOBALS['autoindex'] = 0;$ids = array();for($i=0; $i<12; $i++){for($j=0; $j<1; $j++){if($row = $dsql->GetArray("al")){$ids[] = $row['id'];//处理一些特殊字段$row['info'] = $row['infos'] = cn_substr($row['description'],$infolen);$row['id'] = $row['id'];if($row['corank'] > 0 && $row['arcrank']==0){$row['arcrank'] = $row['corank'];}$row['filename'] = $row['arcurl'] = GetFileUrl($row['id'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'],$row['arcrank'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],$row['moresite'],$row['siteurl'],$row['sitepath']);$row['typeurl'] = GetTypeUrl($row['typeid'],$row['typedir'],$row['isdefault'],$row['defaultname'],$row['ispart'],$row['namerule2'],$row['moresite'],$row['siteurl'],$row['sitepath']);if($row['litpic'] == '-' || $row['litpic'] == ''){$row['litpic'] = $GLOBALS['cfg_cmspath'].'/images/defaultpic.gif';}if(!preg_match("#^http:\/\/#", $row['litpic']) && $GLOBALS['cfg_multi_site'] == 'Y'){$row['litpic'] = $GLOBALS['cfg_mainsite'].$row['litpic'];}$row['picname'] = $row['litpic'];$row['stime'] = GetDateMK($row['pubdate']);$row['typelink'] = "<a href='".$row['typeurl']."'>".$row['typename']."</a>";$row['image'] = "<img src='".$row['picname']."' border='0' width='$imgwidth' height='$imgheight' alt='".preg_replace("#['><]#", "", $row['title'])."'>";$row['imglink'] = "<a href='".$row['filename']."'>".$row['image']."</a>";$row['fulltitle'] = $row['title'];$row['title'] = cn_substr($row['title'],$titlelen);if($row['color']!='') $row['title'] = "<font color='".$row['color']."'>".$row['title']."</font>";if(preg_match('#b#', $row['flag'])) $row['title'] = "<strong>".$row['title']."</strong>";//$row['title'] = "<b>".$row['title']."</b>";$row['textlink'] = "<a href='".$row['filename']."'>".$row['title']."</a>";$row['plusurl'] = $row['phpurl'] = $GLOBALS['cfg_phpurl'];$row['memberurl'] = $GLOBALS['cfg_memberurl'];$row['templeturl'] = $GLOBALS['cfg_templeturl'];if(is_array($dtp2->CTags)){foreach($dtp2->CTags as $k=>$ctag){if($ctag->GetName()=='array'){//传递整个数组,在runphp模式中有特殊作用$dtp2->Assign($k,$row);} else {if(isset($row[$ctag->GetName()])) $dtp2->Assign($k,$row[$ctag->GetName()]);else $dtp2->Assign($k,'');}}$GLOBALS['autoindex']++;}$artlist .= $dtp2->GetResult()."\r\n";}//if hasRowelse {$artlist .= '';}}//Loop Col}//loop line$dsql->FreeResult("al");} else{die(" Request Error! ");}AjaxHead();echo $artlist;
exit();
这样就可以实现列表页无限加载,如果需要首页无限加载最新文章,删除typeid相关的代码即可!
相关文章:
-
帝国CMS是什么程序 帝国CMS是一套开源的静态页面程序,凭借超高的扩展性,很多知名的新闻站点、行业站点都是应用的帝国CMS后端。因为帝国CMS和dedecms一样都是生成静态页面的,所以非常利于...
-
域名解析DNS分为显性URL和隐形URL,显性URL和隐形URL有什么区别?隐形URL和显性URL哪个更有利于SEO?显性URL相当于域名了302重定向,隐形URL使用iframe框架技术隐藏真实目标地址,显性URL更有利于...
-
在常见的CMS系统中,我对dedecms算是比较熟悉的,自己网站用的也是这个系统。系统功能强大使用灵活,相信这也是它受到大多数中小站长青睐的原因。 再好的系统也有照顾不周的地方,很多站...
-
这篇文章主要为大家详细介绍了dedecms后台增加php导出excel功能实现办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。 不少朋友希望织梦的后台...
-
第一次使用的插件是 pdfobject.js 百度网盘下载地址:http://pan.baidu.com/s/1kUPhYdT 加载 script src=/style/js/pdfobject.js /script script type=text/javascript window.onload = function (){ var success = new PDFObject({ url: pdf文件地...
-
网上有一种方法是copy+unlink来移动文件,但是遇到大文件时会消耗大量时间,对性能不怎么友好,可以使用rename()来移动文件,速度非常快 关于rename()函数 bool rename ( string $oldname , string $newname...
-
基于我们公司可选的几种推广方式: 一、关键词优化排名推广(推荐) 指定关键词推广,按天付费,推广我们业务中最重要的一些关键词,达到百度首页才收费,大概一个关键词10元/天左右。...
-
插件介绍 wordpress程序网站在发布文章时可以给每一片文章添加与之相关的TAG标签,对于TAG标签可以生成很多页面,增加搜索引擎对内容的抓取量。 WP Auto Keywords插件就是一款能自动给文章添加...
-
5.7 生成列表页 改动 include/arc.listview.class.php 1.先设置 关闭副栏目(在系统----系统基本参数性能选项里) 2.一般网站不需要 栏目交叉 交叉 所以 找到94行注释掉: //获得交叉栏目ID /*if($this-Type...
-
使用preg_replace将删除所有空白(包括制表符等) $string = user na me $string = preg_replace(/\s+/, , $string); echo $string; // username preg_replace(/\s/u, ,$string) u (PCRE8) 此修正符打开一个与perl不兼容的附加功能. 模式...