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

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

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

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2010-8-22 01:05:23 |只看该作者 |倒序浏览
调用帖子内容摘要信息
8 ], L6 h5 n  N  M" P- t& M{dede:loop table="cdb_posts" sort="tid" row="3"} , V, Y# A. W4 l+ u* I; Q3 a
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',100)" /]</a> & X: N0 R0 F! F- E
[field:message function="cn_substr('@me',46)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a> ) h' E9 j. ?+ j" h2 P
</li> + u: ?1 r8 V2 v, n" u
{/dede:loop}

% D; T) j; I* u; F调用查看次数最多的帖子。
' w9 `1 o( m+ Q  e3 Z- p6 I: L, |{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="views" row="8"} ' E, O2 i+ N" Y. s7 l( T
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> 0 i3 O, m3 j0 b, K8 v
[[field:lastpost function="date('m-d','@me')" /]] - `5 X. G9 c& |) F( y- h
</li>
, q5 i0 e; e8 N{/dede:loop}
! g: h4 K- w4 k+ W/ K调用回复次数最多的帖子。 + r8 ~* M3 K$ H' D% v3 o1 G5 z
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="replies" row="8"} 1 t+ u( I- b, N/ Q7 G
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
8 g* d/ v' E' |: x[[field:lastpost function="date('m-d','@me')" /]]
3 D6 v4 p; _& v  G</li> 6 p% Y7 D" X+ Q( f: v7 s$ J
{/dede:loop} 6 ]/ P2 R+ I2 M3 ?- G: t
调用精华帖子 帖子分为1级精华2级精华3级精华。精华越高排在最前面
; W( H0 U& Y: g4 C: p  \9 P: w{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="digest" row="8"}
+ G& ^+ y; \( T' g$ e<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',26)" /]</a> , e/ h- ^1 F  X8 G: F' |
[[field:lastpost function="date('m-d','@me')" /]]
! D5 }0 d# Z# R, {. D) \9 n/ h</li>
& r' ~7 @; c  T0 J: S, A! E{/dede:loop} ! E5 F! I6 B* a: j8 B
调用帖子内容摘要信息
5 t. V+ W+ _1 c+ s$ A8 U5 y* \( S' s5 |; Y
first=1 只显示第一楼主题的信息。first=0 就是只显示回复信息 fid=4就是板块的id tid就是主题的id sort="tid" 按主题倒序排序
+ s1 m- |6 a0 ]/ e) K/ c' K* y) P2 ]9 F& L) ?8 P4 j
{dede:loop table="cdb_posts" if="first=1 and fid=4" sort="tid" row="3"} ' q0 W  a+ S: v# t' k
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
7 Z, X6 z& Q! q3 B8 Q[field:message function="cn_substr('@me',60)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
& I. p8 }( C- o+ _% E! G0 O4 H</li> 1 F; w- G4 @8 ]- w% |
{/dede:loop} ; t& o' g/ @6 x' G( g
幻灯片调用DZ论坛图片显示
- a2 W5 g1 i, _" N: Q<script language='javascript'>
& z0 M4 U  {, N  d" Hlinkarr = new Array();
1 \. S8 m4 J) P: e; Epicarr = new Array();   R# x: S  j: [+ y! G* u3 q- u
textarr = new Array();
3 Q4 e& [  E# Z. o, d# nvar swf_width=280;
9 b) S6 t2 S1 U7 W$ fvar swf_height=192;
4 l/ P* V( F; d& v  E% xvar files = ""; ( k; q5 I- O. s0 @' }! H2 z2 J& }
var links = "";
  g/ k/ k" R$ n0 r, ^+ ?% P+ Mvar texts = ""; * Y* n  r) y& C8 m5 K$ v- R' C
//这里设置调用标记
$ f$ y1 X' ^! l- P# t6 x4 [; _{dede:sql sql="SELECT`cdb_attachments`.`aid`, `cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`,
- F% z; T; S# X2 j: S2 ?2 R1 T. W$ C  q2 l, r. A( c0 m
`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads` ON `cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE
; V# l- O  P1 U8 ~8 t1 \* V! W+ d: K$ `3 s0 M" d8 G# ]
`cdb_attachments`.`readperm`='0' AND `displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "} 1 k& \; o- V" S- m; H" ^

. j% t2 U( U% B; b# J/ l( Rlinkarr[[field:global.autoindex/]] = "/bbs/viewthread.php?tid=[field:tid /]";
5 n0 d! G% B0 f' Gpicarr[[field:global.autoindex/]] = "/bbs/attachments/[field:attachment/]"; 2 S# s* U7 W, p$ ~; ~6 q5 h
textarr[[field:global.autoindex/]] = "[field:subject function='html2text(@me)'/]";
, I( V9 a$ i3 R! p$ J{/dede:sql}
                   //原来的替换成这里,本人亲自测试可用,上面红色字 dz7.2版本数据表里那个值的内容不一样 换掉就可以的 我索性直接删掉了红色字 不影响 随便了
/ d# }: M% o. L$ P5 ^& n" n+ O" i- C3 w0 y# A8 c
for(i=1;i<picarr.length;i++){   V) ]! v5 r# ?4 h: k  Z  }, H
if(files=="") files = picarr; 3 t  t; C& h! ]" A# }* A6 d
else files += "|"+picarr; 8 [7 l3 K1 O2 ~$ L; ]( _
} 5 K( Z& u! c- @; |( j% N: p' S
for(i=1;i<linkarr.length;i++){
8 h0 v- G$ M, qif(links=="") links = linkarr;
# b; I$ d0 n2 _7 C" D$ [else links += "|"+linkarr;
% l- O8 {( {: \; V5 a} 0 t1 O! i  A  i+ e+ K! V8 b- j; O
for(i=1;i<textarr.length;i++){ " Y1 W2 T/ ~$ F, v; _! x* L/ J
if(texts=="") texts = textarr; 1 o" X8 H1 B0 Z& ]
else texts += "|"+textarr;
7 ~; f3 h& ]6 e% B( M} " w$ O6 I( Z2 O8 w
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" : d9 Y! p8 ]) `' L

