Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[发布] Discuz X2 论坛帖子调用秘籍:用标签实现站外调用首页调用等

[复制链接]
忧郁的乞丐 发表于 2012-2-24 10:15:30 | 显示全部楼层 |阅读模式
本帖最后由 忧郁的乞丐 于 2012-2-24 10:17 编辑

本来想要站外调用帖子,搜了下,结果搜到一些还不错的东西。转过来分享。不是本人原创,但是忘了作者。额。。
希望对大家有用。。
       以下是针对帝国CMS写的Discuz X2 论坛帖子调用秘籍,如果是其它系统,比如织梦CMS,请参考本秘籍修改代码即可用。

Discuz X2 论坛帖子调用秘籍1、新帖子调用(动态地址)

[e:loop={"select tid,subject,dateline  from pre_forum_thread order by tid desc limit 10",10,24,0}]
<li><span><?=date('Y-m-d',$bqr[dateline])?></span><a href="http://www.longqia.com/forum.php?mod=viewthread&tid=<?=$bqr[tid]?>&extra=page%3D1" target="_blank"><?=$bqr[subject]?></a></li>
[/e:loop]

Discuz X2 论坛帖子调用秘籍2、精华帖子调用(动态地址)

[e:loop={"select tid,subject,dateline,digest  from pre_forum_thread where digest!=0 order by tid desc limit 10",10,24,0}]
<li><span><?=date('Y-m-d',$bqr[dateline])?></span><a href="http://www.longqia.com/forum.php?mod=viewthread&tid=<?=$bqr[tid]?>&extra=page%3D1" target="_blank"><?=$bqr[subject]?></a></li>
[/e:loop]

Discuz X2 论坛帖子调用秘籍3、新帖子调用(静态地址)

[e:loop={"select tid,subject,dateline  from pre_forum_thread  order by tid desc limit 4",10,24,0}]
<li><span><?=date('Y-m-d',$bqr[dateline])?></span><a href="http://www.longqia.com/thread-<?=$bqr[tid]?>-1-1.html" target="_blank"><?=$bqr[subject]?></a></li>
[/e:loop]

Discuz X2 论坛帖子调用秘籍4、精华帖子调用(静态地址)

[e:loop={"select tid,subject,dateline,digest  from pre_forum_thread where digest!=0 order by tid desc limit 4",10,24,0}]
<li><span><?=date('Y-m-d',$bqr[dateline])?></span><a href="http://www.longqia.com/thread-<?=$bqr[tid]?>-1-1.html" target="_blank"><?=$bqr[subject]?></a></li>
[/e:loop]

Discuz X2 论坛帖子调用秘籍5、热帖调用 (动态地址)回复达到20,及更多

[e:loop={"select tid,subject,dateline,replies  from pre_forum_thread where  replies>=20 order by tid desc limit 10",10,24,0}]
<li><span><?=date('Y-m-d',$bqr[dateline])?></span><a href="http://www.longqia.com/forum.php?mod=viewthread&tid=<?=$bqr[tid]?>&extra=page%3D1" target="_blank"><?=$bqr[subject]?></a></li>
[/e:loop]

Discuz X2 论坛帖子调用秘籍6、热帖调用 (静态地址)回复达到20,及更多
[e:loop={"select tid,subject,dateline,replies from pre_forum_thread where replies>=20 order by tid desc limit 10",10,24,0}]
<li><span><?=date('Y-m-d',$bqr[dateline])?></span><a href="http://www.longqia.com/thread-<?=$bqr[tid]?>-1-1.html" target="_blank"><?=$bqr[subject]?></a></li>
[/e:loop]

灵动标签太强大了
真的很强大
只要看明白数据表
想调用啥就调用啥

不会sql语句?不怕!这个照搬就行!
不懂数据表?这个真不怕!phpmyadmin 打开数据表看看就行了

不说没用的了
请看实例:【新手复制模仿即可】

Discuz X2 论坛帖子调用秘籍7、调用论坛最新10个帖子:

<DIV>
<UL>
[e:loop={"select tid,subject from cdb_threads order by tid desc limit 10",10,24,0}]
<li><a href="http://www.longqia.com/bbs/viewthread.php?tid=<?=$bqr[tid]?>" target="_blank"><?=sub($bqr[subject],0,40,false)?></a></li>
[/e:loop]
</UL>
</DIV>

给不懂得sql的新手的翻译说明:
select tid,subject from cdb_threads order by tid desc limit 10",10,24,0
这句话的意思是:
从 cdb_threads 这个数据表中 选择 tid,subject 两个数据,按照tid顺序排列10个
<li><a href="http://www.longqia.com/bbs/viewthread.php?tid= <?=$bqr[tid]?> " target="_blank"> <?=sub($bqr[subject],0,40,false)?> </a></li>
<?=$bqr[tid]?> 意思是展示 cdb_threads 这个数据表中的 tid 这个字段,
<?=sub($bqr[subject],0,40,false)?> 意思是展示 cdb_threads 这个数据表中的 subject 这个字段,并且截取40个字符,也就是20个汉字

以上的解释够通俗易懂的了吧?看不懂代码没关系,把那些< >当中的看不懂的东西,就当做一个你不认识的汉字看待,复制粘贴即可

