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

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

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

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2010-8-22 01:05:23 |只看该作者 |倒序浏览
调用帖子内容摘要信息 # ^- v6 \% N+ H3 S
{dede:loop table="cdb_posts" sort="tid" row="3"}
! D  V: P1 N# s3 ~2 Z9 R3 K<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',100)" /]</a> 5 S- V/ J! }/ o! ?
[field:message function="cn_substr('@me',46)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
, E" Y2 M' H) r' W</li>
3 O% ?4 j7 ~& F* S. O{/dede:loop}

+ t% e6 n: v, m7 f* n调用查看次数最多的帖子。
. u; q3 q  z9 N) t9 S  F{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="views" row="8"}
; m7 ]9 G( t; p% w) ~<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> ) d9 {. p) D# F9 g$ |" h5 ]8 p
[[field:lastpost function="date('m-d','@me')" /]]
- B2 X2 ]* _! w, z" P3 c- g, ?2 P</li> 4 S! x) j7 v1 Z
{/dede:loop}
* y/ `2 V$ {( g( Z) \2 }, M调用回复次数最多的帖子。 $ L: e* r8 l9 }5 w
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="replies" row="8"}
$ R1 i5 r9 S4 J+ y<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
9 o/ w  s6 [+ W& L/ s, `8 Y[[field:lastpost function="date('m-d','@me')" /]]   e; Q' t0 \7 X) l8 K) J
</li> % j0 t+ B; U, Q1 t( k- h
{/dede:loop} $ J0 x: T1 I: ?' o# l
调用精华帖子 帖子分为1级精华2级精华3级精华。精华越高排在最前面 9 M1 g/ E8 F3 l- r5 D9 o5 z9 d. m
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="digest" row="8"} ; x% Y- j1 V6 ]4 p5 n
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',26)" /]</a> $ c' t5 u) i' l9 Y* W' ^
[[field:lastpost function="date('m-d','@me')" /]]
! i! _& N/ Q, G5 W- ^+ ~</li>
0 e2 |, v) h  h. {{/dede:loop}
, x- o* b0 Q4 A$ ?5 [7 m调用帖子内容摘要信息 1 ~" S5 Y+ F: h& B7 Q
, M+ q& c6 a; t% }2 ~( i
first=1 只显示第一楼主题的信息。first=0 就是只显示回复信息 fid=4就是板块的id tid就是主题的id sort="tid" 按主题倒序排序 7 O- [" o( [! U
3 \3 S  n" h, @
{dede:loop table="cdb_posts" if="first=1 and fid=4" sort="tid" row="3"}
, n" {1 \4 y. N" h! }<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> ' s' j3 Q. B6 T; Q" b
[field:message function="cn_substr('@me',60)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
# W& s% D/ w. X: Z3 [</li>
" l9 C! J$ E, w{/dede:loop}
2 H& c% q. E* {9 ^幻灯片调用DZ论坛图片显示
- c5 `* s, Z- Q( o<script language='javascript'> 7 H3 j4 l# c, I  b  R& f
linkarr = new Array(); # M$ S. a3 ~; J" ]2 Z& w' l
picarr = new Array(); 1 n$ Y( C; R3 c
textarr = new Array();
/ ^, B& K& W0 R# h# Kvar swf_width=280;
3 c9 y+ o/ S4 ^/ b% T5 g6 C; Jvar swf_height=192; , X, V  Q2 d2 B1 G6 k! w
var files = ""; / P2 M5 l  o2 q2 b4 d- t
var links = ""; % J- w3 N9 }2 Z% _, F- r4 Y  W
var texts = "";
9 x# V) F  }6 k8 b8 {' s//这里设置调用标记
9 w( n  E6 o& ^3 S, T{dede:sql sql="SELECT`cdb_attachments`.`aid`, `cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`, : g7 ^* a$ e* y" J& _# O3 w! g

! {- V0 t# x, e9 o`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads` ON `cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE
. v3 K4 o. a6 G" c8 O0 }+ q+ f$ T; O+ ?' C" Z
`cdb_attachments`.`readperm`='0' AND `displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "}
+ D4 w/ ^5 O8 U2 s$ F6 O0 B) a( x
linkarr[[field:global.autoindex/]] = "/bbs/viewthread.php?tid=[field:tid /]"; , P6 \! B6 [6 S
picarr[[field:global.autoindex/]] = "/bbs/attachments/[field:attachment/]"; # ?+ j$ M  A, |) G6 P- q) N. |) F
textarr[[field:global.autoindex/]] = "[field:subject function='html2text(@me)'/]";
- ^/ T' X! e' E3 z{/dede:sql}
                   //原来的替换成这里,本人亲自测试可用,上面红色字 dz7.2版本数据表里那个值的内容不一样 换掉就可以的 我索性直接删掉了红色字 不影响 随便了 ; f2 {* a) t  W( C1 L) ~
( G1 D" C) g' d6 Z* T2 i
for(i=1;i<picarr.length;i++){
8 U' W" S& F  f$ ]+ n' F1 Lif(files=="") files = picarr; 4 w/ F$ H' T- U
else files += "|"+picarr;
* r" W4 t: K+ j! H' v( S( _0 H} 4 l) {) K( k( R3 X
for(i=1;i<linkarr.length;i++){ 8 W3 Z4 g- }; C, D8 F$ ~! d: a
if(links=="") links = linkarr;
) H8 n  U2 t, }/ d/ p+ [else links += "|"+linkarr;   f  M5 q! v2 z% Q$ f
}
& w! ^, A/ f- s- c- _6 zfor(i=1;i<textarr.length;i++){
9 c: C0 p; d4 O/ zif(texts=="") texts = textarr; 9 ~& X+ J, ?1 q. Y
else texts += "|"+textarr;
! Y) v, M5 r3 n# f} 8 N" u" x3 ]# t1 {
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
7 m) }& [: A' W* d* ^
0 \1 A* M6 d' z" ycodebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'" + }% M/ O7 F- y+ A9 W" B
9 I$ g  r# S+ O" H0 K
height="'+ swf_height +'">'); ! g2 i& F$ c# n! A
document.write('<param name="movie" value="{dede:global.cfg_templeturl/}/images/bcastr3.swf"><param name="quality" * O  U; d/ U, Q5 [
2 u" i, v7 T8 _" {. @
value="high">'); ) w$ l5 g9 R' r5 J) p
document.write('<param name="menu" value="false"><param name=wmode value="opaque">'); , k# N/ V* b; f" r7 B+ i4 d4 J
document.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'">');
4 m) F1 S( n; A- I; L% D/ gdocument.write('<embed src="{dede:global.cfg_templeturl/}/images/bcastr3.swf" wmode="opaque"
; o- ?5 L  D: e4 B+ m5 T" Y( U' K1 `/ G* F6 R; I4 l
FlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'& menu="false" quality="high" width="'+
9 b) M; [6 X& F
& G( S( Y& I5 S3 A1 p! z# ?swf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash" 7 Y  l& P, w4 z0 Y6 {; y' D
" G& V+ i, `4 m+ @) D
pluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>'); / F% F. d" O) R1 s+ u: o3 m
</script>
1 W( g& W- ?2 E2 @& Q; l8 e

# ~$ W% k& h, }: R  D% ?- w3 ^" {0 _7 e0 n2 O( a
调用Dz论坛图片,特定板块。AND `cdb_threads`.`fid` ='12' GROUP BY tid LIMIT 0,5 中的fid就是板块id limit 0,5 就是5条数据 ) R5 `6 Q# [8 Y# O. ]7 O
& i% K. v* x( d' N  P  L6 G
; e7 D8 m3 a) L0 {# i% H
1、论坛最新主题调用代码如下: {dede:loop table="cdb_threads" sort="tid" row="10"}
, c6 E' {3 ^  I5 O8 }<a href="/bbs/viewthread.php?tid=[field:tid /]">
- N; V2 _8 C+ O& Z+ a5 C·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
- y& y1 L7 b, P<br/> # m* m: ]' P% x& _, t0 y: h
{/dede:loop}   n9 G& c  }( ]! C7 ^4 V
这个连接地址你可以写相对路径,也可以写绝对路径。 $ O0 a! F1 b7 P6 {- E+ C4 v. B* H
  如果是discuz动态论坛,链接地址如[url=]http://bbs.xxx.com/viewthread.php?tid=[/url][field:tid /]
9 ?: s- R2 l) A* Y8 |! H4 c9 D3 ~. G  如果是discuz静态论坛,连接地址如[url=]http://bbs.xxx.com/thread-[/url][field:tid /]-1-1.html % B& t3 Y% S) ^6 v
2、论坛指定版块帖子调用方法:
1 @3 \" y1 `, C# U& Q6 H{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" } # J9 s) g! B2 t- D4 m9 e* t' V' D
<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
0 K0 {, i+ k0 k7 {# t& n- n! G  S- K·[field:subject function="cn_substr(' @ me',50)" /] </a> $ C! a: h* c$ K6 v5 M7 w* C, H  W4 h
<br/>
3 Y$ K# T. h" s% w% r{ /dede:loop }
0 Y$ i7 J4 Y! R其中的fid=1 or fid=2是论坛主题分类id,可以按照自己要求来修改,如果是一个分类就直接写fid=x " F5 m" m: g. D. ?
3、论坛调精华主题调用代码如下:
3 a  x% H5 j$ p; K{dede:loop table="cdb_threads" if="displayorder!=-1" sort="tid" row="10"} / j3 f, C# Y0 _& ]2 }2 s4 g
<a href="/bbs/viewthread.php?tid=[field:tid /]"> % b3 x$ Z. r: N7 k
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> $ v! F1 k: Q0 M7 p" ^
<br/>
: G% `: L$ o- p4 M) L9 T$ S3 O) D{/dede:loop}
- @+ K0 \6 Z. O6 [9 \( ?- Q如果想调用某个板块的精华主题代码如下:
7 W3 L  i  F( `( f) p' |& j{dede:loop table="cdb_threads" if="fid=5 and displayorder!=-1" sort="tid" row="10"}
* M5 b# _. u% h& ]" }2 }( _4 A' {<a href="/bbs/viewthread.php?tid=[field:tid /]"> % u( E' K/ l( E4 R6 `# `; ~
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> 6 {  a. U3 \2 A3 _
<br/>
- H+ D3 [/ e9 R- \2 c0 K{/dede:loop}
& |9 H1 `8 c( ^/ R% y  X% Y  G其中的fid=5是论坛主题分类id,可以按照自己要求来修改, 9 z. B8 l% J+ a# a) p
  如果想调用论坛所有的板块的最新精华主题只要去掉fid=5 and 就可以了。
+ Y$ ~: w: R! Z+ b4、调用的帖子列表这可以按查看次数排序,代码如下:
6 D% D3 c1 w, v: x{dede:loop table="cdb_threads" sort="views" row="10"}
7 F3 w6 O, D: j* U" n1 V7 u- `' i5 ~<a href="/dz/viewthread.php?tid=[field:tid /]"> 8 F  Y. }6 f* q3 f# W( }
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
/ a1 B$ ~  w, r- H! m<br/>
9 w% T4 c- I. |{/dede:loop} 5 t+ x' u0 n* P4 [. j8 G
其中sort="views" 就是控制按照查看次数排序的代码 0 z* Z' o  ?, E6 R5 s6 v
5、论坛置顶版块帖子调用方法举例: 9 d3 y' J4 [2 z8 }
{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" } * r% B9 D4 {* p# E" I
<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
, b  ]0 V9 e0 @7 [1 k/ G·[field:subject function="cn_substr(' @ me',30)" /]</a> <br>
6 o- T3 t9 k  T{ /dede:loop } & ^$ @9 i. v2 Z& ?
6、论坛版块名称调用方法3 n9 P7 T, z6 p& M
{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" }
9 t! q2 I2 |7 I1 ]<a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' @me',30)" /] </a>
. ~6 D2 ~4 u: J{ /dede:loop }
" S% y3 ~- Y5 E; n- ]: A注:这种方法这个还有点问题,它会将论坛分区、版块都调出来。
: D& B" N# c$ L7 e, w但是我们可以不用 loop方式 换用sql语句来调用(这种方法万能 呵呵!!)下面看图 & b7 m% w0 r0 k1 h/ x8 {, i4 @

% n- f3 D& Q# B: J  K1 H
. ^* w; R, g% J$ i5 E
! d* J! M* Z% ~" `' _- i版块都是放在上面表中的 8 e. g6 t" [5 e, p0 D8 y5 e
表部分结构如下:
2 @( g, j9 T/ ^
- w+ T0 a( v, h9 m0 ]' p! @/ `$ E; D4 N
2 V: l# ]2 z2 h5 ?+ L* b
. u% }+ L7 N' Q这样我们就一目了然了
( p0 S0 n, q6 [4 J用sql调用 第一个版块里的子版块 也就是 11111111   , 2222222, 333333333,4444444444四个板块名称;方法如下:
! Z2 z) ~3 O+ U2 A+ w4 O{dede:sql sql="select fid,fup,type,name from cdb_forums where fup='1' GROUP BY fid LIMIT 0,4"}
- D1 r- ^' \/ X<a href="/bbs/forumdisplay.php?fid=[field:fid/]">·[field:name function="cn_substr(
[url=]</a[/url]> 7 _, R: D$ S( @" u: K
{/dede:sql}

% E) p; l+ K; `' V$ M+ {1 {& i5 |' l( z' E: h+ d# \8 \$ }$ N
" H" j  Q% k  |- J0 Z5 t3 i. x3 K
附:dedecms的LOOP 标记规则 & l  r" j9 Z7 K+ h/ b$ ]$ Y- h
  功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作
6 }& a3 c1 J/ `$ B2 E4 f  适用范围:所有模板
: Q2 z* z4 _3 X1 Y  基本语法:
$ U3 Q& }6 v6 @, m  { dede:loop table=' sort='' row='' if='' } - Q0 V5 G; t$ e( e# h+ c1 P: Q
  [1] table 表示查询的数据表
# a0 U. N5 G. W2 h) w3 y  [2] sort 用于排序的字段 也可以加"views"(查看次数排列)
- F( U; y( n9 F  [3] row 返回结果的条数
) l: ^" u7 q3 Q! c+ g; W  [4] if 查询条件 0 J0 r* T1 s3 P  a! D
7、调用论坛帖子中的图片方法,网上搜到的,此方法同上(幻灯片的地方) / c" d% h( T" K$ y3 d3 `
{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`
2 ~  X1 d' c0 MON`cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE `cdb_attachments`.`readperm`='0' AND`displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "} . r8 w+ y9 H& L6 m
<a href="/bbs/viewthread.php?tid=[field:tid /]"> # t, x) j# V; a. p! G9 H7 O
<img src="/bbs/attachments/[field:attachment/]" ALT="[field:subject/]" width="100" height="80" border="0" />
. a) d8 i7 h- z8 d+ O</A>
3 C" U$ z/ l. J3 n& K4 X% t{/dede:sql}
您需要登录后才可以回帖 登录 | 注册


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

GMT+8, 2026-2-4 01:37 , Processed in 0.024002 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部