: x& W$ w, p, f$ R, [/ Ncodebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'"
# P1 T6 t) i" Q# c9 k
( C3 T( I3 [- d" @3 n8 V& Yheight="'+ swf_height +'">');
/ V; ^9 ]& R7 K1 q& B3 Bdocument.write('<param name="movie" value="{dede:global.cfg_templeturl/}/images/bcastr3.swf"><param name="quality"
! D4 g, x, L7 [. M8 ~
* J% [3 N! ~, a* Q& v7 g6 Zvalue="high">');
" l9 D- N6 R1 U; m: x/ G, Ydocument.write('<param name="menu" value="false"><param name=wmode value="opaque">'); " _# R+ O8 J' C0 e! w: Z0 T0 G9 @: J
document.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'">');
7 H. k0 M6 c/ }8 Ydocument.write('<embed src="{dede:global.cfg_templeturl/}/images/bcastr3.swf" wmode="opaque"
2 n5 [/ R3 c- e, S: n2 F$ J8 q$ X  k7 S5 F; S
FlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'& menu="false" quality="high" width="'+
6 T$ T+ x) \; L2 y) R! v% f9 u4 q+ q7 U5 o
swf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash" ' u1 g% d6 v# o4 j6 i

) s0 @6 i; j" N; [6 k: Y. Kpluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>');
( J* E% S1 y$ |1 H, P6 F% L1 T</script>
9 u' H7 S0 f, D/ @7 e  b4 H
" @4 X' M, O+ A1 ]- X! O; C2 X) Z2 l  X
2 Y; r- t  a  T/ Y' G5 O: K$ E  A
调用Dz论坛图片,特定板块。AND `cdb_threads`.`fid` ='12' GROUP BY tid LIMIT 0,5 中的fid就是板块id limit 0,5 就是5条数据 " `8 n: n$ z$ N) E8 _0 K

+ `0 {" z0 P& Q! h$ g
2 I- G7 |; F7 O6 d1、论坛最新主题调用代码如下: {dede:loop table="cdb_threads" sort="tid" row="10"} + N1 U$ ?. w2 M6 J
<a href="/bbs/viewthread.php?tid=[field:tid /]"> ' m/ ], h  q" d4 O! k
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> " f/ l7 o# s! B: x1 f  r8 R
<br/>
  g: s% b( z+ y/ C- d$ Y* C{/dede:loop} ' k% z) C0 [( ^- G( g5 X; \' v' j& Q
这个连接地址你可以写相对路径,也可以写绝对路径。
3 I8 W( f$ c6 c+ v  如果是discuz动态论坛,链接地址如[url=]http://bbs.xxx.com/viewthread.php?tid=[/url][field:tid /]
: r0 D4 E# b% c  如果是discuz静态论坛,连接地址如[url=]http://bbs.xxx.com/thread-[/url][field:tid /]-1-1.html
5 n0 D' b2 `% P/ U% s' J# x1 q# j2、论坛指定版块帖子调用方法: " g* [# x5 z5 i, Q
{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" } : n5 l# `6 Z% S) U, p  m
<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
6 Z' E: P. G5 ~& A1 l# r·[field:subject function="cn_substr(' @ me',50)" /] </a> - a4 d3 X* t+ X4 I) r
<br/>
8 t% T( E2 e7 A{ /dede:loop } ' t6 @/ _# i8 O9 Z8 ?4 P5 X  H
其中的fid=1 or fid=2是论坛主题分类id,可以按照自己要求来修改,如果是一个分类就直接写fid=x 0 u- e, n# p# @  u. P
3、论坛调精华主题调用代码如下: ( ?  q' k+ M) h8 _
{dede:loop table="cdb_threads" if="displayorder!=-1" sort="tid" row="10"} ; E3 u& ?9 ~, |: V7 f. e: B
<a href="/bbs/viewthread.php?tid=[field:tid /]">
- O( C6 q+ v8 {6 T$ i6 L# w" _  p·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> / Y+ u# C6 s. r9 B/ ]& M
<br/>
2 ]$ }9 k# B. ?9 [# [7 M% }& O{/dede:loop} & f$ D/ y# w4 u/ ^& z$ A
如果想调用某个板块的精华主题代码如下: * Z0 \+ b1 d0 T$ A+ u
{dede:loop table="cdb_threads" if="fid=5 and displayorder!=-1" sort="tid" row="10"} * g/ _( {; s' f/ y! ]# S# ]
<a href="/bbs/viewthread.php?tid=[field:tid /]"> $ K9 X  P2 F$ I4 G1 t
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
5 w  {; i; N- b* B0 N<br/> * C. Y# \" n% ?" G1 t
{/dede:loop}
6 [* T/ l9 v1 @3 O+ a* Y其中的fid=5是论坛主题分类id,可以按照自己要求来修改, - X! F, p6 x( n7 Q- p& O
  如果想调用论坛所有的板块的最新精华主题只要去掉fid=5 and 就可以了。 " C- U7 e$ X; o* a# ^
4、调用的帖子列表这可以按查看次数排序,代码如下: " v* l/ r/ }) h; v
{dede:loop table="cdb_threads" sort="views" row="10"} - Z3 I3 b+ v% Y' }$ |5 o
<a href="/dz/viewthread.php?tid=[field:tid /]"> # F2 n% ^1 l% j& Z" T" n
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
1 m- D# E1 [- V<br/>
$ b" \6 k2 e9 w% K& I" y9 Y{/dede:loop} 4 ^* ?' o: F: o0 [& c0 h/ G
其中sort="views" 就是控制按照查看次数排序的代码
; `  D% [4 M' L" q& e- }1 U5、论坛置顶版块帖子调用方法举例:
" |1 X" k2 y* ?% A1 A4 \% Z{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" } $ H+ {0 J0 @/ y7 G5 D2 Y
<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank"> 5 L4 g5 ]$ b; x+ O9 U/ I7 ^
·[field:subject function="cn_substr(' @ me',30)" /]</a> <br> ; Z' Z/ d& @" G) @( g- S
{ /dede:loop }
8 }8 f1 D% r+ _* [6、论坛版块名称调用方法
* q+ A5 g/ z1 N{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" } 3 H: s, c. W" ]- ^' u3 F3 p) f* b
<a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' @me',30)" /] </a> * M) r& @3 x. R) I+ e
{ /dede:loop } & b" ~1 A# @5 i1 p2 D  y$ d
注:这种方法这个还有点问题,它会将论坛分区、版块都调出来。 " [7 D; {& [& \# U# J
但是我们可以不用 loop方式 换用sql语句来调用(这种方法万能 呵呵!!)下面看图 ) @" v8 o+ K' n# G$ r. u
" Q( ^0 O2 \" S/ K

0 F; d1 r( v" u& `, r4 A) i/ i) ~, _4 [* j& W
版块都是放在上面表中的 5 S6 \2 T7 O1 g* ?1 X
表部分结构如下:
. r8 s* \1 Q7 {, h
% |& L/ s' i, g- h3 c- H/ p2 o
2 @( {' V4 K. n; E
: X4 {0 N6 `2 t" g+ T9 K这样我们就一目了然了 7 [; e& |8 u/ @' ~# o
用sql调用 第一个版块里的子版块 也就是 11111111   , 2222222, 333333333,4444444444四个板块名称;方法如下: 5 D& N: `  c7 \5 w$ R; x
{dede:sql sql="select fid,fup,type,name from cdb_forums where fup='1' GROUP BY fid LIMIT 0,4"} 2 x& f5 u  ?& O* ~2 X0 v5 v
<a href="/bbs/forumdisplay.php?fid=[field:fid/]">·[field:name function="cn_substr(
[url=]</a[/url]> ! Y; @: }: X& s
{/dede:sql}

' d$ E$ m8 z" E" P+ Z0 E( Z. J
' ?) D# K% f  I; p4 H# O* y+ }# D' s$ u5 ~% k
附:dedecms的LOOP 标记规则
$ i$ y3 b5 K7 z7 i0 [$ U2 x9 D  功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作
: \  w! @" Q: C) @; W$ M  适用范围:所有模板
, D* p7 u9 O. C  基本语法:
& A9 O* A3 @" B  { dede:loop table=' sort='' row='' if='' }
( k$ J  D, w  f9 n" P  [1] table 表示查询的数据表 5 I5 Y% n4 B  @$ b* l$ C6 _
  [2] sort 用于排序的字段 也可以加"views"(查看次数排列)
/ c9 ]* G6 @# w$ U( u  [3] row 返回结果的条数 0 N  a. |, j' I, ?% w
  [4] if 查询条件 0 q% g8 Z/ u7 y# P7 k- o) I
7、调用论坛帖子中的图片方法,网上搜到的,此方法同上(幻灯片的地方)
) d: Q8 P* x/ X6 M{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` : K2 Z0 |/ ]7 ~- f& q0 z
ON`cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE `cdb_attachments`.`readperm`='0' AND`displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "}
  s- C+ S& X, a& @! x) l<a href="/bbs/viewthread.php?tid=[field:tid /]">
' _0 U; c& v( A- U5 P& V# A<img src="/bbs/attachments/[field:attachment/]" ALT="[field:subject/]" width="100" height="80" border="0" />   K+ i# |) c6 D$ F% ^& {
</A> & ?& E% V6 _  m" W; \8 H9 X
{/dede:sql}
您需要登录后才可以回帖 登录 | 注册


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

GMT+8, 2026-1-13 06:11 , Processed in 0.024001 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部