dedecms的arclist标签下调用自定义字段{dede:arclistpagesize='12'typeid='10'channelid='2'addfields='wuxing,shuzi,ptitle,palt,tlink'}<dd><ahref="http://[field:tlink/]"><imgclass="img"src="[field:litpic/]"alt="[field:palt/]"title="[field:ptitle/]"/></a></dd><ul><li><ahref="http://[field:tlink/]"title="[field:ptitle/]">[field:title/]</a></li><li><imgsrc="/image/sc.jpg"alt=""title=""></li><li>[field:description/]</li><li><spanclass="red">[field:wuxing/]</span><br><li><spanclass="red">[field:shuzi/]</span></li><p><ahref="http://[field:tlink/]"target="_blank"><imgsrc="/image/xq.gif"alt="查看详情"title="查看详情"></a></p></ul>{/dede:arclist}注:要获取附加表内容,必须符合两个条件1、指定channelid属性2、指定要获得的字段addfields='字段1,字段'如:{dede:arclistaddfields='filetype,language,softtype'row='8'channelid='3'}[field:textlink/]-[field:softtype/]<br/>{/dede:arclist}dedecms高级搜索调用缩略图{dede:fieldname='litpic'/}dedecms去后台验证码DATA文件夹里的\safe\inc_safe_config.php$safe_gdopen=’1,2,3,4,5,6′;这句代码“6”删除了,就可以了。dedecms密码重置见附件:radminpass.rardede的php当前时间加/减天当前时间:{dede:phprunphp='yes'}$ntime=time();@me=MyDate('Y-m-d',$ntime);{/dede:php}当前时间减1天:{dede:phprunphp='yes'}$ntime=time();@me=MyDate('Y-m-d',strtotime('-1day'),$ntime);{/dede:php}详情查看php的strtotime()函数。dede自定义表单提交后直接弹出对话框plus/diy.php查找$goto='/';$bkmsg='发布成功,请等待管理员处理...';修改为:echo'<script>alert("发布成功,请等待管理员处理...");history.go(-1);</script>';dede后台自定义表单一页显示50条后台/diy_list.php查找$datalist->pageSize=10;修改为:$datalist->pageSize=50;dede后台自定义表单全选功能后台/templets/diy_list.htm查找<b>内容列表</b>在后添加:<script>functionSelectAll(){varcheckboxs=document.getElementsByName("id[]");for(vari=0;i<checkboxs.length;i++){vare=checkboxs[i];e.checked=!e.checked;}}</script><ahref="#"onclick="SelectAll()">全选/反选</a>dede标题不受字数限制[field:fulltitle/]其中titlelen=’24′控制的是标题[field:title/]的字数为12个汉字,[field:fulltitle/]控制鼠标划过时提示完整标题名称。这样,无论是搜索引擎还是目标访客都相当友好了dede按权重排序{dede:arclistrow='10'titlelen='34'isweight="Y"orderby='weight'typeid='3'idlist=''}我们在使用orderby='weight'时需要在前面加上isweight="Y"来开启权重的使用参考:http://jingyan.baidu.com/article/93f9803f0efb98e0e46f552c.html{dede:list}增加按权重排序标签1、打开\include\目录中的arc.listview.class.php文件,搜索“排序方式”,然后在elseif($orderby=="lastpost"){$ordersql="orderbyarc.lastpost$orderWay";}elseif($orderby=="weight"){$ordersql="orderbyarc.weightasc";}else{$ordersql="orderbyarc.sortrank$orderWay";}这段代码中间添加以上红色代码。4、向下找到if(ereg('hot|click|lastpost',$orderby))或者是if(preg_match('/hot|click|lastpost/',$orderby))修改成if(ereg('hot|click|lastpost|weight',$orderby))或者是if(preg_match('/hot|click|lastpost|weight/',$orderby)),保存文件。这个时候在列表页里就可以使用{dede:listpagesize='5'orderby='weight'}进行排序了。dede导航栏顶级栏目和二级栏目同时调用{dede:channelartlisttypeid='top'}<ahref="{dede:fieldname='typeurl'/}">{dede:fieldname='typename'/}</a>{dede:channeltype='son'noself='yes'}<div><ahref="[field:typelink/]">[field:typename/]</a></div>{/dede:channel}{/dede:channelartlist}自定义模型,在arclist中调用自定义字段只需要在arclist中增加两个属性:1.channelid也就是模型的id,必须2.addfields需要调用的字段名,必须例如:{dede:arclistchannelid=18addfields='stname'}stname:[field:stname/]{/dede:arclist}注意,需要在模型设置中,对应的字段开启“允许在列表底层中调用,默认只在文档模板中调用”的选项dede数字递增,+后面加数字[field:globalname=autoindexrunphp="yes"]@me=@me+1;[/field:global]清空DEDE自定义表单所有数据TRUNCATETABLE`dede_diyform1;直接调用上一篇地址和下一篇地址的代码如下上一篇地址{dede:prenextget='pro'runphp="yes"}preg_match_all('/<a.*?(?:|\\t|\\r|\\n)?href=[\'"]?(.+?)[\'"]?(?:(?:|\\t|\\r|\\n)+.*?)?>(.+?)<\/a.*?>/sim',@me,$strResult,PREG_PATTERN_ORDER);@me=$strResult[1][0];{/dede:prenext}下一篇地址{dede:prenextget='next'runphp="yes"}preg_match_all('/<a.*?(?:|\\t|\\r|\\n)?href=[\'"]?(.+?)[\'"]?(?:(?:|\\t|\\r|\\n)+.*?)?>(.+?)<\/a.*?>/sim',@me,$strResult,PREG_PATTERN_ORDER);@me=$strResult[1][0];{/dede:prenext}dede调用二三级菜单{dede:channelartlisttypeid='11'}<liclass="por_content_c"><ahref="{dede:fieldname='typeurl'/}"title="{dede:fieldname='typename'/}">{dede:fieldname='typename'/}</a></li>{dede:sqlsql='Select*from#@__arctypewherereid=~id~ORDERBYidlimit0,200'}<liclass="por_content_c1"><ahref="[field:typedir/]/">[field:typename/]</a></li>{/dede:sql}{/dede:channelartlist}id为需要调用二三级菜单的一级菜单ID如果单独指定调用一个或者多个栏目的话{dede:channelartlisttypeid='1,2'}在里面指定你需要调用的id即可,如:{dede:channelartlisttypeid='1'}<liclass="por_content_c2"><ahref="{dede:fieldname='typeurl'/}"title="{dede:fieldname='typename'/}">{dede:fieldname='typename'/}</a></li>{/dede:channelartlist}也可以用sql直接调用单独栏目的子栏目附带一些css容易忘的:鼠标移动变小手:style="cursor:pointer;
dede用sql调用一个mysql时间,mysql的时间字段是时间戳展示的,突然不知道咋转换了,有点迷茫,结果找了下,发现其实很简单,直接用dede的就行了,如下:完整时间:[field:datelinefunction="GetDateMK(@me)"/]可以参考dede默认的时间调用,进行修改([field:pubdatefunction=MyDate('m-d',@me)/]):调用如:(10-15)([field:pubdatefunction=MyDate('Y-m-d',@me)/]):调用如:(2010-10-15)([field:pubdatefunction="GetDateTimeMK(@me)"/]):调用如:(2010-10-1514:36:08)[field:datelinefunction=MyDate('m-d',@me)/]
Dedecmschannel标签指定typeid时currentstyle无效的修复办法123{dede:channeltype='son'row='8'currentstyle="<li><ahref='~typelink~'class='thisclass'>~typename~</a></li>"}<li><ahref='[field:typelink/]'>[field:typename/]</a></li>{/dede:channel}这种调用方式currentstyle有效但是:123{dede:channeltype='son'row='8'typeid=1currentstyle="<li><ahref='~typelink~'class='thisclass'>~typename~</a></li>"}<li><ahref='[field:typelink/]'>[field:typename/]</a></li>{/dede:channel}这种调用方式currentstyle就无效了论坛里有人说用把typeid=xxx改成channelid=1,简直是无稽之谈。完美解决办法:修改include/taglib/channel.lib.php1if(($row['id']==$typeid||($topid==$row['id']&&$type=='top'))&&$currentstyle!='')改成1if(($row['id']==$refObj->TypeLink->TypeInfos['id']||($topid==$row['id']&&$type=='top'))&&$currentstyle!='')转自:http://www.zhimengba.com/jsjc/180.html
调用指定子栏目:{dede:channelartlisttypeid='2'type='son'}{dede:type}<ahref="[field:typelink/]">[field:typename/]</a>{/dede:type}{/dede:channelartlist}调用指定栏目:{dede:typetypeid='1'}<ahref="[field:typelink/]">[field:typename/]</a>{/dede:type}sql调用指定栏目及子栏目:{dede:sqlsql="SELECTtypename,typedir,defaultnameFROMdede_arctypewherereID=1ORDERBYsortrankASC"}◇<ahref="[field:typedirfunction='str_replace("{cmspath}","",@me)'/]/[field:defaultname/]">[field:typename/]</a><br/>{/dede:sql}
在dede5.7后台系统基本参数--互动设置--是否允许匿名评论选择是dede的评论功能就可以匿名评论了,但是我使用了下,发现在前台不管我用户名输入什么,在评论显示的时候都是显示“游客”而不是显示我输入的用户名。怎么才能显示我们输入的用户名呢,看了下dede的程序,找到了修改的地方,具体解决如下:打开/plus/feedback.php找到下面的代码//用户身份验证else{if($username!=''&&$pwd!=''){$rs=$cfg_ml->CheckUser($username,$pwd);if($rs==1){$dsql->ExecuteNoneQuery("UPDATE`#@__member`SETlogintime='".time()."',loginip='".GetIP()."'WHEREmid='{$cfg_ml->M_ID}';");}else{$username='游客';}}else{$username='游客';}}修改为://用户身份验证else{if($username!=''&&$pwd!=''){$rs=$cfg_ml->CheckUser($username,$pwd);if($rs==1){$dsql->ExecuteNoneQuery("UPDATE`#@__member`SETlogintime='".time()."',loginip='".GetIP()."'WHEREmid='{$cfg_ml->M_ID}';");}else{$username=$username;}}else{$username=$username;}}也可以直接去掉else判断。再试试就可以了。
html代码:<divclass="cp_list"><ul>{dede:listpagesize='16'}<li><atarget="_blank"title="[field:title/]"href="[field:arcurl/]"><imgsrc="[field:picname/]"width="145"height="140"/>[field:title/]</a></li>{/dede:list}</ul></div>css样式:.cp_list{margin:08px6px0;}.cp_listul{margin-top:15px;margin-left:0px;width:730px;}.cp_listulli{overflow:hidden;float:left;margin-left:0px;display:inline;margin-right:10px;}.cp_listulliimg{display:block;border:1pxsolid#aaa;margin-bottom:15px;}.cp_listullia{display:block;text-align:center;}.cp_listullia:hover{text-decoration:none;}.cp_listullia:hoverimg{border:1pxsolid#666;}红色部分是比较重要的调节部分,不了解css的切勿随便删除,删除可能会对360.火狐等浏览器不兼容