Discuz X2 论坛帖子调用秘籍8、调用论坛10个精华帖子,按顺序排列:

<DIV>
<UL>
[e:loop={"select tid,subject from cdb_threads where digest <>0 order by tid desc limit 10",10,24,0}]
<li><a href="http://www.longqia.com/bbs/viewthread.php?tid=<?=$bqr[tid]?>" target="_blank"><?=sub($bqr[subject],0,40,false)?></a></li>
[/e:loop]
</UL>
</DIV>

跟上面一样,不同的就是加上了 where digest <>0 也就是选择带有digest的帖子;

Discuz X2 论坛帖子调用秘籍9、调用论坛10个访问最多的帖子,按访问顺序排列:

<DIV>
<UL>
[e:loop={"select tid,subject from cdb_threads order by views desc limit 10",10,24,0}]
<li><a href="http://www.longqia.com/bbs/viewthread.php?tid=<?=$bqr[tid]?>" target="_blank"><?=$bqr[subject]?></a></li>
[/e:loop]
</UL></DIV>

Discuz X2 论坛帖子调用秘籍10、论坛帖子排行调用:

<DIV>
<UL>
[e:loop={"select fid,name from cdb_forums order by threads desc limit 10",10,24,0}]
<li><a href="http://www.longqia.com/bbs/forumdisplay.php?fid=<?=$bqr[fid]?>" target="_blank"> <?=$bqr[name]?> </a></li>
[/e:loop]
</UL></DIV>

fid,name,threads 是dz论坛数据表cdb_forums 中的三个字段,分别代表:论坛板块id,论坛板块名,论坛板块内的帖子
所以以上代码的意思就是:
用灵动标签调用cdb_forums这个数据表中的id,name这两个数据,并且按照threads的多少排列;调用的内容fid赋给了 <a href="http://www.longqia.com/bbs/forumdisplay.php?fid=<?=$bqr[fid]?>" 当中的fid,调用的字段name赋给了<?=$bqr[name]?> ,即前台模版中显示的板块名字

通过以上三个简单的例子,大致可以明白,灵动标签可以直接调用数据库里的字段,需要用一个sql语句读取这个字段,如果出现错误的话,最常见的一种原因就是数据表不存在,也就是你的数据表没设定好,一般默认安装的discuz论坛不用修改上面的代码。

Discuz X2 论坛帖子调用秘籍11、啥也不说了,灵动标签调用uchome显示会员头像的代码我也分享出来了

[e:loop={"select uid,username from uchome_space order by credit desc limit 9",9,24,0}]
<div><a href="http://www.longqia.com/home/space.php?uid=<?=$bqr[uid]?>" target="_blank"><img src="http://www.longqia.com/ucenter/avatar.php?uid=<?=$bqr[uid]?>&size=small&type=real" width="48px" height="48px" ></a></div>
<div><a href="http://www.longqia.com/home/space.php?uid=<?=$bqr[uid]?>" target="_blank"><?=$bqr[username]?></a></div>
[/e:loop]

一夜没睡觉,就研究出这点东西,热门会员头像,最新日志,最新话题,记录,代码都差不多,自己替换一些字段就行了。基本上是discuz uchome 能调用的我都调用了

Discuz X2 论坛帖子调用秘籍12、再来分享一下吧,下面这个为调用论坛最新信息:

[ecmsinfo]'select subject as title,tid as id from cdb_threads order by tid desc limit 10',0,30,0,24,7,0[/ecmsinfo]

其他的参数就不多讲了,帝国的教材很详细。

Discuz X2 论坛帖子调用秘籍13、调用特定主题的帖子信息:

[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]

Discuz X2 论坛帖子调用秘籍14、调用多个板块的帖子:

[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]

如果还有其它关于Discuz X2 论坛帖子调用的问题,请回帖。

评分

3

查看全部评分

--CoffeE。 发表于 2012-2-24 10:21:33 | 显示全部楼层
友情支持了。
回复

使用道具 举报

233000988 发表于 2012-2-24 10:50:18 | 显示全部楼层
正要想,很全。。。先收藏了!
回复

使用道具 举报

abcnic 发表于 2012-2-24 10:59:11 | 显示全部楼层
支持呢 呵呵
回复

使用道具 举报

逃跑的人 发表于 2012-2-24 11:05:10 | 显示全部楼层
学习一下
回复

使用道具 举报

gxc6680378 发表于 2012-2-24 15:26:18 | 显示全部楼层
学习了。。。。。
回复

使用道具 举报

sunhai520 发表于 2012-2-24 18:42:54 | 显示全部楼层
好久没看到这么强的帖子了
回复

使用道具 举报

houyuan 发表于 2012-2-24 22:00:38 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

hjlsxb 发表于 2012-2-25 21:34:15 | 显示全部楼层
请教楼主,灵动标签 想实现:调用3天内回复数最多且有图片的日志
SQL怎么写?谢谢!
回复

使用道具 举报

 楼主| 忧郁的乞丐 发表于 2012-2-29 11:48:30 | 显示全部楼层
@yyhapy
看下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-16 13:58 , Processed in 0.030919 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表