航空论坛_航空翻译_民航英语翻译_飞行翻译

 找回密码
 注册
搜索
查看: 1648|回复: 0
打印 上一主题 下一主题

dedecms调用discuz论坛帖子和图片方法大全 [复制链接]

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2010-8-22 01:05:23 |只看该作者 |倒序浏览
调用帖子内容摘要信息
- H; P4 ?+ C' n{dede:loop table="cdb_posts" sort="tid" row="3"}
3 B. T) p: z8 m<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',100)" /]</a>
- W8 L5 n/ N$ K. o' a[field:message function="cn_substr('@me',46)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
/ X8 u, A( h7 @2 Y; n</li>
' W3 y1 C0 i5 Y9 U{/dede:loop}
8 n$ T9 E1 A, V$ z6 K6 N
调用查看次数最多的帖子。 + \' j6 V5 g% i- h, Y1 S& [; C
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="views" row="8"} " B+ b, N% K$ a# c/ T* e% j
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
  Q3 W! W, E' S' L[[field:lastpost function="date('m-d','@me')" /]]
* ^. N, t( y( M1 ^/ y  B</li>
8 I/ e( C/ u2 d- C. I2 }{/dede:loop} 7 {& v2 s$ A' v- [9 n) h
调用回复次数最多的帖子。
/ o1 P$ \, X1 {' F( {7 i2 s: a{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="replies" row="8"} ' A1 _& @9 _$ \( A$ ~8 O
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> 7 W! g% o7 X/ D9 J8 [; y
[[field:lastpost function="date('m-d','@me')" /]] 2 t  }4 s+ t9 B% S7 W5 l( N1 l) R
</li>
: ^0 A- E' U6 j) }: I* w+ I{/dede:loop}
' [" Y) D7 q& r" s0 m" r# t5 x  R1 D调用精华帖子 帖子分为1级精华2级精华3级精华。精华越高排在最前面 , l7 T0 R0 P0 ]4 E* x0 ?- N& ~2 A
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="digest" row="8"} 6 W- S4 D7 O& \' I$ k( h! k( W
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',26)" /]</a> $ R7 H2 ]4 a7 ?0 v
[[field:lastpost function="date('m-d','@me')" /]]
- M+ d% d$ v/ T; C9 ~( ~</li>
& p5 H- y/ U$ g% _% n% H% t2 `{/dede:loop}
, i7 K$ {; C& }2 E+ t5 g4 z! P调用帖子内容摘要信息
5 ^2 |$ s5 M) `
# w2 _9 O, h# q2 V$ H+ ]2 ]first=1 只显示第一楼主题的信息。first=0 就是只显示回复信息 fid=4就是板块的id tid就是主题的id sort="tid" 按主题倒序排序
) k( H' p& [" ]$ z2 r" n' d
1 G  d8 p$ _; d3 {9 R1 c3 R4 J{dede:loop table="cdb_posts" if="first=1 and fid=4" sort="tid" row="3"} 4 X' y4 k: l" X4 Y) [3 J
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> 0 c- Q, ^: y& U
[field:message function="cn_substr('@me',60)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a> ' f, Z0 Q! n' Y& ]
</li> ! T) Q+ x5 e. N: l" K: j0 m
{/dede:loop}
# v' Z% M1 B, x% r$ x  A幻灯片调用DZ论坛图片显示 6 a! W9 U$ d  H  I4 [) P# {, ]9 v5 ?2 p
<script language='javascript'>
# X! J9 j/ C9 u2 N' I8 |: Klinkarr = new Array();
4 J. X8 j/ Q4 i: b4 C; zpicarr = new Array();
# ?& U9 p: f7 ~) Z) b+ h8 w/ x+ J2 Qtextarr = new Array(); 3 P' b8 h9 y+ a5 {5 ^6 }, b. C
var swf_width=280;
$ }0 U+ D5 u5 W+ s5 d2 Dvar swf_height=192; 7 e9 d! r& y0 L% O: l  p5 V
var files = ""; 5 \9 @& O$ A7 X
var links = ""; * a$ `$ h4 C7 @& D* `' n( X
var texts = ""; 7 h/ W8 y1 u& a1 q
//这里设置调用标记 1 L( k% H1 [' O$ F/ s
{dede:sql sql="SELECT`cdb_attachments`.`aid`, `cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`, 0 Z$ f7 @1 {: w
: \  q: j6 y9 \7 D) u5 T! l
`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads` ON `cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE
' l, \; f) x# E+ _0 v# V; z, v7 w! t
`cdb_attachments`.`readperm`='0' AND `displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "}
" S$ @, ]% U1 W7 q6 M0 A! e& c# |2 g0 p) w, w& V2 R' L% J
linkarr[[field:global.autoindex/]] = "/bbs/viewthread.php?tid=[field:tid /]";
. |& E' j6 W2 z0 d4 Q* }. \picarr[[field:global.autoindex/]] = "/bbs/attachments/[field:attachment/]"; 6 u$ f& _! ?6 ]
textarr[[field:global.autoindex/]] = "[field:subject function='html2text(@me)'/]";
8 f. e" S8 U3 z. C1 Q{/dede:sql}
                   //原来的替换成这里,本人亲自测试可用,上面红色字 dz7.2版本数据表里那个值的内容不一样 换掉就可以的 我索性直接删掉了红色字 不影响 随便了 4 d. T) T4 y2 ?9 G. y* P

3 g  E  ?, l; P: h- |for(i=1;i<picarr.length;i++){
- u( p' ]2 a& ^4 E; |9 Q4 fif(files=="") files = picarr;   H+ g1 s: V+ _  C. \: G" U
else files += "|"+picarr;
! T6 l6 ^: X. ^7 C) y% M/ T}
! v7 L9 v+ U% G6 R% G  Dfor(i=1;i<linkarr.length;i++){ & p7 B$ ]* X& g7 J- I
if(links=="") links = linkarr;
* z$ E9 ?; q$ v- H. t/ ^else links += "|"+linkarr;
/ V& L/ G/ B- C- v! d} 6 b# J! u, K$ `
for(i=1;i<textarr.length;i++){ 3 v' ?# I% R- S& h. L
if(texts=="") texts = textarr; 6 I% \$ x0 I! j* w( f. X, L% |% j
else texts += "|"+textarr; ' R) m( B; a3 g6 c, Y& H- X
}
! S) m& G  ^( o# `9 |  ~document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
; v( I$ P) K: \2 ^, }# V! ?8 ~. i% n1 D: A% ^0 \
codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'" " B/ S+ k" g/ n& `, J5 |% G
# v, I7 n, w" O! B7 Q
height="'+ swf_height +'">');
; [( `7 E1 y( c9 U8 M9 edocument.write('<param name="movie" value="{dede:global.cfg_templeturl/}/images/bcastr3.swf"><param name="quality"   w' _8 x1 X" j3 N0 h4 }% n
: {$ g. a8 q8 |& E4 Q
value="high">'); 8 K7 L8 ]3 |) Z" f( |% x% J
document.write('<param name="menu" value="false"><param name=wmode value="opaque">');
/ j# U8 e" f, C  x. D7 C/ R0 Ddocument.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'">');
5 o- C4 J, H9 w0 s% g9 odocument.write('<embed src="{dede:global.cfg_templeturl/}/images/bcastr3.swf" wmode="opaque" + Y8 p6 e$ h- C' _8 l
, |0 |' G7 _# ~0 s% \
FlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'& menu="false" quality="high" width="'+
) h; I& A5 ^" e) o# [! b2 K; d- i1 D: l
swf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash" . d! B) K+ \, w5 p4 g

2 k1 S: J; z% M$ S! U  ~+ Opluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>'); ! v8 S# k: k- H, Z" h
</script>
- H+ L% E) P! C9 f, j

9 |- n  d' A( C2 I  {! M/ @" N. i8 ~) x- l
调用Dz论坛图片,特定板块。AND `cdb_threads`.`fid` ='12' GROUP BY tid LIMIT 0,5 中的fid就是板块id limit 0,5 就是5条数据
0 t2 H# {8 Q' H8 C# p3 o5 R& ?
$ F( r/ W% X) Q9 l5 \6 w9 a& }/ |
- M& P3 A  A9 i$ e1、论坛最新主题调用代码如下: {dede:loop table="cdb_threads" sort="tid" row="10"}
7 R" m# P: o# v6 X4 [<a href="/bbs/viewthread.php?tid=[field:tid /]">
5 m. S8 y( I/ {·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
, {: h" s/ _% B8 ]! c% e* d- q. n% t<br/> ; i( f, g7 W) S
{/dede:loop} , I, a$ [+ l0 e! B8 p9 a+ s
这个连接地址你可以写相对路径,也可以写绝对路径。 9 c. t" R" e5 X/ T  l: r# R" c
  如果是discuz动态论坛,链接地址如[url=]http://bbs.xxx.com/viewthread.php?tid=[/url][field:tid /]
, K0 \4 c2 `& d, y9 ^  如果是discuz静态论坛,连接地址如[url=]http://bbs.xxx.com/thread-[/url][field:tid /]-1-1.html
! r8 _8 d6 w  ~( w: }2、论坛指定版块帖子调用方法:
2 u4 r$ `  x2 J: }  c; Y3 u{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" }
! H9 J7 Q% v% n" o<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
# m2 l' d: H" z- [+ Q·[field:subject function="cn_substr(' @ me',50)" /] </a> * N) o' x% z, Z
<br/>
  t. A; K% U) K{ /dede:loop }   c& I9 t$ L8 o
其中的fid=1 or fid=2是论坛主题分类id,可以按照自己要求来修改,如果是一个分类就直接写fid=x
# j* i, y. R" K/ `3 Q0 I% s2 L3、论坛调精华主题调用代码如下:
6 f7 g1 X( {8 K+ F! E( A8 ]{dede:loop table="cdb_threads" if="displayorder!=-1" sort="tid" row="10"} 6 n/ m, B. D: T: l, S: E
<a href="/bbs/viewthread.php?tid=[field:tid /]">
3 J3 Y5 i; B1 x8 G" Y- B: E9 U& b·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> : |' L3 B- l5 f* n5 p* P% E6 L
<br/> ' F) L, ?3 V! z* G" b; }6 Y
{/dede:loop}
8 F2 O) ~5 U; w" U# P; n如果想调用某个板块的精华主题代码如下: 6 o8 ~" }1 o+ i# e
{dede:loop table="cdb_threads" if="fid=5 and displayorder!=-1" sort="tid" row="10"} - k" {# E* J  j5 y: k
<a href="/bbs/viewthread.php?tid=[field:tid /]">
: k  r# D) Y, y! B* C8 Z1 u·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
% c, Y& ?0 t0 N3 q) x<br/> ; u* k+ Z& P' @
{/dede:loop}
% }8 L0 k' j- z" d+ a9 {) u5 ^其中的fid=5是论坛主题分类id,可以按照自己要求来修改, 3 t* E+ c' q( [: A1 `
  如果想调用论坛所有的板块的最新精华主题只要去掉fid=5 and 就可以了。
) c9 p: m! a- R3 r4、调用的帖子列表这可以按查看次数排序,代码如下: " I" G9 n7 ^6 N5 x5 U; s$ n1 o
{dede:loop table="cdb_threads" sort="views" row="10"} ; ~( ~+ q9 D2 H: ^, f
<a href="/dz/viewthread.php?tid=[field:tid /]"> $ n8 i1 }0 c; J" K9 E
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
4 z8 T9 ]. U' t* X/ M<br/>
! L2 T! }, l7 K: X  x0 a{/dede:loop}
* K; A% K0 t! z* @, u其中sort="views" 就是控制按照查看次数排序的代码 4 Y& S- _; x  X" m! @: o
5、论坛置顶版块帖子调用方法举例:
$ z8 v- U# m1 g{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" }
6 O; r1 s5 q$ E* i9 b$ x8 k1 \<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank"> 2 k( Q7 B4 |% @# u! E
·[field:subject function="cn_substr(' @ me',30)" /]</a> <br>
- S1 F) U8 Z% O{ /dede:loop } 8 h( \$ o* \4 V9 R9 `9 J
6、论坛版块名称调用方法
! Z9 c$ N7 F% C$ L{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" }
. S8 J% R$ u8 a) e( Q* y2 o' }<a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' @me',30)" /] </a>
" D4 @$ \2 r* v{ /dede:loop }
9 \* }+ j8 z! j" X9 ?1 J注:这种方法这个还有点问题,它会将论坛分区、版块都调出来。
2 ?$ h1 y. `: ?' ?3 x  c) ]但是我们可以不用 loop方式 换用sql语句来调用(这种方法万能 呵呵!!)下面看图
9 y* u/ u  J6 i, ~1 x% K0 M8 J
) s0 P4 B/ {! z2 G! p
5 K* ~' ^& R: j% p/ @0 ?, L" f& e
% ]+ l' ~" \3 G; O; _版块都是放在上面表中的
% O4 S) e3 t" A- p- @表部分结构如下:
: |8 {( h  `3 z5 p$ n9 _5 l$ ^. L0 ?& q! n! g+ U$ Z: K& w

3 n( l) d2 L/ ~  U# _+ c3 P
  M% |! \$ T. A0 e这样我们就一目了然了
1 [" x) H" @$ {' w用sql调用 第一个版块里的子版块 也就是 11111111   , 2222222, 333333333,4444444444四个板块名称;方法如下: 4 k$ O) R. W8 {7 e- f" T& @
{dede:sql sql="select fid,fup,type,name from cdb_forums where fup='1' GROUP BY fid LIMIT 0,4"}
) A6 b4 J6 v+ H7 X% O# z( G- o<a href="/bbs/forumdisplay.php?fid=[field:fid/]">·[field:name function="cn_substr(
[url=]</a[/url]> " X  R1 Q3 H, J+ R8 U
{/dede:sql}

) P6 [2 D6 c+ z' m. j
: N* }# }1 h3 X- Z. Y/ y" T" {# ?/ z$ h8 g" a% [7 P8 p% f
附:dedecms的LOOP 标记规则 2 Q( U5 b. M- X% P; \3 j
  功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作
- s7 {0 R2 Y' N/ b3 z  适用范围:所有模板 . ~; r% x  o! `7 R, }/ r
  基本语法: / y2 z1 \  D" ]$ [
  { dede:loop table=' sort='' row='' if='' } " s" D) \% w: G% A+ ]6 J
  [1] table 表示查询的数据表 : l6 S2 y+ X7 R9 ?
  [2] sort 用于排序的字段 也可以加"views"(查看次数排列) 0 z9 j4 L, Q3 r+ P+ r
  [3] row 返回结果的条数
$ H5 a' M: N3 _. ]% K- F  [4] if 查询条件
! ~7 [0 g% d8 V% H! ^7、调用论坛帖子中的图片方法,网上搜到的,此方法同上(幻灯片的地方)
8 A6 Z/ d( C+ ?3 |- t{dede:sql sql="SELECT`cdb_attachments`.`aid`,`cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`,`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads`
* n* _1 |7 j& v5 C8 V1 W7 FON`cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE `cdb_attachments`.`readperm`='0' AND`displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "}
7 q* c- R% ], H( ~9 k/ q<a href="/bbs/viewthread.php?tid=[field:tid /]">
1 C; U0 h, V" T) ?<img src="/bbs/attachments/[field:attachment/]" ALT="[field:subject/]" width="100" height="80" border="0" />
+ ^. F* A% x0 |$ c4 n</A>
, E' W+ {: M: q  P1 w{/dede:sql}
您需要登录后才可以回帖 登录 | 注册


Archiver|航空论坛 ( 渝ICP备10008336号 )

GMT+8, 2025-6-16 12:36 , Processed in 0.026001 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部