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

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

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

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2010-8-22 01:05:23 |只看该作者 |倒序浏览
调用帖子内容摘要信息
" f2 D/ W; o' M8 y$ R$ ~& L{dede:loop table="cdb_posts" sort="tid" row="3"}
5 ?: s. F9 }3 I( d<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',100)" /]</a> " Z! X' m% ?  }/ I$ N
[field:message function="cn_substr('@me',46)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a> 6 J. I; H5 T! V3 ~' R  L: n* e' {
</li> 1 U3 W  Q# c. ^9 O
{/dede:loop}

9 @( O+ A- I5 f7 B2 ~7 b调用查看次数最多的帖子。
% u) }+ R5 c2 B& [" K; x{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="views" row="8"}
3 c4 R: g2 n, p- K- }7 l<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> - N/ H( \# K9 n9 e
[[field:lastpost function="date('m-d','@me')" /]]
. r, O' d# g( i& R5 g</li>
  A4 Z$ r2 R- t! _! i{/dede:loop} 6 X4 r8 p. y8 G1 X% U, I3 x
调用回复次数最多的帖子。 1 G" U* w* |9 n. _
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="replies" row="8"}
# |% G* P3 M7 j$ [" g<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> 0 g. I. K+ x; F
[[field:lastpost function="date('m-d','@me')" /]]   H0 k3 y& y# k- T9 x3 A4 M
</li>
# D$ U$ P: u: U9 F, Y; X{/dede:loop} 4 f2 n! H' n. |/ t2 _  A
调用精华帖子 帖子分为1级精华2级精华3级精华。精华越高排在最前面
3 Y# t+ B; _$ ?- n; w& G: m6 X" Y{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="digest" row="8"}
) Q" H  q" F8 F: Y# y9 G<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',26)" /]</a>
% \7 i- }3 G5 W4 e: _[[field:lastpost function="date('m-d','@me')" /]] 7 a$ `6 n* a3 W- Y6 ]* c
</li>
# K: @( T1 w6 A7 |{/dede:loop}
3 {; m6 U' B9 U调用帖子内容摘要信息
1 Y. N) v, E6 t  N. ?! k
+ x9 Q4 B; {8 K7 x, ?- p1 Mfirst=1 只显示第一楼主题的信息。first=0 就是只显示回复信息 fid=4就是板块的id tid就是主题的id sort="tid" 按主题倒序排序 2 E+ D. Q" V( [, ?& Y* Z4 F
4 {/ T) s0 a: n/ a, Q) }
{dede:loop table="cdb_posts" if="first=1 and fid=4" sort="tid" row="3"} 8 E! h* U# Z9 \4 h0 k. r8 L
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> 2 [% `8 @% r5 l' u- `2 i
[field:message function="cn_substr('@me',60)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
3 a% c- ^6 y$ z</li>
  Y  q5 j4 Y' \* \; v{/dede:loop} & p4 q; F1 x: v) j+ j
幻灯片调用DZ论坛图片显示 # B4 _' M" F$ {$ {
<script language='javascript'>
/ [2 e: m, k3 [6 @linkarr = new Array();
3 h8 c3 o6 M; C4 K* _picarr = new Array(); 1 ?- ?# K* Q8 C7 a0 n. q3 d
textarr = new Array(); ! \$ w1 {+ t, V5 a
var swf_width=280; / l0 Q/ F1 O) Q4 O4 H! I" B
var swf_height=192;
% D9 a' H: `  |% o+ _0 b& u5 Ivar files = ""; ; l9 r/ E1 n+ a. [
var links = "";
4 D* T" e5 B, b7 j( L- Avar texts = "";
. Y6 g( ^9 i8 t' g7 b, B5 _8 p+ F; L* x//这里设置调用标记
5 K& G) i9 {# I5 U/ y2 s# S{dede:sql sql="SELECT`cdb_attachments`.`aid`, `cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`,
& f! b: k8 d# w* ]
( B/ t* T: a6 h& {* |`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads` ON `cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE
) {/ M7 m& H, p& W3 N: ]0 a" w  A/ C. F  h6 l, v
`cdb_attachments`.`readperm`='0' AND `displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "}   T" r1 }" f! W& }! |* v
4 c% E. k  B' O* a( g7 P/ t
linkarr[[field:global.autoindex/]] = "/bbs/viewthread.php?tid=[field:tid /]";
$ H: R: Q5 F& h/ n8 N+ U9 kpicarr[[field:global.autoindex/]] = "/bbs/attachments/[field:attachment/]";
: r4 V) ~& y$ W& c0 A4 _textarr[[field:global.autoindex/]] = "[field:subject function='html2text(@me)'/]";
. s1 p$ u! Y9 K6 q2 w4 ?+ O{/dede:sql}
                   //原来的替换成这里,本人亲自测试可用,上面红色字 dz7.2版本数据表里那个值的内容不一样 换掉就可以的 我索性直接删掉了红色字 不影响 随便了 2 z) x( \5 s& ?
1 ^5 t1 Q2 `% H) u" r
for(i=1;i<picarr.length;i++){
& E# G4 a9 c: \8 T7 {* Q: ?) Pif(files=="") files = picarr; ( j& d0 b6 w! V2 h1 J) V- L  `- s
else files += "|"+picarr;
$ y2 u. L/ M1 X6 W" t- d+ \& H} 4 p1 q! R$ {; B+ J% W
for(i=1;i<linkarr.length;i++){ : P$ m8 W* Y; f1 ~5 P
if(links=="") links = linkarr; 7 O  x/ H5 x2 g
else links += "|"+linkarr; / D& u4 D+ a: x
} - J8 `) [6 Y4 E& I/ N" a
for(i=1;i<textarr.length;i++){ ! m0 a" V3 v& g) m
if(texts=="") texts = textarr; 1 k" w% n, \. s3 J
else texts += "|"+textarr;
% |, q5 z! v1 L: b4 v}
: _* o  _6 ~. V. _  h8 G& ydocument.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
2 }/ n5 t( W; U+ G% z5 }: N/ K4 W* ]* E7 d# t4 [8 p  {0 l  z
codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'"
% T0 o0 J3 S3 e  Y: e% Y
% I9 t5 t3 Y! j3 j, `( B6 lheight="'+ swf_height +'">');
+ E" x# n& v! f2 e& j7 Rdocument.write('<param name="movie" value="{dede:global.cfg_templeturl/}/images/bcastr3.swf"><param name="quality"
' d3 {, m. a5 ?3 h
$ d3 v9 Z2 A6 R& q- W; wvalue="high">'); . j$ r+ D! m" G$ z: N5 O, w5 s
document.write('<param name="menu" value="false"><param name=wmode value="opaque">'); 8 W8 p7 K  d$ {
document.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'">'); / R4 P% _% O  L5 k  x( ~: h
document.write('<embed src="{dede:global.cfg_templeturl/}/images/bcastr3.swf" wmode="opaque" ' C5 ]# z' o  y, u9 f( U4 A/ q

/ l5 t  `) u3 U0 f( d& R! cFlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'& menu="false" quality="high" width="'+ ( b7 y& q& k- p# |9 \# y
6 c2 W& t" B+ K$ A" T
swf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash"
  |% l6 F% O/ G: Q2 o+ m- `+ s# V$ f- x$ l) x! R8 I- v' V$ Q
pluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>'); 6 z# K; j% Y" G
</script>
. o& A" \* W6 T1 f2 S

! [/ Z3 O" n& t' V# o3 \6 K5 z' }* X* P; S" A
调用Dz论坛图片,特定板块。AND `cdb_threads`.`fid` ='12' GROUP BY tid LIMIT 0,5 中的fid就是板块id limit 0,5 就是5条数据
/ k  U" h3 c- u9 v* f/ h# I3 t- N$ t. J  N9 m
0 x7 z# M& D: ?* L1 D3 W) t, u" s
1、论坛最新主题调用代码如下: {dede:loop table="cdb_threads" sort="tid" row="10"} # V% q4 s6 x- U9 _$ A  l6 ]
<a href="/bbs/viewthread.php?tid=[field:tid /]"> 4 ~0 ]7 q: N. r! w9 D
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
. N. D' C3 `" d+ G( M% N<br/> - U8 [8 w$ Y9 E# j: z3 z
{/dede:loop} 6 V4 q  P) X- ?6 D) P
这个连接地址你可以写相对路径,也可以写绝对路径。
' w  I1 Y7 v. q' Y: U  如果是discuz动态论坛,链接地址如[url=]http://bbs.xxx.com/viewthread.php?tid=[/url][field:tid /] 5 Z/ V$ {4 x8 ~
  如果是discuz静态论坛,连接地址如[url=]http://bbs.xxx.com/thread-[/url][field:tid /]-1-1.html . @8 i: ^9 E% x5 J, S
2、论坛指定版块帖子调用方法:
8 j  ^; I% p, C( C) U% |4 \{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" } 2 W& k7 [1 d7 n2 `$ |# _! p
<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
2 v+ K0 |2 h# ^; g) i4 r·[field:subject function="cn_substr(' @ me',50)" /] </a> 6 R* {& z4 s2 Y* P. Q' @9 T" D, z
<br/> 4 F# S: T/ [, ?8 d6 r' L% t
{ /dede:loop }
7 ]7 {. M7 E+ H其中的fid=1 or fid=2是论坛主题分类id,可以按照自己要求来修改,如果是一个分类就直接写fid=x
% }0 Z5 u% T" G; s! a3、论坛调精华主题调用代码如下:
. i7 B- q4 {4 M! @0 v{dede:loop table="cdb_threads" if="displayorder!=-1" sort="tid" row="10"}
& P! M7 t, m4 ]7 \2 F3 ?<a href="/bbs/viewthread.php?tid=[field:tid /]"> + h" ?( `5 z4 V' n( E" ~) s
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
% ~, [  S3 V0 a<br/> # b- s' A7 S2 @& L  t
{/dede:loop} 4 f5 k% o* v9 g9 g9 X5 z; b4 ^1 Q
如果想调用某个板块的精华主题代码如下: 5 J4 Z5 ]7 |6 F$ K
{dede:loop table="cdb_threads" if="fid=5 and displayorder!=-1" sort="tid" row="10"} ; r2 Z, `6 B1 p' q) Z6 f% y+ t+ N
<a href="/bbs/viewthread.php?tid=[field:tid /]">
, w7 r) u+ n8 U+ ^0 T·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
$ t% C5 [' v" w3 K3 F! j! ]<br/>
: K5 V, D/ l4 _' T+ _4 z{/dede:loop}
7 Z7 R7 Q. F# J其中的fid=5是论坛主题分类id,可以按照自己要求来修改, 4 K( m" t* g* z- k. n+ P
  如果想调用论坛所有的板块的最新精华主题只要去掉fid=5 and 就可以了。 4 d  D( C, E- ?3 V/ [
4、调用的帖子列表这可以按查看次数排序,代码如下:
& E. v0 p" N$ R# j6 T{dede:loop table="cdb_threads" sort="views" row="10"} 5 T+ f0 _) J* u6 _: P
<a href="/dz/viewthread.php?tid=[field:tid /]">
& {- ]' a# G' D9 w, Z$ p/ i·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> ) F& u' u0 O; q
<br/> * M& t' u7 t! b, Y$ Z7 r0 M/ e; R
{/dede:loop}
9 V$ t- \# W% K/ z5 v其中sort="views" 就是控制按照查看次数排序的代码
& W; q% A* k9 [, w+ q: B) r( _/ i5、论坛置顶版块帖子调用方法举例:
( {: R+ b* J7 a! c. y{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" } " z, Q1 s! e3 l$ R: ~
<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank"> 8 t1 p0 b/ Y; {/ w6 s  U) Q
·[field:subject function="cn_substr(' @ me',30)" /]</a> <br> ) I. j2 v* d0 P4 N5 ], G
{ /dede:loop } 5 a. m( l2 |6 i+ y
6、论坛版块名称调用方法
5 U3 H- ]1 Z3 [2 l! n+ }/ P{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" } : Y& E$ }7 P1 G1 b5 D& z4 Y# J, @' G! F
<a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' @me',30)" /] </a> $ w6 t1 g1 ]! G* t' V( N
{ /dede:loop }
$ ~0 S  V, v0 H注:这种方法这个还有点问题,它会将论坛分区、版块都调出来。 ' Q4 o4 Q3 M/ [
但是我们可以不用 loop方式 换用sql语句来调用(这种方法万能 呵呵!!)下面看图 & b5 G6 m/ h. O0 U5 U
! n. ]9 D+ E5 e3 u* j

( S0 t! v: D" B- i; t. `. v5 K# H  U  o5 V! Q5 [% W
版块都是放在上面表中的
: x! A2 q; h1 }$ ]7 x# T表部分结构如下:
5 u: F; `4 @  }6 l$ a/ ]
& o1 s9 W0 {( V5 e# I0 A/ d6 O* j8 X! R! s6 }

' h" O7 v6 [0 }* n+ p7 A9 T4 o1 |( t这样我们就一目了然了 2 f$ u& N4 c8 x9 u" j
用sql调用 第一个版块里的子版块 也就是 11111111   , 2222222, 333333333,4444444444四个板块名称;方法如下: 1 w3 ~  G( @# c5 B. N
{dede:sql sql="select fid,fup,type,name from cdb_forums where fup='1' GROUP BY fid LIMIT 0,4"}
+ w  `1 n; |2 k) t<a href="/bbs/forumdisplay.php?fid=[field:fid/]">·[field:name function="cn_substr(
[url=]</a[/url]> ' |8 ~3 Z- K! u# Q
{/dede:sql}

& y3 N) m: |/ K& T
) w( m2 e) q; n. B% n/ U2 p4 |0 G+ W1 B  P6 |4 T1 M$ [' Y
附:dedecms的LOOP 标记规则
: L% R: [4 i* i7 C' _  功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作
( K9 b+ Z# A* q0 M1 ~/ e& e  适用范围:所有模板 2 Z; a/ R4 W! z& F- R/ r
  基本语法: ' P8 g; N$ z* W+ t
  { dede:loop table=' sort='' row='' if='' } ) `$ R0 Y- v+ Y9 A6 m& t! C
  [1] table 表示查询的数据表
4 A/ K, y5 c1 X, @7 Q' G  [2] sort 用于排序的字段 也可以加"views"(查看次数排列)
. q$ V. ?/ S" T+ o  X  [3] row 返回结果的条数 0 G. F( D  s+ a! ]
  [4] if 查询条件
1 `+ w; e1 U8 n# X7、调用论坛帖子中的图片方法,网上搜到的,此方法同上(幻灯片的地方) 4 ]; a0 F8 N3 r8 h
{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`
6 J, R4 q( ?+ `; 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 "}
6 f  W3 G# R2 m4 `- G' C  I<a href="/bbs/viewthread.php?tid=[field:tid /]">
+ }" k' D/ T; @5 m7 v% {<img src="/bbs/attachments/[field:attachment/]" ALT="[field:subject/]" width="100" height="80" border="0" /> $ m4 @) C* T5 y$ E: `' R7 o- F6 p; [
</A> " r; v6 [1 w- f# D0 y/ a& N- |8 z
{/dede:sql}
您需要登录后才可以回帖 登录 | 注册


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

GMT+8, 2025-9-3 16:03 , Processed in 0.024001 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部