dedecms调用discuz论坛信息按照ID分类调用附详细说明

 更新时间:2008年06月01日 19:50:08   作者:  
dedecms调用discuz论坛帖子、图片数据的方法很多人都有需要,大家一起整理了,我这里只有新帖、版块帖子调用方法。精华、回复、图片的调用还没有,请高手补充。
这里说的不是dizcuz后台的js调用方法,那个一是不能很好的按照自己需求排版,二是对搜索引擎不友好。这里要得是loop标签模式。
复制代码 代码如下:

    //获得任意表的内容
    function GetTable($tablename="",$row=6,$sort="",$ifcase="",$InnerText=""){
        $InnerText = trim($InnerText);
        if($tablename==""||$InnerText=="") return "";
        $row = AttDef($row,6);
        if($sort!="") $sort = " order by $sort desc ";
        if($ifcase!="") $ifcase=" where $ifcase ";
        $revalue="";
        $this->dsql->SetQuery("Select * From $tablename $ifcase $sort limit 0,$row");
        $this->dsql->Execute();
        $ctp = new DedeTagParse();
        $ctp->SetNameSpace("field","[","]");
        $ctp->LoadSource($InnerText);
        while($row = $this->dsql->GetArray())
    {
          foreach($ctp->CTags as $tagid=>$ctag){
            if(!empty($row[$ctag->GetName()]))
            { $ctp->Assign($tagid,$row[$ctag->GetName()]); }
          }
          $revalue .= $ctp->GetResult();
        }
        return $revalue;
    }

从上面的代码看出来if里的参数实际就是判断语句,大家可以参考表进行任意输出了
1 论坛最新主题调用方法:

代码 

{ dede:loop table="cdb_threads" sort="tid" row="10" }
<a href="/dz/viewthread.php?tid=[field:tid /]">
·[field:subject function="cn_substr(' at me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])
</a>
<br/>
{ /dede:loop }


2 论坛指定版块调用方法:
{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" }
<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
·[field:subject function="cn_substr(' at me',50)" /]
</a>
<br/>
{ /dede:loop }


3 论坛置顶版块调用方法2:
{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" }
<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
·[field:subject function="cn_substr(' at me',30)" /]</a> <br>
{ /dede:loop }


4 论坛版块名称调用方法:
{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" }
 <a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' at me',30)" /]
</a>
{ /dede:loop }
注:这个还有点问题,它会将论坛分区、版块都调出来。



附:dedecms的LOOP 标记规则 

功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作
适用范围:所有模板
(1) 基本语法
{ dede:loop table=' sort='' row='' if='' } 
底层模板
{ dede:loop } 
(2) 属性
[1] table 表示查询的数据表
[2] sort 用于排序的字段
[3] row 返回结果的条数
[4] if 查询条件
(3)底层模板变量
这个标记的底层模板变量即是被查询表的所有字段 

===========================================

论坛最新主题:<br/>
{dede:loop table="cdb_threads" if="fid=9 and displayorder!=-1" sort="tid" row="10"}
<a href="/dz/viewthread.php?tid=[field:tid /]">
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])
</a>
<br/>
{/dede:loop}

相关文章

  • DEDECMS 重置管理员admin的密码的php文件

    DEDECMS 重置管理员admin的密码的php文件

    有时候会忘记dedecms的后台密码,不得不每次都比较麻烦的手工修改dedecms用户表的密码,有人给写成了php文件,这样就更方便了,注意了,是dedecms v5
    2008-07-07
  • DedeCMS v5.1 首页幻灯显示不正常的解决方法

    DedeCMS v5.1 首页幻灯显示不正常的解决方法

    dedecms下的图片总显示img/default.gif,任何新文章他都当成是幻灯片
    2008-06-06
  • dedecms织梦模板引擎标签工作原理

    dedecms织梦模板引擎标签工作原理

    织梦模板引擎是一种使用XML名字空间形式的模板解析器,使用织梦解析器解析模板的最大好处是可以轻松的制定标记的属性,感觉上就像在用HTML一样,使模板代码十分直观灵活,新版的织梦模板引擎不单能实现模板的解析还能分析模板里错误的标记。
    2022-12-12
  • DeDecms中实现更漂亮整齐的缩略图的实现代码

    DeDecms中实现更漂亮整齐的缩略图的实现代码

    dede的缩略图被很多人投诉过,其原因是直接将原有的大图限制块宽度直接缩小或放大,如此一来自然缩略图的效果非常差。本身php就允许对图片进行各种截取、重新生成、合并、压缩等操作,因此为了追求完美,你可以参考下文。
    2008-03-03
  • dedecms负载性能优化实例,三招让你的dedecms快10倍以上

    dedecms负载性能优化实例,三招让你的dedecms快10倍以上

    对dedecms表现出来的相对较差的性能也感觉比较迷惑,到底是什么在制约其负载效率?难道真的是某些脑残的dede论坛版主说的是因为mysql不堪重负的原因吗?
    2008-09-09
  • dedecms 内容页责任编辑调用代码

    dedecms 内容页责任编辑调用代码

    上班时间紧 写了有点乱 大家要看仔细点 不要改错了 (郑重声明:修改前请备份原文件) 第一步 先修改内容页模板吧 (打开 templetsdefault 目录下的 article_article.htm) 在你需要调用责任编辑的地方加入如下代码: 责任编辑:{dede:adminname/}
    2008-05-05
  • dedecms采集过滤常用代码集合

    dedecms采集过滤常用代码集合

    dede采集过程中最麻烦的莫过于采集的正则过滤函数的编写。说实在的,dede在这点上和很多ASP CMS系统比如说动易等,采集的时候直接选择几个选项就可以了,简单的完成想过滤的东西。不过他们只局限于对文章内容的过滤不是很好。而DEDE却能对所有采集的字段进行过滤,功能上弥补了易用性的缺陷,期待柏拉图在后续版本中加上选择性过滤功能。
    2008-03-03
  • 实现让DeDecms的上下文章链接限制在当前栏目内

    实现让DeDecms的上下文章链接限制在当前栏目内

    使用dedecms的时候,当打开某篇文章的时候,底部会有“上一篇”“下一篇”的链接信息,默认情况下,上下链接信息并没有区分栏目的属性,那么需要实现本栏目内的上下篇,如何实现呢? 基本思路:实现上下文章链接的函数位于GetPreNext(),我们在这个函数中获得栏目ID,然后修改SQL语句,在查询数据库的时候加上栏目ID的限制。
    2008-03-03
  • DEDE隔行变色以及分组加线修改方法

    DEDE隔行变色以及分组加线修改方法

    DEDE隔行变色及分组加线
    2008-11-11
  • dedecms v5.1 WriteBookText() code injection vul注入漏洞

    dedecms v5.1 WriteBookText() code injection vul注入漏洞

    来源:Ph4nt0m Google Group by Flyh4t@126.com QQ:378367942
    2008-05-05

最新评论