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

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

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

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2010-8-22 01:05:23 |只看该作者 |倒序浏览
调用帖子内容摘要信息 0 Y/ v" _+ D$ ^- \# `
{dede:loop table="cdb_posts" sort="tid" row="3"}
% p* V4 K2 r4 L% }  A5 p" z<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',100)" /]</a>
/ K3 Q4 X& b5 v3 l& ^$ O6 [6 ~[field:message function="cn_substr('@me',46)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
* {6 n' P& S4 v% T1 e6 Z8 K- b& A</li> , V' ^* k) u  b1 o6 I4 ]9 u
{/dede:loop}
; Q/ V: {, L7 c7 s- U9 P, Z1 ?3 {
调用查看次数最多的帖子。 6 `; S, P: c5 ?: A! P
{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="views" row="8"}
/ v, y0 k) t! K5 O0 E1 \<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a>
" G6 t- E, }2 I0 @) Z, [[[field:lastpost function="date('m-d','@me')" /]]
, o) r7 j# z* y</li>
$ [9 F& M2 P) Z2 K+ f5 }# N{/dede:loop}
7 W; T7 X6 v% o- r: o调用回复次数最多的帖子。
2 u6 [: v" m: I{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="replies" row="8"}
0 i) z; \. M& |$ I4 G<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> / G4 h* d4 `) |
[[field:lastpost function="date('m-d','@me')" /]]
; ~& n6 h( v. ~% |/ Q/ r' Q</li> 3 O  y- Z; g! e# l2 A' M7 t2 C3 {
{/dede:loop} . F! D* N7 n6 \1 t- b
调用精华帖子 帖子分为1级精华2级精华3级精华。精华越高排在最前面
# \  i5 F; h2 N, E7 `8 W; e0 q{dede:loop table="cdb_threads" if="fid=4 and displayorder!=-1" sort="digest" row="8"}
) ?9 p- q, o; W% X  h<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',26)" /]</a> # N. h% \" S1 R" [- A2 D8 [
[[field:lastpost function="date('m-d','@me')" /]]
$ l9 ~: a, O1 W; C' h</li> * ~" c, m7 s4 L
{/dede:loop}
2 w2 n7 a" E; w3 Y调用帖子内容摘要信息
' s. Q# w0 H$ j5 M- J1 w
" s& b, x: B6 Y6 Dfirst=1 只显示第一楼主题的信息。first=0 就是只显示回复信息 fid=4就是板块的id tid就是主题的id sort="tid" 按主题倒序排序 0 M* t" c" a! y  |1 w! l3 c
; g/ S- t7 ^$ S" o# [, }
{dede:loop table="cdb_posts" if="first=1 and fid=4" sort="tid" row="3"}
# P  W, H: {" j0 s: p# |0 R6 v<li><a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[field:subject function="cn_substr('@me',46)" /]</a> 9 v6 t4 _; w, v% W  _- h; ?
[field:message function="cn_substr('@me',60)" /]...<a href="/bbs/thread-[field:tid/]-1-1.html" target="_blank">[查看全文]</a>
' v" C- s/ U( c0 Y! Z4 w1 W</li> + c' N4 W4 I& O2 x0 p
{/dede:loop} , n" ^, r+ V& k- n, M* d7 c
幻灯片调用DZ论坛图片显示
& r- I! k" Q3 M/ @% M<script language='javascript'>
8 M) j* r' X. ?' m  |' |linkarr = new Array(); - u% Z* q+ ^: Y, l
picarr = new Array();
& v& T  V0 p/ g) N8 L1 Rtextarr = new Array(); 7 ^5 V, [2 I  I$ X9 A4 d
var swf_width=280; " M5 V( m8 M0 z% P1 t
var swf_height=192;
6 E' n0 O7 E# N+ f) ~; l- Evar files = ""; $ D7 U* N8 g+ A  ^
var links = "";
8 `& F5 e# _; Q: z& Ivar texts = "";
* N$ I9 V4 `9 ]8 l//这里设置调用标记 - i/ d/ M! X! ]% K, t+ R
{dede:sql sql="SELECT`cdb_attachments`.`aid`, `cdb_attachments`.`attachment`,`cdb_threads`.`tid`, `cdb_threads`.`fid`, , f5 u; \: C+ n5 z# D  l1 K
, ~1 O7 g$ d" H4 U8 l1 e
`cdb_threads`.`subject` FROM `cdb_attachments` LEFT JOIN `cdb_threads` ON `cdb_threads`.`tid`=`cdb_attachments`.`tid` WHERE
7 X. }( Y, J  ^8 v2 J3 _' B3 O
, v, B* ~! j, Y  N1 E- f`cdb_attachments`.`readperm`='0' AND `displayorder`>='0' AND `filetype`='image/pjpeg' GROUP BY tid LIMIT 0,1 "}
+ A' I! d) m6 h! {1 s& q' d9 r9 ^; a9 O+ R2 e& E
linkarr[[field:global.autoindex/]] = "/bbs/viewthread.php?tid=[field:tid /]";
# d- f7 j$ u4 E2 A8 s7 Z1 M3 Epicarr[[field:global.autoindex/]] = "/bbs/attachments/[field:attachment/]"; ( o/ w1 [7 F% ^7 i6 J% v
textarr[[field:global.autoindex/]] = "[field:subject function='html2text(@me)'/]"; , T* ], k) a# |3 m
{/dede:sql}
                   //原来的替换成这里,本人亲自测试可用,上面红色字 dz7.2版本数据表里那个值的内容不一样 换掉就可以的 我索性直接删掉了红色字 不影响 随便了
