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

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

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

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2010-8-22 01:05:23 |只看该作者 |正序浏览
调用帖子内容摘要信息 ! a1 G, h4 q7 o; I
{dede:loop table="cdb_posts" sort="tid" row="3"} 2 G( W0 T7 y. _6 f1 X7 r& N
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',100)" /]</a>
( a! u, l6 N4 B; {, s- X& e[field:message function="cn_substr('@me',46)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a> ' p7 \' L) t& g7 P9 A* B9 q: F" E
</li> * ]7 n9 u3 x% u
{/dede:loop}
+ I& S" s$ J/ W$ y9 N; t
调用查看次数最多的帖子。
0 m; ^3 i$ B, f4 y5 o& B1 y{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="views" row="8"}
/ o  K# |. C! A: t* n+ c<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
& h& Q3 U; R3 D4 m+ U  ][[field:lastpost function="date('m-d','@me')" /]] % O* A( c3 F; U+ @! W  t6 I' J
</li>
$ S% B" P9 Q3 J% Z* ~{/dede:loop} 3 C# @! y# F$ s& o/ T
调用回复次数最多的帖子。 8 i6 ]! @$ a* y2 k6 c
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="replies" row="8"} : W3 |/ q3 Y- G& _+ x) W. k# ^1 X9 Y
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> # W9 S( t0 E0 F8 k" B  X% ^
[[field:lastpost function="date('m-d','@me')" /]] * p" K3 Q  ~& @1 S6 l# O- \
</li>
9 }' R/ f0 x6 \1 k1 {; a{/dede:loop} 1 ?& T& u# P6 W" z, J9 X# k
调用精华帖子 帖子分为1级精华2级精华3级精华。精华越高排在最前面
  J. w$ \' s& s  Y0 Z{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="digest" row="8"}
# C+ l/ Q* a+ P0 h9 l, S) C<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',26)" /]</a>
# R# m: u3 B; N4 i% e[[field:lastpost function="date('m-d','@me')" /]] - E& I3 z! C+ s( W* v6 @6 o
</li>
) d7 `( U3 Q4 L2 B0 _9 G7 a' X{/dede:loop}
7 {8 }6 t* z* i* \调用帖子内容摘要信息 / g5 D4 r$ a8 A

# f# u) H, ?  p2 j" Z  [first=1 只显示第一楼主题的信息。first=0 就是只显示回复信息 fid=4就是板块的id tid就是主题的id sort="tid" 按主题倒序排序
6 r8 ?, k5 i+ u9 c( l" P, @$ y4 U# u; i9 W0 V" _7 L9 Y) _
{dede:loop table="cdb_posts" if="first=1 and fid=4" sort="tid" row="3"} % D# t) \. R- l) }' |
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
. C0 Y3 G6 _! S) e+ Z; X[field:message function="cn_substr('@me',60)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a> 0 O5 s% G+ B$ o9 N) I4 C, L
</li> 3 l3 [. |6 L+ U% U9 ^  E
{/dede:loop}
5 I) w6 i4 s' e% i6 W幻灯片调用DZ论坛图片显示 ) `- N4 d" a: x/ c) J
<script language='javascript'> + `2 m5 m- s3 L5 h
linkarr = new Array();
  i* G) `' K7 _3 apicarr = new Array();
