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

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

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

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2010-8-22 01:05:23 |只看该作者 |倒序浏览
调用帖子内容摘要信息
, T! I' t% e! u' u{dede:loop table="cdb_posts" sort="tid" row="3"} $ o! M& u; R, N) r9 y) T! @/ o
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',100)" /]</a>
" q  O- D* d! @[field:message function="cn_substr('@me',46)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a> 5 b( P0 P5 X  W6 J! G# |
</li>
( P- F4 D% a) D6 `* j- }3 j{/dede:loop}
1 C5 o/ f# r0 r7 k/ x
调用查看次数最多的帖子。   T; j( J( y2 {' q3 y* |8 X% W/ `% y
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="views" row="8"} 6 U9 [9 R& b; s4 K
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> 8 W  H) ~$ J+ o" v
[[field:lastpost function="date('m-d','@me')" /]]
! E7 Z& @9 J1 s7 A9 r7 [</li> 8 f# \4 x9 X" d. ^- Y" F& |
{/dede:loop} : [" l% |: ?( l- q
调用回复次数最多的帖子。 8 g+ x; C) }8 t4 f& A% o8 b
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="replies" row="8"} 2 K* I* l0 ^3 b- V0 V
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
0 G- E5 \+ Y7 ~- [( ]6 `: g( J[[field:lastpost function="date('m-d','@me')" /]] 4 k! j$ D; j0 W! _! i+ P) a. v
</li>
. S' m+ s. Z7 E1 m( b# {; p4 h{/dede:loop}
9 p  ?9 }  g, m5 a; v调用精华帖子 帖子分为1级精华2级精华3级精华。精华越高排在最前面
' Q& w& ~5 g. e; Q{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="digest" row="8"}
4 c2 U5 ~' Z1 U1 t# n0 w<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',26)" /]</a> - `& a* H1 v/ m0 ?( x
[[field:lastpost function="date('m-d','@me')" /]] ; b1 y9 R  F# q
</li> 6 g8 w% ^" r- V) f- O) F
{/dede:loop}
' p5 U1 d% @5 ]' m- \调用帖子内容摘要信息
8 T% n+ w8 `# W- v+ P) D, _
% n3 U. N2 z% W% ^' Hfirst=1 只显示第一楼主题的信息。first=0 就是只显示回复信息 fid=4就是板块的id tid就是主题的id sort="tid" 按主题倒序排序
' ^6 X: Q% N0 `( |6 |' X+ j, U8 |4 x; C- g+ L, Y
{dede:loop table="cdb_posts" if="first=1 and fid=4" sort="tid" row="3"}
0 y5 `6 w2 z6 M& D9 F+ c' p4 ?7 [<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
6 C8 P: N; _7 Z# w[field:message function="cn_substr('@me',60)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a> & [  `1 ^" h( r" G2 A
</li>
: v  L( z" \! |! e& c4 w{/dede:loop}
' w: O4 ]8 m( c* E  }; k5 @幻灯片调用DZ论坛图片显示
; W& b4 t+ y* c: w6 U# P1 R<script language='javascript'> * L: P* P' V  Q  V( u. |
linkarr = new Array();
1 V) w- E. h) Q/ j) e+ \) Fpicarr = new Array();
. ?2 K# D- v, V+ R9 ytextarr = new Array(); # M+ [+ x$ w" G+ J/ w! b; ]! X: n
var swf_width=280;
% e; T" ?, l: G/ F4 hvar swf_height=192; 1 h: n+ X, G7 O  |
var files = "";
/ n9 O9 x, X' i0 n6 b# x+ P$ ]: Rvar links = "";
' _. t, t; k- P. lvar texts = ""; 2 X8 ?; j" [: y" h6 @# z
//这里设置调用标记 1 h+ Z& Z. {+ F/ d* ]- H$ m; I
{dede:sql sql="SELECT`cdb_attachments`.`aid`, `cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`, % c) r! s: z& |! O) f5 k
& f3 a3 G$ i' H% Z- F2 ^' ?' V
`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads` ON `cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE
" G* @' o/ a3 u0 I' \: s: ]5 W, d7 _8 N) o: D! |: b# Y$ j3 `
`cdb_attachments`.`readperm`='0' AND `displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "} - r; i; f# }1 E
/ d9 i9 ]4 `+ c4 E. Y
linkarr[[field:global.autoindex/]] = "/bbs/viewthread.php?tid=[field:tid /]"; " M9 X* K3 P( ~
picarr[[field:global.autoindex/]] = "/bbs/attachments/[field:attachment/]";
. H, \" W+ T1 Atextarr[[field:global.autoindex/]] = "[field:subject function='html2text(@me)'/]"; ) V3 t$ N5 r' U. }0 C3 Q
{/dede:sql}
                   //原来的替换成这里,本人亲自测试可用,上面红色字 dz7.2版本数据表里那个值的内容不一样 换掉就可以的 我索性直接删掉了红色字 不影响 随便了
6 G( n, u) M" ^  M1 k5 _0 z
% Z, c: V# y3 v# |1 w; r9 i6 sfor(i=1;i<picarr.length;i++){
$ p$ H( B# L9 _/ C4 d8 Aif(files=="") files = picarr; & L& |& F$ `5 R! Y  l9 C
else files += "|"+picarr; & g' E3 ?6 p. \" l$ i# h
} # ^. l: l3 Q/ V  a4 `' i- A1 M- e
for(i=1;i<linkarr.length;i++){
' W( E- D* a2 E  w2 jif(links=="") links = linkarr; * b  q2 P/ B+ F8 U" E) g; q
else links += "|"+linkarr;
' W. O4 u" a9 I- K: _2 W}
3 A* z0 O4 w9 M7 |  h1 A, a9 \for(i=1;i<textarr.length;i++){
- b' Q, k( j7 v: C- w+ i) r" fif(texts=="") texts = textarr; 1 ~+ o, E, M( J9 ]2 N. t& q0 u( \
else texts += "|"+textarr; / m- |3 \3 {) ^8 g5 B" w! M
} & w. z5 C% L8 T; J/ V9 k3 ^
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
. \6 L' m! V5 l
) n: y  T* F8 gcodebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'"
8 m2 H! J+ A0 ?, g/ U
! |$ s  V. O+ k/ Z1 \% b! r3 }; j( V. Kheight="'+ swf_height +'">');
6 s) E0 U. w1 x* N# gdocument.write('<param name="movie" value="{dede:global.cfg_templeturl/}/images/bcastr3.swf"><param name="quality"
$ Y9 c3 g& M) N: s- I3 _4 p# W2 E3 M5 {0 |& N% c2 n7 C
value="high">');
8 U( |& F4 `7 S3 @. ]5 ]  J% wdocument.write('<param name="menu" value="false"><param name=wmode value="opaque">'); " J8 F+ Y, |: h4 ?# I( k  d
document.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'">');
. X& t8 O$ p% y4 fdocument.write('<embed src="{dede:global.cfg_templeturl/}/images/bcastr3.swf" wmode="opaque"
8 M4 A9 k0 W3 C. I" k  _9 k8 F4 ?- B1 H2 J
FlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'& menu="false" quality="high" width="'+ 0 z$ v( ~/ v! B/ T" b
4 B+ Y: g! e! L2 W  V3 U+ j: \0 _
swf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash"
3 C* ]4 {& J& x" m
$ o; S; u/ E: O" s$ Hpluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>'); % u$ g) J, Z4 T, k1 x6 I# ?  p+ \
</script>
# k% @7 ]: k: Z. u: ^
! ~/ K0 X" W+ O7 ]& L
6 f! w( }" @6 C3 b5 X
调用Dz论坛图片,特定板块。AND `cdb_threads`.`fid` ='12' GROUP BY tid LIMIT 0,5 中的fid就是板块id limit 0,5 就是5条数据 * P4 m0 n# [* }5 C
$ i( F: Z' d6 j( k" a" A, B' t
, H+ |. i# F# H" N" z
1、论坛最新主题调用代码如下: {dede:loop table="cdb_threads" sort="tid" row="10"}
% J, B! }7 `. [- v6 y. z. @2 t<a href="/bbs/viewthread.php?tid=[field:tid /]">
. c# F4 L7 J6 ^. e( ]9 Q·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
, R) h* z! v' M( l& ^<br/> ' C0 i' g7 u! Y
{/dede:loop} % d0 ]9 p/ q. `5 a/ n! q& Q! e
这个连接地址你可以写相对路径,也可以写绝对路径。 # X, A. @. ^: N
  如果是discuz动态论坛,链接地址如[url=]http://bbs.xxx.com/viewthread.php?tid=[/url][field:tid /] 4 A2 U) {- j( ^* G
  如果是discuz静态论坛,连接地址如[url=]http://bbs.xxx.com/thread-[/url][field:tid /]-1-1.html
2 T- o5 c- g/ g% X2、论坛指定版块帖子调用方法: 2 e" O3 A( E, e8 |, _
{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" }
2 m/ Z. N) l- r7 v6 _6 h<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank"> ; J% ]/ v9 T4 o1 ?2 ]0 B
·[field:subject function="cn_substr(' @ me',50)" /] </a>
! x" z: w3 z  R  H<br/>
/ ~4 O# k* q6 D0 r{ /dede:loop }
; @" P  U* {1 r9 X3 ]其中的fid=1 or fid=2是论坛主题分类id,可以按照自己要求来修改,如果是一个分类就直接写fid=x , }( Z3 ?" Q  K5 z8 r
3、论坛调精华主题调用代码如下: 1 i3 r4 ^/ @5 h8 n
{dede:loop table="cdb_threads" if="displayorder!=-1" sort="tid" row="10"}
/ q& E' y/ T/ d/ o* D<a href="/bbs/viewthread.php?tid=[field:tid /]">
4 r7 D! k' N2 ?3 T& J* I·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> 7 |- }' k; ?5 w# o7 ^. j8 {
<br/>
: F* D) J9 N: a3 S; o2 T9 \{/dede:loop}
9 i4 k, g+ j! \9 g7 @: X( d4 [1 ?如果想调用某个板块的精华主题代码如下:
- x6 [9 V2 V- M! N7 d; }; G{dede:loop table="cdb_threads" if="fid=5 and displayorder!=-1" sort="tid" row="10"}
2 j4 |  {4 p7 F/ Y2 W1 F1 a<a href="/bbs/viewthread.php?tid=[field:tid /]"> . Y% R  X/ l* P0 d( S
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> 8 z* C6 z0 y3 Z& G! @6 N
<br/>
* \+ Y& {! ?: Z" [3 k  x{/dede:loop} 0 U3 l9 W& u0 N1 r9 @. v
其中的fid=5是论坛主题分类id,可以按照自己要求来修改,
/ `4 U4 [  Y0 ~2 `  如果想调用论坛所有的板块的最新精华主题只要去掉fid=5 and 就可以了。 ) ]$ ?" q; U3 x% Z5 D
4、调用的帖子列表这可以按查看次数排序,代码如下:
/ G$ M; s. Y4 ~# L{dede:loop table="cdb_threads" sort="views" row="10"}
3 @4 B: m9 h: `<a href="/dz/viewthread.php?tid=[field:tid /]"> 3 u" x) e) o* v0 J+ D0 U& p6 E) \5 P
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
" H0 u0 W- [% E2 H' F<br/>
: }+ K, f6 D& u' Z# X2 P3 r/ u{/dede:loop} ( U5 Z: g6 ], C+ y0 x7 r9 j6 t
其中sort="views" 就是控制按照查看次数排序的代码 4 M3 T& S* G9 x: k% [  v) G
5、论坛置顶版块帖子调用方法举例: . D, E) s- j8 P6 X  n
{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" }
6 @$ J" n6 z9 j( S( u7 f1 h! }6 t. z<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank"> 7 C5 j) i9 K" z* o$ a
·[field:subject function="cn_substr(' @ me',30)" /]</a> <br>
: p& K/ c5 C, L- G/ B- m- `{ /dede:loop } . N6 P4 h- R; d; t( b, @' Z1 o
6、论坛版块名称调用方法! F: j6 D0 O& T: r: q- S; e
{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" } 0 J) {4 g) \& D+ ^! x
<a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' @me',30)" /] </a>
7 Q- a" G( q- E! I' t6 |{ /dede:loop }
* c: B! ^0 i4 Y5 Q) j( r$ i( ]* M注:这种方法这个还有点问题,它会将论坛分区、版块都调出来。
+ u* O% f% g" O- L/ x# _' l但是我们可以不用 loop方式 换用sql语句来调用(这种方法万能 呵呵!!)下面看图
4 p  [$ @0 \6 Z  |
& ?7 p5 C" p$ v" O7 R- o9 F, [+ |* s& A6 _3 `/ X
0 F+ }( L. u* K/ b2 c7 z' `* c
版块都是放在上面表中的 / m7 h5 F3 L7 I# I3 A
表部分结构如下:
1 c0 G2 c) z9 |0 f3 H; O9 V6 d4 m, `, F; B: w. T! T; q
/ R) ~0 y. L1 ~+ V* Y; i

( Q" M$ `9 q# I/ W: g( [- S3 J0 r8 z这样我们就一目了然了
9 Y  r' X2 a1 k9 }' i3 H用sql调用 第一个版块里的子版块 也就是 11111111   , 2222222, 333333333,4444444444四个板块名称;方法如下:
+ r" X! G* X2 d" p4 M8 ~; L9 G. B. _{dede:sql sql="select fid,fup,type,name from cdb_forums where fup='1' GROUP BY fid LIMIT 0,4"}
. O- |1 [! `. c  d! k<a href="/bbs/forumdisplay.php?fid=[field:fid/]">·[field:name function="cn_substr(
[url=]</a[/url]>
( k2 N6 g; ?* l6 t% S# L{/dede:sql}

& d; Y, G$ p5 m3 f% x
/ ~' R. r# F- ?' v2 n) z: M4 ]) i
% k  x$ M" M  m) b& T$ G: ^+ I, o- h附:dedecms的LOOP 标记规则 , I" i& b2 P6 t+ N: `2 ?
  功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作
" z0 c  \" w9 V! d7 ?  适用范围:所有模板
9 O; m+ C% {0 ]% M* _! D  基本语法:
8 M, f$ @0 \: ]* Y% P  { dede:loop table=' sort='' row='' if='' } + u1 t2 J( G  R  B7 u% _
  [1] table 表示查询的数据表 " g" z7 x/ j; l* h2 O+ g5 M) }: U
  [2] sort 用于排序的字段 也可以加"views"(查看次数排列)
- [9 G. d  b- H2 L5 o$ ]0 G: D# X  [3] row 返回结果的条数 ; b2 m( x# _3 L1 m8 f3 @
  [4] if 查询条件 # l- @  G* \  M7 N% C. L
7、调用论坛帖子中的图片方法,网上搜到的,此方法同上(幻灯片的地方)
+ u) P8 A9 d$ B{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`
' K; V" F& u! f1 z+ P- DON`cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE `cdb_attachments`.`readperm`='0' AND`displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "} 4 a' I" P  V3 W1 `
<a href="/bbs/viewthread.php?tid=[field:tid /]"> ) M2 v! ~" c8 E: W7 `
<img src="/bbs/attachments/[field:attachment/]" ALT="[field:subject/]" width="100" height="80" border="0" />
3 x5 ?8 {; V" Y# I3 v</A> 6 s: ~! L5 l% d" c) p
{/dede:sql}
您需要登录后才可以回帖 登录 | 注册


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

GMT+8, 2024-7-5 00:05 , Processed in 0.015600 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部