dedecms 怎样能先调用列表页第一条记录,再调用第二条记录?
织梦。在dedecms中具有分页浏览的新闻列表页新闻栏目内容调用标是织梦,如果某个字段需要在前台列表页显示,则在前台参数中勾选“使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示。
用Dedecms中的arclist标签也是可以在列表页调用文章内容的,虽然在官方的标签说明中,arclist标签的底层标签中不包含body。调用的Html格式如下:
{dede:arclist typeid='' titlelen='' limit='' orderby='' addfields='body' channelid='1'}
[field:body/]
{/dede:arclist}
重点就是addfields='body' channelid='1'这部分,意思为调用ID为1的内容模型中的附加字段body。因此除了在列表页中加入上述代码外,还需要进入Dedecms后台--核心--频道模型--内容模型管理--普通文章,点击进入后,在“列表附加字段”这个项目中添加字段:body,这样就可以了。
如果你直接用dede的arclist循环调用某个栏目的列表,那么第一条与第二条必定样式相同,如果你真想实现同一列表2个样式,那就得分开做,如:
{dede:arclist row='1' orderby='pubdate' orderway='desc' ……其他参数,确保排序相同}
第一条信息………………
{/dede:arclist}
{dede:arclist row='X' orderby='pubdate' orderway='desc' limit='1,X' ……其他参数,X为第二个列的数量}
第二条以后的信息………………
第二条以后的信息………………
第二条以后的信息………………
X次
{/dede:arclist}
{dede:sql sql='Select utitle,uurl from dede_archives as a left join dede_uploads as u on aid=uarcid where alitpic <> uurl and aid=~id~'}
<li><a href="javascript:void(0);" ><img src="[field:url/]" alt="[field:title function='html2text(@me)'/]" width="110" height="76"/></a></li>
{/dede:sql}
联合查询dede_archives和dede_uploads两个表,读取该文章id下的文件
alitpic <> uurl这个语句是去除缩略图
根据这个sql语句套用就可以了,而且可以根据这语句在首页、列表、频道首页调用某篇文章的所有,做个相册特效、幻灯特效都很简单,比使用织梦自带的图集模型感觉要方便些
不过在首页、列表页调用所有,需要在commonfuncphp中写一个函数,根据文章id查询这两个表,返回一长串的<li><a href="javascript:void(0);" ><img src="[field:url/]" alt="[field:title function='html2text(@me)'/]" width="110" height="76"/></a></li>,语句和这个差不多
{dede:list pagesize='12' }
<h2><a href="[field:arcurl/]">[field:title/]</a></h2>
<p>[field:description function="cn_substr(@me,168)"/]<a href="[field:arcurl/]">[查看全文]</a></p>
{/dede:list}
文章列表标准调用方式,pagesize后为要调用文章的条数,title为标题,description为简介,后边的数字为控制简介的数字、自己调整、
<iframe
name="ss"
width="100%"
height="450"
scrolling="yes"
frameborder="0"
src="你要调用的地址"></iframe>
用这个试试看
注意将要调用的放到另一个页面中,页面属性边距都要设0
找到include\helpers\archivehelperphp文件130行,
// $tags = ($tags=='' $row['tag'] : ','$row['tag']);
将其注释掉用
$tags = "<a href='/tagsphp/"urlencode($row['tag'])"'>"$row['tag']"</a>";替换
0条评论