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

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

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

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2010-8-22 01:05:23 |只看该作者 |倒序浏览
调用帖子内容摘要信息
( ]% x* D" X" q2 h{dede:loop table="cdb_posts" sort="tid" row="3"} : I4 Y. \# ^* c% H, w1 y% N0 s( I: O
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',100)" /]</a>
( w, W' H* Q& ^3 r  s! y2 E- G[field:message function="cn_substr('@me',46)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
) J; C' v$ X* o# b</li> + c5 {, W1 s2 b- U
{/dede:loop}

1 z: @! P3 |& `: ^6 I' j调用查看次数最多的帖子。 : r+ G, L5 e* }$ R
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="views" row="8"}
% ~; l+ q- U4 q; o+ N& Z/ a<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
2 A' p. B0 g3 X# @1 Z$ m: c0 }1 \, u[[field:lastpost function="date('m-d','@me')" /]] " T+ G2 ?' \1 W, b1 F$ Y
</li> # v( E; }/ k0 V) ?1 s$ M1 W
{/dede:loop} + E9 U& u6 E* r1 F6 k6 S
调用回复次数最多的帖子。
5 s& w/ L3 C3 o. B5 t{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="replies" row="8"} / O6 @* l+ s5 R3 v" C# g& ~, j
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
0 f5 g" [7 C# q/ k6 p+ ~[[field:lastpost function="date('m-d','@me')" /]]
7 }: w& |2 p8 v- P3 r</li>
5 F" ?# A, f$ k0 z( D8 ~; c{/dede:loop}
+ Y- W% p# g3 ^5 b% f% d: T调用精华帖子 帖子分为1级精华2级精华3级精华。精华越高排在最前面
& W6 N+ _. q& u: c. M- ?' h# V{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="digest" row="8"} 3 a, z. k, v8 H3 ~2 K! S
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',26)" /]</a>
% C1 i7 J" i4 x8 c9 X: z[[field:lastpost function="date('m-d','@me')" /]] % k  U8 u4 {: \7 q
</li>
  }8 E/ T. ^+ n4 k; U6 v+ f{/dede:loop}
" p( g2 l5 n1 p6 g调用帖子内容摘要信息
/ I, N# K9 x" J6 d, Q. |7 D/ `  r3 ~+ h8 i: @5 @6 R6 i9 Z! N
first=1 只显示第一楼主题的信息。first=0 就是只显示回复信息 fid=4就是板块的id tid就是主题的id sort="tid" 按主题倒序排序
: e6 P9 n) H5 \+ O) ?, X
- p3 D: c4 J8 q0 [6 u{dede:loop table="cdb_posts" if="first=1 and fid=4" sort="tid" row="3"} ! z) e) y, ~! g+ q: W
<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> / y( b7 \% P4 G$ |& Q" l
[field:message function="cn_substr('@me',60)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
% Z' S) N; P5 b6 O</li>   Q. z* w1 k* V2 V6 }: A
{/dede:loop} ) e& v  m9 w0 _' P; K
幻灯片调用DZ论坛图片显示
( b0 U4 V, z8 p( O6 s<script language='javascript'>
! y' h( _, q4 |6 i' U+ rlinkarr = new Array();
- \0 R+ G5 ^5 U- c2 ~7 o3 ^picarr = new Array(); , ?) r& h& y) D- P8 t
textarr = new Array();
- X$ j* R' g' d8 X& lvar swf_width=280; 8 j2 F7 T4 h8 p) \7 R  R/ u0 Z
var swf_height=192;
  R5 o! R& \/ i! B. d' Wvar files = ""; : H& o2 V- m+ i8 S2 l4 U
