关于DedeEIMS的{dede:cattree}{/dede:cattree}使用方法

如果想在首页调用产品分类,只需要在代码中指定调用产品目录的id号,类似typdid=’4′;

下面示例代码:

      <dl class="e2e2e2 mT10">
        <dt class="caption"><strong class="mL5">{dede:lang.productcatalog/}</strong></dt>
        <dd class="body pB5">
          <ul id="navigation">
            {dede:cattree typeid =’4′}{/dede:cattree}
          </ul>
        </dd>
      </dl>

dede5.3.1版单页文档的编辑器取消

修改模板,在根目录下》dede》templets内
templets_one_add.htm(增加新页面模板)
此句:<?php GetEditor("body",$body,450);?>
改为:<textarea name=’body’ rows="20" style=’width:100%;height:400xp’></textarea>

templets_one_edit.htm(更新页面模板)
此句:<?php GetEditor("body",$row[‘body’],450);?> 
改为:<textarea name=’body’ rows="20" style=’width:100%;height:400xp’><?php echo $row[‘body’]?></textarea>

说明:上面是简化编辑器,不使用系统的编辑器,系统编辑器乱生成代码,比较麻烦,还不如手写。

dede5.31调用文档评论次数的方法

以前在5.1版的时候,_archives表中直接有个postnum可以显示共显示评论总数,可是在5.3却把这个字段给舍了,那么如何调出对文档的评论总数呢?找论坛里看到一位朋友的对5.1版时使用JS调用评论总数的方法改了改,请接着看…
首先在plus目录下,建立一个文件名为:feedcount.php,注意你的编码喔.内容如下:
 

Copy code

document.write("共有<?php
require_once(dirname(__FILE__)."/../include/common.inc.php");
$row = $db->GetOne("select count(*) as fc from #@__feedback where aid='{$aid}’");
if(!is_array($row)){
echo "0";
}else {
echo $row[‘fc’];
}
?>位用户了发表评论");

然后在你的模板中需要显示评论总数的地方,加入以下JS代码:
 

Copy code

<script type="text/javascript" src="{dede:field name=’phpurl’/}/feedcount.php?aid={dede:field.id/}"></script>

至此问题解决咯…. 我暂时还没发现问题…
 

DEDECSMv5.3 GBK版本列表页面出现乱码,无法翻页

 
图片:
第一步:将文件 include/datalistcp.class.php 用utf-8编码另存,将新的文件修改成别的名字,如:include/datalistutf.class.php

第二步:在wap.php中查找:require_once(dirname(__FILE__)."/include/datalistcp.class.php");
并修改为require_once(dirname(__FILE__)."/include/datalistutf.class.php");

成功!

注意:红色为原来的文件名,蓝色为修改后的文件名

此法针对GBK版WAP访问出现列表页乱码问题,UTF版没有此问题。

 

如何实现游客匿名给dede用户留言

查找了与guestbook相关的好几个文件最后发现原来匿名游客不能进行留言是由于member/inc/space_action.php 中保存留言部分的
checkrank(0,0)造成的,删除它既可。本人是菜鸟,也许这本来就是大家早就知道的,但是为了避免不知道的弟兄们走弯路,在这里贴一下 呵呵
else if($action==’guestbooksave’)
{
    CheckRank(0,0);
    $svali = GetCkVdValue();

自己做的v5.3.1中的一个Digg页面

不知道V5.3.1的Digg标记怎么调用的,也懒得问了,估计八成是没人回,于是自己写了一个。
 

{dede:arclist row=5 titlelen=16 orderby=goodpost sort=goodpost type=’image.’ imgwidth=’106′}
<li onmouseover=overtb(this) onmouseout=outtb(this)><a href="[field:arcurl/]"><img alt="点击下载[field:title /]" src="[field:picname/]" border="0"></a><span><a href="[field:arcurl/]">[field:title function=’ ( strlen("@me")>20 ? cn_substr("@me",20)."…" : "@me" ) ‘ /]</a></span><em>被顶过:[field:goodpost/] 次</em></li>
{/dede:arclist}
 

实现这个功能,需要修改一下 Arclist.lib.php第207行左右,增加一个排序方式
 

    //文档排序的方式
    $ordersql = ”;
    if($orderby==’hot’ || $orderby==’click’) $ordersql = " order by arc.click $orderWay";
    else if($orderby == ‘sortrank’ || $orderby==’pubdate’) $ordersql = " order by arc.sortrank $orderWay";
    else if($orderby == ‘id’) $ordersql = "  order by arc.id $orderWay";
    else if($orderby == ‘near’) $ordersql = " order by ABS(arc.id – ".$arcid.")";
    else if($orderby == ‘goodpost’) $ordersql = "  order by arc.goodpost $orderWay";  //增加顶一个的字段
    else if($orderby == ‘lastpost’) $ordersql = "  order by arc.lastpost $orderWay";
    else if($orderby == ‘scores’) $ordersql = "  order by arc.scores $orderWay";
    else if($orderby == ‘rand’) $ordersql = "  order by rand()";
    else $ordersql = " order by arc.sortrank $orderWay";

不要问我为什么不用Loop标签,因为我是在栏目循环时使用这个标签。
具体效果见:http://www.gerenweb.com/
 

dedecms模板:sql调用语句的写法(调用uchome和bbs)

本调用方法适用于程序装在同一数据中,如果表名修改请更换表名!

若是非同一数据库,请加前缀,切dede的数据库名必须对所调用的数据库有查询权限!

1、调用UCHOME最新日志:

{dede:sql sql=”Select subject,viewnum,blogid,uid From uchome_blog order by blogid desc limit 0,8″}
<li><A href=”http://www.backbak.cn/space.php?uid=[field:uid/]&do=blog&id=[field:blogid/]“>[field:subject function="cn_substr(‘@me’,24)" /]</A></li>
{/dede:sql}

2、调用BBS最新帖子

{dede:loop table=”cdb_threads” sort=”tid” row=”8″}
<li><a href=”http://www.backbak.cn/bbs/viewthread.php?tid=[field:tid /]“>
[field:subject function="cn_substr(‘@me’,24)" /]
</a></li>
{/dede:loop}