欢迎各位兄弟 发布技术文章
这里的技术是共享的
对应的标签函数文件
D:\xampp\htdocs\fzxx15gw\include\taglib\arclist.lib.php
{dede:arclist flag='c,p' orderby='firstorder' limit='0,4' typeid='all' }
当 typeid等于all时 在文章页或列表页 也可以取得网站所有的文章(这里是取前4个)
为什么 参数 id好像不起作用 idlist起作用 就用idlist吧
{dede:arclist }
{/dede:arclist}
flag = 'h' 自定义属性值:头条[h]推荐[c]图片[p]幻灯[f]滚动[s]跳转[j]图文[a]加粗[b]
noflag ='h' 同flag,但这里是表示不包含这些属性
最好用 [field:id/] 不用 [field:aid/]
用 orderby='id' 不用 orderby='aid'
[field:litpic /] 这个是缩略图
dede_uploads 这个表的
`dede_uploads` (`aid`, `arcid`, `title`, `url`, `mediatype`, `width`, `height`, `playtime`, `filesize`, `uptime`, `mid`)
url 字段 表示的是真正的大图 url 这个是 图片的地址
在{dede:arclist/} 这个标签中有个[field:global.autoindex/],是从1开始自增,
文章的索引值(从1开始) 有一点需要注意的是,。
代码:
{dede:global name='itemindex'/} // 用于 chanelartlist 从1开始
[field:global name='autoindex' /] // 用于 arclist、list 从1开始
[field:global name='autoindex' /] // 用于 channel 从0开始
[field:autoindex runphp='yes'] @me=$GLOBALS['autoindex']-1;[/field:autoindex]
-1就代表从0开始,
arclist 里面 [field:typeurl/]指的是栏目的url;;; [field:typelink/] 指的是 typelink=<a href='typeurl'>typename</a>
{dede:arclist flag='h' limit='0,1' typeid='66' titlelen=42 infolen='120' imgwidth='124' imgheight='94' }
<h2><a title="[field:fulltitle/]" href="[field:arcurl/]" target="_blank" >[field:title/]</a></h2>
{/dede:arclist}
<div class="onenews">
{dede:arclist flag='h' limit='0,1' typeid='66' titlelen=42 infolen='120' imgwidth='124' imgheight='94' }
<!--infolen='160' 只控制 infos [field:infos/] 不能控制 description -->
<h2><a href="[field:arcurl/]">[field:title/] [field:fulltitle/] </a></h2>
<p>[field:description/]...<a href="[field:arcurl/]">[查看全文] </a></p>
{dede:field.description runphp='yes'}
if(@me<>'' )@me = '<div class="intro">'.@me.'</div>';
{/dede:field.description}
{/dede:arclist}
</div>
[field:litpic/] img图像的url
[field:image/] <img 的图像>
<img 的图像带链接
{dede:channel type=’top’}
[field:global name='autoindex' runphp='yes']
if(@me%3!=0){@me=1;}
else{@me=2;}
[/field:global]
{/dede:channel}
[field:pagestyle runphp='yes'] @me= (@me==3 ? '<li>' : '');[/field:pagestyle]
{dede:field name='pagestyle' alt='根据不同的页面风格输出不同的头信息' runphp='yes'}
if(@me==3) {
@me = '<ul class="e8">';
}
else if(@me==2) {
@me = "
<center>
<a href='javascript:dPlayBig();' class='c1'>原始图片</a>\r\n
<a href='javascript:dPlayPre();' class='c1'>上一张</a>\r\n
<a href='javascript:dPlayNext();' class='c1'>下一张</a>\r\n
<a href='javascript:dStopPlay();' class='c1'>自动 / 暂停播放</a>\r\n
</center>
";
}
else {
@me = '';
}
{/dede:field}
{dede:arclist flag='a' row='6' orderby='pubdate'}
<li><span>[field:pubdate function="MyDate('m-d',@me)"/]</span><a href="[field:arcurl/]">[field:title/][field:shorttitle/]</a></li>
{/dede:arclist}
{dede:arclist flag='a' limit='0,1' typeid='133'}
<h2><a href="[field:arcurl/]">[field:title/]</a></h2>
<p>[field:description/]...<a href="[field:arcurl/]">[查看全文]</a></p>
{/dede:arclist}
{dede:arclist flag='h' limit='1,4'}
<li><span class="date">[field:pubdate function="MyDate('Y-m-d h:i:s',@me)"/]</span><a href="[field:arcurl/]">[field:title/]</a></li>
[field:description function='cn_substr(@me,80)'/]...
{/dede:arclist}
dl class="tbox">
<dt><strong>最近更新</strong></dt>
<dd>
<ul class="d2 ico2">{dede:arclist row=6 orderby=pubdate}
<li><span class="date">[field:pubdate function="MyDate('m-d',@me)"/]</span><a href="[field:arcurl/]">[field:title/]</a></li>{/dede:arclist}
</ul>
</dd>
</dl>
dl class="tbox">
<dt><strong>图文资讯</strong></dt>
<dd>
<ul class="e1">{dede:arclist row=5 orderby=pubdate type='image.' imgwidth='124' imgheight='94'}
<li><a href="[field:arcurl/]">[field:image/]<span class="title">[field:title/]</span></a></li>{/dede:arclist}
</ul>
</dd>
</dl>
<ul class="c1 ico2">
{dede:arclist sort='hot' subday='30' titlelen=42 row=10}
<li><a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:arclist}
</ul>
<ul class="d4">
{dede:arclist flag='c' titlelen=42 row=6}
<li><a href="[field:arcurl/]">[field:title/]</a>
<p>[field:description function='cn_substr(@me,80)'/]...</p>
</li>{/dede:arclist}
</ul>
<ul class="f1">
{dede:arclist orderby='scores' row='8' subday='30' titlelen='42'}
<li> <a href="[field:arcurl/]">[field:title/]</a> <span><small>点击:</small>[field:click/]</span> <span><small>评价:</small>[field:scores/]</span></li>
{/dede:arclist}
</ul>
{dede:arclist titlelen='60' row='8'}
<li><span class="date">[field:pubdate function="MyDate('m-d',@me)"/]</span><a href="[field:arcurl /]">[field:title /]</a></li>
{/dede:arclist}
{dede:arclist row=14 titlelen=32 orderby=rand}
<li><a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:arclist}
{dede:arclist flag='f' row='5'}
linkarr[[field:global.autoindex/]] = "[field:arcurl/]";
picarr[[field:global.autoindex/]] = "[field:litpic/]";
textarr[[field:global.autoindex/]] = "[field:title function='html2text(@me)'/]";
{/dede:arclist}
<ul class="c1 ico2">{dede:arclist sort='hot' subday='30' titlelen=42 row=10}
<li><a href="[field:arcurl/]">[field:title/]</a></li>{/dede:arclist}
</ul>
<ul class="d4">
{dede:arclist flag='c' titlelen=42 row=6}
<li><a href="[field:arcurl/]">[field:title/]</a>
<p>[field:description function='cn_substr(@me,80)'/]...</p>
</li>{/dede:arclist}
</ul>
<div class="hot mt1">
<dl class="tbox">
<dt><strong>本月热点</strong></dt>
<dd> <!--30天以内-->
<ul class="c1 ico2">{dede:arclist sort='hot' subday='30' titlelen=42 row=10}
<li><a href="[field:arcurl/]">[field:title/]</a></li>{/dede:arclist}
</ul>
</dd>
</dl>
</div>
但是有时候我们会发现DEDE模板里的 [field:textlink/] 也是表示文章链接。那么遇到这个标签时想把文章改成新窗口打开怎么办呢?
其实很简单!把
[field:textlink/]
改成
<a href="[field:arcurl/]" target="_blank">[field:title/]</a>
即可!
底层模板字段
ID(同id),typeid,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,color,writer,
source,litpic(同picname),pubdate,senddate,mid, lastpost,scores,goodpost,badpost,notpost,
description(同infos),filename, image, imglink, fulltitle, textlink, typelink,plusurl, memberurl, templeturl,stime(pubdate 的”0000-00-00”格式)
textlink = <a href='arcurl'>title</a>
typelink = <a href='typeurl'>typename</a>
imglink=<a href='arcurl'><img src='picname' border='0' width='imgwidth' height='imgheight'></a>
image = <img src='picname' border='0' width='imgwidth' height='imgheight' alt=’titile’>
http://www.dededev.com/a/DEDEjiaocheng/2011/0201/2298.html
{dede:arclist flag='c' titlelen=42 row=6}
<li><a href="[field:arcurl/]">[field:title/]</a>
<p>[field:description function='cn_substr(@me,80)'/]...</p>
</li>
{/dede:arclist}
{dede:arclist}
里面使用 [field:global.cfg_templets_skin/]
arclist 的参数
(1)flag
flag 可以是 flag='h,c,f' 的形式
flag 头条[h]推荐[c]幻灯[f]特荐[a]滚动[s]加粗[b]图片[p]跳转[j]
对应的表是 dede_arcatt
在 dede_arcatt 表的增加 比如
9 z 资讯
10 t 特色治疗技术
11 d 经典
还要修改表的结构 dede_archives 的flag 的类型
改成 set('c','h','p','f','s','j','a','b','z','t','d') 这样才能保证 z,t,d 能插入
那么在前台的 flag 的值 就可以有 flag='z' 等 等
dede中有个最常见和重要的标签,就是arclist 。今天用limit调用发现limit不管你输入多少,都只能调用10条,比如3,18和3,80效果都一样,都只能出来10条。
无奈,上dede官方论坛搜索,发现同病相怜者真不少,没人回复。但是今天自己的站又等着用,只能靠自己。通过研究mysql语句,解决方法如下:
{dede:arclist limit='3,37' typeid='7' titlelen='40'} //此句无效,只能出前10条
应该改为:{dede:arclist limit='3,37' row="37" typeid='7' titlelen='40'} //37对应替换即可
原因是跟mysql中的limit语法和select语句有关。
DEDE。arclist文章页、列表页调用【所有栏目】热门、最新等文章的方法
2011-08-08 8:44
方法:typeid='top' 或者typeid='asdas'任意字母不为空不为数字 写上这一个属性就可以了
{dede:arclist orderby='pubdate' titlelen='28' row='7' typeid='top' }
如果是在文章页 这篇文章又是最新刚发布的,那么最新文章里就会包含这篇文章,想要去除这篇文章,可以加limit限制
{dede:arclist orderby='pubdate' titlelen='28' row='7' typeid='top' limit='1,7'}
dede:arclist 增加 一个参数 $sorttypeid 它们的栏目的排序号 根据 typeid 是其父
对应的是dede_arctype 的字段 sortrank
DEDE织梦,文章页里的幻灯调用,能调用全部栏目的吗
2011-8-7 18:08 提问者:6148565 | 浏览次数:322次
如题,首页里的幻灯调用图片,是这样的代码~~可以成功调用所以文章里面a f属性的
但同样的代码,放到了文章页,就不行了,根本不调用
除非给{dede:arclist 加一个typeid=** 才行,但这样不能调用全部栏目的啊!!!
我要的是调用全部栏目相关文章,怎么改呢,现在和首页一样,但就是首页可以,文章页就不调用
//这里设置调用标记
{dede:arclist flag='a,f' row='8' orderby='pubdate'}
linkarr[[field:global.autoindex/]] = "[field:arcurl/]";
picarr[[field:global.autoindex/]] = "[field:litpic/]";
2011-8-7 18:18 最佳答案
设置 typeid='top' 就可以了
追问
成功了,谢谢,是不是在首页可以调用全部,文章页就必须加这个 typeid='top' 了啊???相关教程DEDE论坛都有吗~?还真没看过这个
回答
arclist 是必须要有 typeid 设置的,如果你没设置,默认是取的当前栏目的 typeid,而首页取到的是 top,所以你强制指定typeid=top就可以了。
//通过栏目ID获取栏目的名称
function GetTypeName($typeid){
$dsql = new DedeSql(false);
$row = $dsql->GetOne("select typename From #@__arctype where ID=$typeid; ");
return $row['typename'];
}
{dede:field name='typeid' function=”GetTypeName(@me)”/}
//先赋值
{dede:arclist flag="p"}[field:global name='autoindex' runphp='yes' ]global $arcSize;$arcSize=@me;@me='';[/field:global]{/dede:arclist}
//再输出
{dede:php}global $arcSize;echo $arcSize;{/dede:php}
{dede:arclist addfields='sex,gs,zw,money_year' row='10' channelid='17' orderway='pubdate' typeid='20'}
<tr>
<td>[field:title /]</td>
<td>[field:gs /]</td>
<td>[field:money_year /]</td>
<td>[field:zw /]</td>
</tr>
{/dede:arclist}
{dede:arclist addfields='tel,suoxuanzuanye,qqnumber,email' row='20' channelid='1' orderby='firstorder' orderway='desc' typeid='35' }
<tr>
<td class="tubiao [field:global name='autoindex' runphp='yes']if(@me=='1')@me='first';[/field:global]" ><img src="[field:global.cfg_templets_skin/]/images/index_r6_c2_r11_c7.gif" alt="[field:typename/]" /></td>
<td class="titletitle [field:global name='autoindex' runphp='yes']if(@me=='1')@me='first';[/field:global]" >[field:title/]</td>
<td class="tel [field:global name='autoindex' runphp='yes']if(@me=='1')@me='first';[/field:global]" >[field:tel function='getXingHao(@me,3,4)' /]</td>
<td class="suoxuanzuanye [field:global name='autoindex' runphp='yes']if(@me=='1')@me='first';[/field:global]" >[field:suoxuanzuanye/]</td>
<td class="qqnumber [field:global name='autoindex' runphp='yes']if(@me=='1')@me='first';[/field:global]" >[field:qqnumber function='getXingHao(@me,3,4)' /]</td>
<td class="email [field:global name='autoindex' runphp='yes']if(@me=='1')@me='first';[/field:global]" >[field:email function='getXingHao(@me,3,4)' /]</td>
</tr>
{/dede:arclist}