- L( Q2 W. T' V9 W5 V2 |4 |textarr = new Array(); - L5 g9 k8 K4 O, w7 w) o
var swf_width=280; & e; G! V1 x% H1 T
var swf_height=192; ( N& S* S3 x/ U+ U: s' D# c
var files = "";
7 n4 H+ j6 a7 Dvar links = ""; 7 W9 B. x/ V# F  k
var texts = "";
- W  }6 K! b( }0 t( N//这里设置调用标记
" C5 l: P. P1 Y" W5 Q  j) i{dede:sql sql="SELECT`cdb_attachments`.`aid`, `cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`,
  I( }& L9 g# M' X) `
3 ]. N' j1 X6 r9 Y8 l`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads` ON `cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE
% O# ~! B! O0 j# {% e! I% a
2 ^$ m9 Y; U( q( t: M' w6 P! L`cdb_attachments`.`readperm`='0' AND `displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "} : O. Y, R0 g, o: Y: n& ]0 O1 f

* J( F) R5 g4 E: A7 p) flinkarr[[field:global.autoindex/]] = "/bbs/viewthread.php?tid=[field:tid /]";
4 W% Z, Q$ e& rpicarr[[field:global.autoindex/]] = "/bbs/attachments/[field:attachment/]"; % B, C! a5 ]) q, k) F; G9 k% ~. X
textarr[[field:global.autoindex/]] = "[field:subject function='html2text(@me)'/]"; * }- ~3 S5 j( {9 C# i3 j" n% J
{/dede:sql}
                   //原来的替换成这里,本人亲自测试可用,上面红色字 dz7.2版本数据表里那个值的内容不一样 换掉就可以的 我索性直接删掉了红色字 不影响 随便了 % \# S7 Q( ~$ q6 x
3 z9 r4 R, w' {6 {8 T7 U% p
for(i=1;i<picarr.length;i++){
( h2 V, Y2 r6 ~! P4 d! g) m0 dif(files=="") files = picarr; 8 \( K. A" e! C7 Z8 J  W9 ]. \5 x' ^
else files += "|"+picarr; : _; ]( j- t5 y
} * s! t" }5 _0 q
for(i=1;i<linkarr.length;i++){ $ p0 i- x( ^9 M2 [3 j9 _+ d
if(links=="") links = linkarr; 4 Y, _4 v6 l* m0 P: _2 M6 E6 z
else links += "|"+linkarr;
+ @- d8 t2 c8 E1 U; d  U" i& v}
, \% G4 @. U" Y6 W5 C( Mfor(i=1;i<textarr.length;i++){
  F) i( Q# l! \# c0 u- bif(texts=="") texts = textarr; % i. B9 M. ~4 S6 d8 n
else texts += "|"+textarr; 3 ]+ q8 b& ~/ \+ r& F0 h+ d# D
} & R% t) X! Z3 q8 U6 B
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
2 ?. U# ^9 c& S% Z4 H, h; p6 E$ E3 j- u+ Y% x" Q
codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'" ) i, ?+ ?- A7 Z" ^, g

  N' q7 f; E: P; P+ I1 Y& pheight="'+ swf_height +'">');
7 A! {7 P0 m4 x# D1 S6 Mdocument.write('<param name="movie" value="{dede:global.cfg_templeturl/}/images/bcastr3.swf"><param name="quality"
" w# m) f8 L7 J. v6 L
1 w1 |+ ^* u3 Dvalue="high">');
$ @' ^% L/ A  K- A" B# Q' Kdocument.write('<param name="menu" value="false"><param name=wmode value="opaque">');
: }- ?1 r; t8 Adocument.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'">');
+ k: l  V. {% ]  }0 n( t9 y. _document.write('<embed src="{dede:global.cfg_templeturl/}/images/bcastr3.swf" wmode="opaque"
4 B) O( Z9 r  a" S- `3 v% W1 V  C/ I: Y3 l
FlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'& menu="false" quality="high" width="'+
6 ^& p3 d4 y9 E$ I
' R! G* H4 s( ~8 kswf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash" 9 \9 F' p7 a& i1 @! f

2 Z. a! N1 |0 p3 ?! _pluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>');
. y; P5 {6 g* q</script>

& c( o; _3 ^# L) s% }  c
% n8 e( o/ @$ \9 i
8 `, W9 l8 ^- f/ V" T* k/ A+ W, k调用Dz论坛图片,特定板块。AND `cdb_threads`.`fid` ='12' GROUP BY tid LIMIT 0,5 中的fid就是板块id limit 0,5 就是5条数据 " X& D7 Y' \+ @3 c  _4 |9 v( p
- C9 a! w- G% U. r& v
  ]! |  w/ t% `  h" C5 U
1、论坛最新主题调用代码如下: {dede:loop table="cdb_threads" sort="tid" row="10"}
. J  M  S" i: u; i5 m<a href="/bbs/viewthread.php?tid=[field:tid /]"> 3 U# Q4 {  l6 J0 B, ?6 b: a! w$ [5 W
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> 1 P2 t/ c- u" f* ]
<br/>
' R) D2 j' Q5 T7 _$ T7 t{/dede:loop} $ r$ ~2 h: r6 T& {
这个连接地址你可以写相对路径,也可以写绝对路径。
: H* M  C; A8 I! t1 d& m  如果是discuz动态论坛,链接地址如[url=]http://bbs.xxx.com/viewthread.php?tid=[/url][field:tid /]
) S1 T. j, b4 y  如果是discuz静态论坛,连接地址如[url=]http://bbs.xxx.com/thread-[/url][field:tid /]-1-1.html ( y: f7 Q  y9 k$ q( k7 y
2、论坛指定版块帖子调用方法:
: z2 r, x; J; T5 h; t4 P{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" } * ~0 j, {+ L  t( O
<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
7 O# z3 o! I5 X1 h" d5 w·[field:subject function="cn_substr(' @ me',50)" /] </a> 4 }# t- `7 B- O! a  R  Z6 K3 C
<br/> 3 [: C- g9 ~2 y7 i* W9 p! t& d
{ /dede:loop } $ h, E; p: n9 L: k
其中的fid=1 or fid=2是论坛主题分类id,可以按照自己要求来修改,如果是一个分类就直接写fid=x ! b2 a; U2 r  i. L6 T* {5 h5 ?8 u
3、论坛调精华主题调用代码如下:
! e% o* q- p6 J4 n7 t) K{dede:loop table="cdb_threads" if="displayorder!=-1" sort="tid" row="10"}
, T/ V$ O/ D( L0 q<a href="/bbs/viewthread.php?tid=[field:tid /]">
" x  J) S5 T6 o. a' v2 c·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> + \: a4 q7 t: ?7 h8 T' Y' J
<br/> ; z. \2 ^$ W, Z
{/dede:loop} : I/ T0 ]. v3 O2 v' a
如果想调用某个板块的精华主题代码如下:
0 t& y/ q! [: A# p! c  b{dede:loop table="cdb_threads" if="fid=5 and displayorder!=-1" sort="tid" row="10"} 7 N3 w3 W; P. ?( N4 o
<a href="/bbs/viewthread.php?tid=[field:tid /]">
# ]* ^- R/ m$ [; a·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
- q% f( _8 O; M& I/ {<br/>
3 Q& d: {' s: c  X4 K6 m$ t{/dede:loop} ' U, f" I# v8 O7 l) M7 v
其中的fid=5是论坛主题分类id,可以按照自己要求来修改,
% v4 v. _( P7 u* |+ I  如果想调用论坛所有的板块的最新精华主题只要去掉fid=5 and 就可以了。 5 F, ~! D7 V0 L: T
4、调用的帖子列表这可以按查看次数排序,代码如下: 8 ]6 Q% ?5 ~1 ~: M& D
{dede:loop table="cdb_threads" sort="views" row="10"}
) a( p2 @3 G* ]) H<a href="/dz/viewthread.php?tid=[field:tid /]"> 3 }2 W  C. \& p* C+ d
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
3 o6 G+ H3 G5 Q, U" T5 _<br/>
: [2 S$ h' R8 V9 o4 Z% A{/dede:loop} * n! C: D( k- Z( v
其中sort="views" 就是控制按照查看次数排序的代码
3 |3 y& R3 }! Z7 V$ H/ t5、论坛置顶版块帖子调用方法举例:
6 D: \& p1 }8 q. m{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" }
" L; X/ |& ?; r+ ^7 p! o( T9 y<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
0 _4 a. T) f" ~' ?0 J·[field:subject function="cn_substr(' @ me',30)" /]</a> <br> * E: j. l+ P! _0 j1 R
{ /dede:loop }
: e! ?" W# a: i6 x2 V4 b6、论坛版块名称调用方法
* ]8 u! f" v( e( Y{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" } 6 s6 _" ?$ g* p  S# b
<a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' @me',30)" /] </a> - `' }  j0 x8 R8 j% E
{ /dede:loop }
: F5 D' e1 V0 J3 e+ G注:这种方法这个还有点问题,它会将论坛分区、版块都调出来。 0 J: A( ^+ c8 D+ n  @' w6 u
但是我们可以不用 loop方式 换用sql语句来调用(这种方法万能 呵呵!!)下面看图 0 Q8 s' b& h  E
% K: ^; k7 W4 v# U' x8 h; ?& P6 q

* @! ]2 I# c) l: w9 h: D7 ]* O+ A! Z& z) s, F
版块都是放在上面表中的 8 w" y, ]" ^& j& R" D! }
表部分结构如下: 2 c/ y4 u) m# ~9 O4 a- X. Z

% v* V' w# V, f; j
+ D, M) a9 a' s7 Z% o2 a- k; n: O) I - F% ^9 U- i$ \; l! t
这样我们就一目了然了
9 F0 W. ?  M) F& q* p" g用sql调用 第一个版块里的子版块 也就是 11111111   , 2222222, 333333333,4444444444四个板块名称;方法如下:
3 G( u  o5 q$ h8 R0 O4 M$ d5 S  k{dede:sql sql="select fid,fup,type,name from cdb_forums where fup='1' GROUP BY fid LIMIT 0,4"} ' }. x9 v4 k! p) R# Z
<a href="/bbs/forumdisplay.php?fid=[field:fid/]">·[field:name function="cn_substr(
[url=]</a[/url]> ; ?1 u5 j3 X4 Q" n( P6 A9 `
{/dede:sql}

4 E' k5 U8 ?- l/ j" L( Z- p5 c7 @' _

4 Z* |+ H) ^/ b& Y& V附:dedecms的LOOP 标记规则
9 F# l1 Y; F! I6 O$ W3 I3 e1 d, q  功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作 : g+ t- j+ e) E4 w# X  `. B
  适用范围:所有模板 , h* \5 I- ?: p, g$ l0 |7 j
  基本语法:
! q- ^4 U# G7 t3 }3 `5 q9 z! G/ N$ a  { dede:loop table=' sort='' row='' if='' }
! O; F' J. G1 A: m$ Q! V  [1] table 表示查询的数据表
& i) K7 e/ `3 i! q: Q7 I+ H  [2] sort 用于排序的字段 也可以加"views"(查看次数排列)
) s  ~9 ]) v2 |) J  [3] row 返回结果的条数
1 J! A( e8 }' A6 l  [4] if 查询条件
- z! }% w4 t; ^- w9 N2 n7、调用论坛帖子中的图片方法,网上搜到的,此方法同上(幻灯片的地方)
& p) t3 G. ?+ `6 Z: r{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`
- D( w; h( j, ], y1 Z) m# q9 iON`cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE `cdb_attachments`.`readperm`='0' AND`displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "}
' a+ v: d4 H" G3 m<a href="/bbs/viewthread.php?tid=[field:tid /]">
- v; g# s# Y9 o<img src="/bbs/attachments/[field:attachment/]" ALT="[field:subject/]" width="100" height="80" border="0" /> $ d/ S) S5 V7 W( k( n
</A> % N2 \$ ~" Q2 R% s: D% g
{/dede:sql}
您需要登录后才可以回帖 登录 | 注册


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

GMT+8, 2024-7-2 21:36 , Processed in 0.031200 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部