var links = "";
: _, M  S2 d( Rvar texts = "";
% F" @; x; P5 j( g( {4 [//这里设置调用标记 0 e+ j* X0 v" x; c
{dede:sql sql="SELECT`cdb_attachments`.`aid`, `cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`,
( U/ \' G5 |1 N% z
) K1 ~& ]3 u7 [9 |`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads` ON `cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE
; j7 Y) y( |: ~& Q1 ^8 a+ W7 K% Z$ B* ^* {  ]& @, B8 Y+ b
`cdb_attachments`.`readperm`='0' AND `displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "} ! A- I+ r- d; M& |7 ^
) m  |' l" d; T9 {' H* D& _1 M
linkarr[[field:global.autoindex/]] = "/bbs/viewthread.php?tid=[field:tid /]"; % h% e. q2 X4 R7 w* r0 k/ J" \
picarr[[field:global.autoindex/]] = "/bbs/attachments/[field:attachment/]"; * r% N3 C0 g& O6 i' X% `/ O
textarr[[field:global.autoindex/]] = "[field:subject function='html2text(@me)'/]";
" i# L' x9 V9 j) I{/dede:sql}
                   //原来的替换成这里,本人亲自测试可用,上面红色字 dz7.2版本数据表里那个值的内容不一样 换掉就可以的 我索性直接删掉了红色字 不影响 随便了
: ~9 k. w  p. X4 n: x
+ U6 @2 Z; E, Z  U* ufor(i=1;i<picarr.length;i++){ . o2 _' e+ s8 J* ^" n
if(files=="") files = picarr; ( h4 D$ @) }+ ]9 U# R% |
else files += "|"+picarr;   _- n( f7 Y+ l
}
% v; S; ^/ w0 ?3 h0 Pfor(i=1;i<linkarr.length;i++){
) k- W( {+ t. F* ]- {& ?- B' H, zif(links=="") links = linkarr; - S, h: ~2 u8 [+ Y' o; ~3 l; }
else links += "|"+linkarr;
% ~. C2 r" N2 K  h$ `}
- u1 j, V3 c9 M% D0 Zfor(i=1;i<textarr.length;i++){
- S6 ^3 R$ g( mif(texts=="") texts = textarr; 0 ?8 q- @0 r$ x  e
else texts += "|"+textarr; ; o  u) t, y+ G. b1 a) l& S! ~
} / J! S% I& V, U7 V( \
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" / T( g; s7 p3 U( L$ Z# @- Z

& @' n, \8 p$ Zcodebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'" # R2 b) }& G8 O- b

9 f; w' L/ A- \height="'+ swf_height +'">'); 0 z! j' C6 Z! a6 l% }4 b/ ]
document.write('<param name="movie" value="{dede:global.cfg_templeturl/}/images/bcastr3.swf"><param name="quality" + B" R' q4 y# W" G( J, a' \" V/ P

: S1 v8 |7 c; ~4 O2 h4 fvalue="high">');
. z8 a/ v9 W2 j2 Zdocument.write('<param name="menu" value="false"><param name=wmode value="opaque">'); ( Y* T+ S2 M( W% ^! ?- J
document.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'">');
$ @$ a1 ]0 Z' R+ p1 jdocument.write('<embed src="{dede:global.cfg_templeturl/}/images/bcastr3.swf" wmode="opaque"
+ E3 q5 {% B7 ~. k1 |
5 }0 x' _2 _8 n: H$ O9 YFlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'& menu="false" quality="high" width="'+   d. ?3 r+ V" d1 h4 O
) u7 ^0 j. C4 Z6 E( n& w; e5 W
swf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash" ' e7 h; h; w; h8 s$ A  q3 A% J

7 s. B4 y: P% v1 opluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>');
" m/ D5 U* V4 v2 u</script>

/ Q5 d6 w' U. W8 _( Z% H0 g" l! \+ }
, R& ~1 o* A6 ?4 m+ t6 D
调用Dz论坛图片,特定板块。AND `cdb_threads`.`fid` ='12' GROUP BY tid LIMIT 0,5 中的fid就是板块id limit 0,5 就是5条数据
" M4 R: J* w% I: n. b7 X
! S9 `) H& k) v) a+ a! s
( x, Z( m% B4 t6 n( n! L5 B# }1、论坛最新主题调用代码如下: {dede:loop table="cdb_threads" sort="tid" row="10"} 9 B0 m) z1 I5 q
<a href="/bbs/viewthread.php?tid=[field:tid /]">
' i4 D3 B2 V  t" n·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
3 @0 ?1 |& V; X5 k<br/> ; Y1 y0 v8 h2 S6 Z
{/dede:loop}
. W( b2 i6 W2 ]4 f9 V这个连接地址你可以写相对路径,也可以写绝对路径。
, s" [% z2 Z2 a& ^  如果是discuz动态论坛,链接地址如[url=]http://bbs.xxx.com/viewthread.php?tid=[/url][field:tid /] 0 G6 E9 T$ }: d8 M9 O' e
  如果是discuz静态论坛,连接地址如[url=]http://bbs.xxx.com/thread-[/url][field:tid /]-1-1.html
. H6 m# R5 |+ l; s* \9 v2、论坛指定版块帖子调用方法: % m( o) B' V+ _
{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" } ! A+ U* A  |* i) s$ ^$ H  K4 o8 v
<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
) J! H* j' M* z- ?·[field:subject function="cn_substr(' @ me',50)" /] </a>
4 l& R2 o& r. N: ]: f6 `<br/>
/ f" C7 y2 K5 X5 e' L- p{ /dede:loop }
" P9 Z7 @3 n. n" M其中的fid=1 or fid=2是论坛主题分类id,可以按照自己要求来修改,如果是一个分类就直接写fid=x ) V( C) x' O" }2 V
3、论坛调精华主题调用代码如下: 0 r( I& H  S1 P  T* G; ], k
{dede:loop table="cdb_threads" if="displayorder!=-1" sort="tid" row="10"} ' ~% s- a( Y2 B( [& |# v3 y
<a href="/bbs/viewthread.php?tid=[field:tid /]">
% U7 F6 }0 Q* b8 m( H·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
/ P6 A0 K- k2 a; ]$ H0 t' {<br/> % F* E; P2 w+ M  P
{/dede:loop} 1 a2 \8 ]. s3 t; F
如果想调用某个板块的精华主题代码如下: 7 n" D: V6 z7 X2 t
{dede:loop table="cdb_threads" if="fid=5 and displayorder!=-1" sort="tid" row="10"}
7 e& u  _4 G" ~: D' t/ r5 s- m<a href="/bbs/viewthread.php?tid=[field:tid /]"> ! N* U. N, N. o1 f$ P. k
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>
' k3 _& }2 h" P" P$ R5 ?. p: G+ J9 b<br/>
% f+ C: O) i6 y' A: q{/dede:loop}
* X7 [0 G  z2 Q其中的fid=5是论坛主题分类id,可以按照自己要求来修改, 6 l9 C+ u: c: |5 y0 J1 z
  如果想调用论坛所有的板块的最新精华主题只要去掉fid=5 and 就可以了。
0 {, j, q& R9 U) K! \/ ^4、调用的帖子列表这可以按查看次数排序,代码如下: % O/ }; O9 @8 @' q2 g
{dede:loop table="cdb_threads" sort="views" row="10"}
4 J. o. ^' k  @" M. V6 K  h<a href="/dz/viewthread.php?tid=[field:tid /]">
* u' a( U/ _2 ?7 a. Y: V/ c·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> 7 c, ]- h! m, e8 [" T5 u. E
<br/>
. s. l! I4 y/ N0 Q{/dede:loop} * a' S' j: O8 e
其中sort="views" 就是控制按照查看次数排序的代码
; H8 P$ `/ M0 Y8 K! J5、论坛置顶版块帖子调用方法举例:
+ Y+ d) A% [2 W) k: Y6 v2 {' a{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" } : Q0 Q# ]7 H1 ]0 `0 L# s! L1 h
<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank">
" ^: `4 |7 J' `·[field:subject function="cn_substr(' @ me',30)" /]</a> <br>
) g/ M2 c+ q; s{ /dede:loop } 6 x, U7 `0 F8 m2 o0 b5 w( G) ?
6、论坛版块名称调用方法+ V# ]$ M6 ^& {0 P& e" C9 G( y# W
{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" } 9 a, I& _9 l7 g- O6 D' l
<a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' @me',30)" /] </a> ' f% ^2 U! m% p+ H' t) H9 L
{ /dede:loop } 5 s4 i" _8 C) w. h% k9 d8 A- ~
注:这种方法这个还有点问题,它会将论坛分区、版块都调出来。 # ~% b" d1 G  R  @' b
但是我们可以不用 loop方式 换用sql语句来调用(这种方法万能 呵呵!!)下面看图
& ~' X' A7 p5 J3 l4 Q  b; v
, h" W5 F5 v+ H$ o
* b- t  y8 Y4 k' D/ T) h% H+ Z8 P0 {1 }( l* R! l
版块都是放在上面表中的
: l( ?% q% {+ ?8 R0 s5 {4 `表部分结构如下: 5 t, X3 z1 ?( C% a/ u+ i$ m

. s& Q; k' ?- u4 a# q* |4 ?$ G8 d; P! X* r( v5 |+ j

8 C' t7 Q# d: R* h这样我们就一目了然了 1 j) v7 Z! V  g; z5 d8 h$ z
用sql调用 第一个版块里的子版块 也就是 11111111   , 2222222, 333333333,4444444444四个板块名称;方法如下:
3 u. h& M6 ?- N7 l{dede:sql sql="select fid,fup,type,name from cdb_forums where fup='1' GROUP BY fid LIMIT 0,4"} & {6 x+ \4 n% ]: P4 V
<a href="/bbs/forumdisplay.php?fid=[field:fid/]">·[field:name function="cn_substr(
[url=]</a[/url]> $ h# V6 L. D) P, m# J$ h
{/dede:sql}
7 L) Z/ J& A2 q/ P- F6 t8 y: e
+ i1 P0 A3 R  T4 z
* v5 e, x( n4 d
附:dedecms的LOOP 标记规则
. H" K* C# @& Z' K7 L, p- g8 u- i  功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作 , v7 x4 B* |9 D) X. z
  适用范围:所有模板 5 j+ y6 K+ g; @" e+ e& H9 x
  基本语法:
+ _/ W& x, i/ K! Y7 g  G  { dede:loop table=' sort='' row='' if='' }
/ y& u6 y4 |, q( X0 a% o* ]  [1] table 表示查询的数据表
' ?; O6 c* T% I; A  [2] sort 用于排序的字段 也可以加"views"(查看次数排列) & X+ C' [* ?4 v! d
  [3] row 返回结果的条数 8 L5 k  F. ~! l# |9 D  e  R) z
  [4] if 查询条件 6 b- `( O7 L; R$ f, g/ N* b' x
7、调用论坛帖子中的图片方法,网上搜到的,此方法同上(幻灯片的地方) - l. Z, |5 l! Y# E8 x/ e3 s) u
{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` - V/ O) O$ k5 t! Y: I+ }& D
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 "}
6 d$ Y+ i4 {% \" w* b. P<a href="/bbs/viewthread.php?tid=[field:tid /]">
2 ]5 c. i; p" R<img src="/bbs/attachments/[field:attachment/]" ALT="[field:subject/]" width="100" height="80" border="0" />
1 J, X5 v- y9 k! p# Q* C, C</A> " |* B$ b2 q0 O2 e
{/dede:sql}
您需要登录后才可以回帖 登录 | 注册


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

GMT+8, 2025-9-22 21:18 , Processed in 0.024001 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部