8 R/ c# C! e: n0 U
6 n5 C1 _# T/ o$ ofor(i=1;i<picarr.length;i++){
2 r/ c$ h$ J- T8 P9 @9 r2 \if(files=="") files = picarr;
  g9 W* I3 y: A; S+ S4 R; E& gelse files += "|"+picarr; * v& g! S* a( C
}
! _5 L* {. F3 I+ Jfor(i=1;i<linkarr.length;i++){ 4 u2 b, T1 f* W$ y* x
if(links=="") links = linkarr; ' w) ^3 \% g2 k. O( d9 n
else links += "|"+linkarr; 1 `. {) N4 A2 i" S% _% H4 |; q
}
2 C; B! Z' s4 A! x; |) t- y3 o2 Kfor(i=1;i<textarr.length;i++){
3 u& ~/ |: c; J6 kif(texts=="") texts = textarr; # t8 `, [* }7 R. A8 ]5 [- @
else texts += "|"+textarr;
1 x. Z$ ^' p+ B- t- B# B}
; m5 t3 O7 N  o9 L! b- Edocument.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" 4 C) s6 I: k- y# ~

3 [. `7 @1 ]! l& Zcodebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'"
0 K3 x4 h: B5 D" o" J) `. m  V$ E9 ]8 s* r
height="'+ swf_height +'">');
1 _5 H3 y4 j. \0 N; w; ]document.write('<param name="movie" value="{dede:global.cfg_templeturl/}/images/bcastr3.swf"><param name="quality"
' C5 z# B; O3 ~7 w1 s9 G5 ]( ^$ L/ J2 u! c$ i3 \! R
value="high">');
- _' w2 G  z' Kdocument.write('<param name="menu" value="false"><param name=wmode value="opaque">'); + ~7 S+ z3 `4 ]% i- m  L8 C" n# P
document.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'">'); & w7 ^0 y3 O8 m% u9 h
document.write('<embed src="{dede:global.cfg_templeturl/}/images/bcastr3.swf" wmode="opaque" + R9 m9 X0 I0 ?( B5 H

3 m. [9 X' ^0 K. CFlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'& menu="false" quality="high" width="'+ * n1 k) G$ U2 ^) u
4 m% k. B% B: A+ P/ R  I# J1 }
swf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash" 3 _# T+ |! H5 |% S; n
3 f$ ]4 y% d7 z% }+ u4 r4 N  @
pluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>'); 7 F$ e( _  `( K
</script>

0 d$ d+ a" b7 j+ r+ m, P, Y: o( T8 |7 C
$ c; E5 @2 A- X0 I' {
调用Dz论坛图片,特定板块。AND `cdb_threads`.`fid` ='12' GROUP BY tid LIMIT 0,5 中的fid就是板块id limit 0,5 就是5条数据
1 y4 ^2 K5 Q. h7 ]
- `! a9 a0 k6 |* e$ r5 {6 }% |
! {6 t& n, {# r; s1、论坛最新主题调用代码如下: {dede:loop table="cdb_threads" sort="tid" row="10"}
6 V4 d+ p1 q8 p<a href="/bbs/viewthread.php?tid=[field:tid /]">
2 y  X1 C% e+ K5 n·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> . C3 H4 d- {' |' C. N" X9 y5 ^
<br/> ) N# R( y2 v' c9 {+ [3 y7 ], Q+ w
{/dede:loop} 6 C$ k7 w; _7 c( i4 K
这个连接地址你可以写相对路径,也可以写绝对路径。 0 h& E3 E& H; l$ v% X
  如果是discuz动态论坛,链接地址如[url=]http://bbs.xxx.com/viewthread.php?tid=[/url][field:tid /] ; ]$ |1 U; }4 O/ H& G3 O* i2 W
  如果是discuz静态论坛,连接地址如[url=]http://bbs.xxx.com/thread-[/url][field:tid /]-1-1.html ) f0 E8 o3 \  Z
2、论坛指定版块帖子调用方法:
; T0 N8 ?+ \% }# [* P$ _{ dede:loop table="cdb_threads" if="fid=1 or fid=2 and displayorder!=-1" sort="tid" row="6" } . Z$ r+ \; C% d# x9 b/ Q# `8 P
<a href="/bbs/viewthread dot php?tid=[field:tid /]" target="_blank"> . U3 g& e" O5 w- p. r
·[field:subject function="cn_substr(' @ me',50)" /] </a>
/ T+ B2 L( i5 i<br/>
2 t0 C, Q# |1 v6 i9 Y+ s- c4 X{ /dede:loop } 8 r$ g$ H5 f. K
其中的fid=1 or fid=2是论坛主题分类id,可以按照自己要求来修改,如果是一个分类就直接写fid=x / w! V- X' M( W. h" U4 o
3、论坛调精华主题调用代码如下:
2 m: t$ G) H/ H" v2 w  p3 W{dede:loop table="cdb_threads" if="displayorder!=-1" sort="tid" row="10"} % x3 j. |" Z7 P% ?2 o  a; t0 i
<a href="/bbs/viewthread.php?tid=[field:tid /]">
# p% E6 E; f. p5 k# p$ A·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a>   N2 w5 g. U. c+ Y
<br/> : Z/ y0 c/ U6 W' k8 A6 w# [
{/dede:loop} - v. K3 _  I: X; Y: e* b. D
如果想调用某个板块的精华主题代码如下: % G8 p# o! a, I# v. \
{dede:loop table="cdb_threads" if="fid=5 and displayorder!=-1" sort="tid" row="10"} , ~0 w* S& X, v" @/ @
<a href="/bbs/viewthread.php?tid=[field:tid /]"> " z5 ?1 \! _+ f! I
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> 9 D( A0 O% s% Y( s
<br/> - f+ T2 Y& v/ x9 e2 a( U
{/dede:loop}
* Z8 }8 w: X6 y$ T其中的fid=5是论坛主题分类id,可以按照自己要求来修改,
" U9 P$ C# @" a7 W& B! Y8 U- C  如果想调用论坛所有的板块的最新精华主题只要去掉fid=5 and 就可以了。 - i  m) z1 T+ X* U0 b7 H
4、调用的帖子列表这可以按查看次数排序,代码如下: - a$ s. ]) F0 c7 l! O- S9 V5 O0 c
{dede:loop table="cdb_threads" sort="views" row="10"}
4 c! j: j# n& S# A$ n8 S  o<a href="/dz/viewthread.php?tid=[field:tid /]"> ! h, R: z- A( F( g$ n0 }0 A/ C: F) r2 D
·[field:subject function="cn_substr('@me',30)" /]([field:lastpost function="date('m-d H:M','@me')" /])</a> 9 t& m, e" I& ^- I* E7 d. s
<br/> " {! c6 @/ V! D) p- H
{/dede:loop} 4 u% |7 n0 R3 w( k
其中sort="views" 就是控制按照查看次数排序的代码   L9 S, b. e6 x. q* N( a
5、论坛置顶版块帖子调用方法举例:
0 I: A) @4 I; a% K1 r% }+ S{ dede:loop table="cdb_threads" sort="dateline" if="fid='3' and typeid='51'" row="10" }
  x+ [5 S: W  v: ~+ y% `' u1 G- p<a href="/a/bbs/viewthread dot php?tid=[field:tid /]" target="_blank"> - f$ B- Y) q5 C/ E3 N
·[field:subject function="cn_substr(' @ me',30)" /]</a> <br> # B3 r* E; s. c% M* c
{ /dede:loop }
1 {0 |7 q" d! j( k" D" X6、论坛版块名称调用方法
/ @' o1 x! Z4 C2 B! P' m* R4 n{ dede:loop table="cdb_forums" sort="displayorder" row="16" col="4" } ( [6 R8 L" T- u) M0 C; ?
<a href="/bbs/viewthread dot php?fid=[field:fid /]">·[field:name function="cn_substr(' @me',30)" /] </a>
% @6 b3 Z0 w3 L! Y- u4 _8 Z: |{ /dede:loop }
7 V  Y7 ]# O+ j- o% m+ G0 [注:这种方法这个还有点问题,它会将论坛分区、版块都调出来。
1 S: b$ S2 P( o8 C" }! v) W但是我们可以不用 loop方式 换用sql语句来调用(这种方法万能 呵呵!!)下面看图
, M* C" t- R. W0 M8 {
# w% ^4 s& i; R1 z* Z5 C! ]7 `
. o2 X) B5 W( W9 C7 D  s  @1 U# Z) q$ N- W
版块都是放在上面表中的
2 U  L& A5 d- }& b9 w% Y4 o0 w- z/ J表部分结构如下: $ X! t% I1 ~# [6 {
; r* b( S$ H' `

; z: V* m' j3 u. q: v 6 |8 s2 F' h' Z1 i
这样我们就一目了然了
& V4 \/ a/ Q1 e8 H; Z: w% ~5 ^( Y用sql调用 第一个版块里的子版块 也就是 11111111   , 2222222, 333333333,4444444444四个板块名称;方法如下:
1 p) e1 Q% B9 q$ b{dede:sql sql="select fid,fup,type,name from cdb_forums where fup='1' GROUP BY fid LIMIT 0,4"} ; R+ T" o; i3 ~, b3 Q$ J
<a href="/bbs/forumdisplay.php?fid=[field:fid/]">·[field:name function="cn_substr(
[url=]</a[/url]> , b1 c; [5 {% l
{/dede:sql}

' h3 }% p& j1 u" I' b
( v9 D: g' A" j9 D4 n* s0 P$ J8 Z& }3 @: z: p! I
附:dedecms的LOOP 标记规则
4 T4 H3 i4 m8 O/ _  功能说明:用于调用任意表的数据,一般用于调用论坛贴子之类的操作
# J& q' J3 a5 X; p) [8 I  适用范围:所有模板 ( m- p+ Q3 ?' T( Y8 c
  基本语法:
* `) G( A7 C3 [9 W# u, W' N8 o/ U  { dede:loop table=' sort='' row='' if='' } & J0 f) J) J" G( [0 S
  [1] table 表示查询的数据表 " i5 }4 I9 D, P
  [2] sort 用于排序的字段 也可以加"views"(查看次数排列) . V( C+ N+ ^: M' O! E3 v4 X2 R+ D
  [3] row 返回结果的条数
9 B0 C4 i% `+ u, A) k: @  [4] if 查询条件
! G, ?. ]0 s0 Z8 k7、调用论坛帖子中的图片方法,网上搜到的,此方法同上(幻灯片的地方) ! k3 b/ ]  J. r. f  O
{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` 7 \: S3 Y$ P- D  }( S7 \
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 "} " @  U1 M( }. m, e
<a href="/bbs/viewthread.php?tid=[field:tid /]"> ! D% x* }4 o9 M2 U- a% x
<img src="/bbs/attachments/[field:attachment/]" ALT="[field:subject/]" width="100" height="80" border="0" />
; p2 G4 n7 U+ u! {</A> ' t# o" F+ t- r$ x0 z2 a
{/dede:sql}
您需要登录后才可以回帖 登录 | 注册


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

GMT+8, 2025-11-27 01:35 , Processed in 0.023002 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部