娜迦源码博客

解决帝国cms灵动标签调用discuz x1和x2帖子的办法

新帖(动态地址)
[e:loop={"select tid,subject,dateline from pre_forum_thread order by tid desc limit 10",10,24,0}]

[/e:loop]
精华(动态地址)
[e:loop={"select tid,subject,dateline,digest from pre_forum_thread where digest!=0 order by tid desc limit 10",10,24,0}]

[/e:loop]
新帖(静态地址)
[e:loop={"select tid,subject,dateline from pre_forum_thread order by tid desc limit 4",10,24,0}]

[/e:loop]精华(静态地址)
[e:loop={"select tid,subject,dateline,digest from pre_forum_thread where digest!=0 order by tid desc limit 4",10,24,0}]

[/e:loop]热帖 (动态地址)
回复达到20,及更多
[e:loop={"select tid,subject,dateline,replies from pre_forum_thread where replies>=20 order by tid desc limit 10",10,24,0}]

[/e:loop]热帖 (静态地址)
回复达到20,及更多
[e:loop={"select tid,subject,dateline,replies from pre_forum_thread where replies>=20 order by tid desc limit 10",10,24,0}]

[/e:loop]
灵动标签太强大了
真的很强大
只要看明白数据表
想调用啥就调用啥
不会sql语句?不怕!这个照搬就行!
不懂数据表?这个真不怕!phpmyadmin 打开数据表看看就行了
不说没用的了
请看实例:【新手复制模仿即可】
调用论坛最新10个帖子:


[e:loop={"select tid,subject from cdb_threads order by tid desc limit 10",10,24,0}]

[/e:loop]
给不懂得sql的新手的翻译说明:
select tid,subject from cdb_threads order by tid desc limit 10",10,24,0
这句话的意思是:
从 cdb_threads 这个数据表中 选择 tid,subject 两个数据,按照tid顺序排列10个

意思是展示 cdb_threads 这个数据表中的 tid 这个字段,
意思是展示 cdb_threads 这个数据表中的 subject 这个字段,并且截取40个字符,也就是20个汉字
以上的解释够通俗易懂的了吧?看不懂代码没关系,把那些< >当中的看不懂的东西,就当做一个你不认识的汉字看待,复制粘贴即可
调用论坛10个精华帖子,按顺序排列:


[e:loop={"select tid,subject from cdb_threads where digest <>0 order by tid desc limit 10",10,24,0}]

[/e:loop]
跟上面一样,不同的就是加上了 where digest <>0 也就是选择带有digest的帖子;
调用论坛10个访问最多的帖子,按访问顺序排列:


[e:loop={"select tid,subject from cdb_threads order by views desc limit 10",10,24,0}]

[/e:loop]
论坛排行:


[e:loop={"select fid,name from cdb_forums order by threads desc limit 10",10,24,0}]

[/e:loop]
fid,name,threads 是dz论坛数据表cdb_forums 中的三个字段,分别代表:论坛板块id,论坛板块名,论坛板块内的帖子
所以以上代码的意思就是:
用灵动标签调用cdb_forums这个数据表中的id,name这两个数据,并且按照threads的多少排列;调用的内容fid赋给了 ,即前台模版中显示的板块名字
通过以上三个简单的例子,大致可以明白,灵动标签可以直接调用数据库里的字段,需要用一个sql语句读取这个字段,如果出现错误的话,最常见的一种原因就是数据表不存在,也就是你的数据表没设定好,一般默认安装的discuz论坛不用修改上面的代码。
以上是我个人的经验,本人不懂得sql语言,也不懂php语言,就会一点简单的html和简单的英语,参考了以下几个帖子,在此对表示感谢!
http://bbs.phome.net/ShowThread/?threadid=29390&forumid=35 【这个是讲解用万能标签调用的】
http://bbs.phome.net/ShowThread/?threadid=80318&forumid=13
好像还看了其他的,反正我是使用帝国论坛搜索相关的帖子一个一个看过来的,然后一遍一遍的尝试,终于搞定了这些东西

[e:loop={"select uid,username from uchome_space order by credit desc limit 9",9,24,0}]

[/e:loop]
啥也不说了
灵动标签调用uchome显示会员头像的代码我也分享出来了
一夜没睡觉,就研究出这点东西
热门会员头像,最新日志,最新话题,记录,代码都差不多,自己替换一些字段就行了

基本上是discuz uchome 能调用的我都调用了
我也来分享一下吧
下面这个为调用论坛最新信息
[ecmsinfo]'select subject as title,tid as id from cdb_threads order by tid desc limit 10',0,30,0,24,7,0[/ecmsinfo]
其他的参数就不多讲了
帝国的教材很详细
调用特定主题的帖子信息
[ecmsinfo]'select subject as title,tid as id from discuz5.cdb_threads where fid=这里为要调用的主题帖子内容的FID order by tid desc limit 10',0,30,0,24,7,0[/ecmsinfo]
调用多个板块的帖子
[ecmsinfo]'select subject as title,tid as id from discuz5.cdb_threads where fid=数字 or fid=数字 order by tid desc limit 10',0,30,0,24,7,0[/ecmsinfo]

本文链接:https://www.wsx6.cn/post/880.html

版权声明:版权声明: 1:如非特殊说明,本站对提供的源码不拥有任何权利,其版权归原著者拥有。 2:请勿将该源码、软件进行商业交易、转载等行为,该源码、软件只为研究、学习所提供,该软件使用后发生的一切问题与本站无关。 3:本网站所有源码和软件均为作者提供和网友推荐收集整理而来,仅供学习和研究使用。如有侵犯你版权的,请来信(邮箱:393249296@qq.com)指出,本站将立即改正。

联系客服
网站客服 业务合作 Q交流群
673529708
返回顶部
请先 登录 再评论,若不是会员请先 注册