dedecms列表页如何控制分页显示页数
1、其实就是在css里写好样式就可以了
2、要注意哦,织梦列表页分页样式默认是带有li标记的
3、可以修改列表系统文件删除li标记,当然也可以直接在css里定义li样式
4、下面是织梦各列表的php文件,可以自己修改包括实现其他功能等
include/ 下
arclistviewclassphp 栏目列表分页样式
arcarchivesclassphp 内容列表分页样式
arctaglistclassphp TAG列表分页样式
arcfreelistclassphp 自由列表分页样式
arcsearchviewclassphp 搜索列表分页样式
梦客吧织梦模板
为您解答
望采纳
按理说你复制来的代码应该是有效的,看代码调用了一个javascript方法,是不是javascript文件没有加载完整?
这是我调用的方法:
HTML部分:
<div class="newdigg" id="newdigg"><div class="diggbox digg_good" onmousemove="thisstylebackgroundPosition='left bottom';" onmouseout="thisstylebackgroundPosition='left top';" onclick="javascript:postDigg('good',38)">
<div class="digg_act">顶一下</div>
<div class="digg_num">(0)</div>
<div class="digg_percent">
<div class="digg_percent_bar"><span style="width:0%"></span></div>
<div class="digg_percent_num">0%</div>
</div>
</div>
<div class="diggbox digg_bad" onmousemove="thisstylebackgroundPosition='right bottom';" onmouseout="thisstylebackgroundPosition='right top';" onclick="javascript:postDigg('bad',38)">
<div class="digg_act">踩一下</div>
<div class="digg_num">(0)</div>
<div class="digg_percent">
<div class="digg_percent_bar"><span style="width:0%"></span></div>
<div class="digg_percent_num">0%</div>
</div>
</div>
</div>
<script language="javascript">getDigg(38);</script>
JS部分:
function postDigg(ftype,aid){
var taget_obj = documentgetElementById('newdigg');
var saveid = GetCookie('diggid');
if(saveid != null)
{
var saveids = saveidsplit(',');
var hasid = false;
saveid = '';
j = 1;
for(i=saveidslength-1;i>=0;i--)
{
if(saveids[i]==aid && hasid) continue;
else {
if(saveids[i]==aid && !hasid) hasid = true;
saveid += (saveid=='' saveids[i] : ','+saveids[i]);
j++;
if(j==20 && hasid) break;
if(j==19 && !hasid) break;
}
}
if(hasid) { alert("您已经顶过该帖,请不要重复顶帖 !"); return; }
else saveid += ','+aid;
SetCookie('diggid',saveid,1);
}
else
{
SetCookie('diggid',aid,1);
}
myajax = new DedeAjax(taget_obj,false,false,'','','');
var url = "/plus/digg_ajaxphpaction="+ftype+"&id="+aid;
myajaxSendGet2(url);
DedeXHTTP = null;
}
function getDigg(aid)
{
var taget_obj = documentgetElementById('newdigg');
myajax = new DedeAjax(taget_obj,false,false,'','','');
myajaxSendGet2("/plus/digg_ajaxphpid="+aid);
DedeXHTTP = null;
}
确保加载了JS文件:
<script language="javascript" type="text/javascript" src="/include/dedeajax2js"></script>
主要就是控制一下:listsize这个参数就可以了,如果只需要10页就设置成5,因为的参数会乘以2的方式来显示,如果是3,就是显示6个页码。
<div class="dede_pages">
<ul class="pagelist">
{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/}
</ul>
</div><!-- /pages -->
希望对你有所帮助
PS:那你直接设置成4好了,显示8页,这样也可以啊。。。其实这些都是无所谓的。。只要没影响整体页面的布局就可以了(个人看法)
本文实例讲述了dedecms列表页调用文章正文内容的方法。分享给大家供大家参考。具体分析如下:
一般来说,在列表页面要获取文章内容简单描述的话我们可以直接使用description标签就可以了,但是如果要有很多估计我们需要进行一些简单的修改。
在制作织梦模板的时候,有的时候我们需要调用文章部分内容,用[field:description/]标签字数不够多(数据库设计字段是varchar(255)的),另外修改了文章内容但是摘要还需要手动修改,所以只能调用文章正文内容了
实现织梦DedeCMS列表页调用文章正文的方法有两种,不过都是使用的dede:arclist标签,如果使用dede:list标签的话,第一种方法是调用不出结果的
以下是织梦DedeCMS列表页调用文章正文的第一种方法,代码如下:
复制代码
代码如下:
{dede:arclist flag='h' row='10′}
<h1><a
href='[field:arcurl/]'>[field:title/]</a></h1>
<p>[field:id runphp='yes'] $aid = @me; $row =
$GLOBALS['dsql']->GetOne("Select body From 'dede_addonarticle' where
aid='$aid' "); @me =
cn_substr(strip_tags("{$row['body']}"),400);[/field:id]<a
href='[field:arcurl/]'>阅读详细</a></p>
{/dede:arclist}
代码中的数字400是用来设置需要调用多少内容的,因为调用的是body里面的内容,如果有里面包含代码的话也会被调用出来,这点比较不好,不过可以使用html2tex()函数解决一下
第二种方法则是利用了织梦可以自定义模型内容数据,并调用的原理,把文章模板的body字段看做在自定义的,调用的代码如下:
复制代码
代码如下:
{dede:arclist row='10' addfields='body'
channelid='1'}
<p> [field:body
function='cn_substr(html2text(@me),600)'/]</p>
<span
class="more">
<a href=" [field:arcurl/]" style="text-decoration:none;
color:#990000;"& gt; [详 情]
</a>
</span>
{/dede:arclist}
以下是这种方法的详细说明:
1addrields=”字段一,字段二…”
2idlist:文章编号,调用指定内容
3function=’cn_substr(html2text(@me),600)’ 将文章内容转化为文字格式
4channelid,模型编号,文章默认为1,查看位置:后台–核心–内容模型管理
两种方法各有优劣,第一种方法比较繁琐,不是那么容易看懂,还是比较推荐采用第二种方法实现织梦DedeCMS列表页调用文章正文的功能的
谁说dede:list 标签不能调用body内容,现在就告诉你,直接就可以调用
第一步,打开后台 核心-->频道模型-->内容模型管理-->普通文章,在列表附加字段中添加body
第二步,在dede:list语句中指定addfields='body',然后直接用[field:body/]调用全部内容
实例代码如下:
复制代码
代码如下:
{dede:list pagesize='18' addfields='body'}
<li>
<p>[field:body/]</p>
<p><a
href="[field:arcurl/]"
title="[field:title/]">[field:title/]</a></p>
</li>
{/dede:list}
另外,如果像摘要一样调用可以用,代码如下:
复制代码
代码如下:
[field:body
function='cn_substr(html2text(@me),200)'/]
替代:
复制代码
代码如下:
[field:description
/]
调出文章前200个字符内容,经过这两步,可以彻底关掉系统默认的文章摘要功能,最后还有就是官方的一个[field:description/]字段了,这个如果对于要求几十个字的完全可以了,但是如果太多字此字段就无效了
希望本文所述对大家的dedecms建站有所帮助。
你和我前二天的需求一样,都是在主站上调用bbs的内容 不过如果你的bbs和主站的数据库在一台服务器上的话,你的方法有可能导致dedecms解析模板出问题,因为你select_mysql_db了我的解决方法是在bbs上开一个类似api的东东,用file_get_content远程抓取过来 用的是这篇文章里说的例子: dedecms模板中使用php语法 http://wwwphperzcom/phpcms/phpcms/061933G20113371html
你想改css排版的问题吧?还是要调用这些二级栏目的代码?
如果是要这些代码的话,你查看浏览器里的源代码,找到这几个栏目名称,里面有生成的这些栏目的代码。如果是要查看调用方式的话,就在deafult里的列表页里list_arcitlehtm
0条评论