说明:
在DedeCMS列表中直接输出文章所含附件的下载链接。
用法:
[field:body function="getDownloadUrl(@me)" /]
|
操作:
需要改动2个文件:
第一个:/include/extend.func.php
第二个:/include/fckeditor/editor/dialog/dede_addon.php
在第一个文件中添加函数:
/**
* 说明:输出文章内容中的附件地址,参数为文章内容
**/
function
getDownloadUrl(
$string
,
$name
=
'下载附件'
,
$target
=
"_blank"
){
if
(
empty
(
$string
))
return
''
;
$rs
= preg_match(
'/regfile="(.*?)"/i'
,
$string
,
$array
);
if
(!
empty
(
$array
[1])){
$url
=
$array
[1];
// 模板标签中使用的函数不能传入多个参数,所以HTML一块输出
$html
=
'<a href="'
.
$url
.
'" target="'
.
$target
.
'">('
.
$name
.
')</a>'
;
return
$html
;
}
//'功能制作中……';
}
|
修改第二个文件中的Ok函数中的rvalue为:
function
Ok()
{
var
rurl,widthdd,heightdd,rvalue,rurlname,addonname;
rurlname = form1.rurl.value;
addonname = form1.rname.value;
if
(addonname==
''
) addonname = rurlname;
rurl = encodeURI(form1.rurl.value);
rvalue =
'<table width="450">'
;
rvalue +=
'<tr><td height="30" width="20">'
;
rvalue +=
'<a href="'
+ rurl+
'" target="_blank"><img src="<?php echo $cfg_phpurl; ?>/img/addon.gif" border="0" align="center"></a>'
;
rvalue +=
'</td><td>'
;
// 为a签到添加regfile属性供刚添加的getFileUrl函数使用
rvalue +=
'<a regfile="'
+ rurl +
'" href="'
+ rurl +
'" target="_blank"><u>'
+ addonname +
'</u></a>'
;
rvalue +=
'</td></tr></table>'
;
oEditor.FCK.InsertHtml(rvalue);
return
true
;
}
|
<完>