最近看到dede到4X版了,以前觉得dede还好,就是采集功能太弱了。
这周末试了试,似乎改进了不少。
在此留一些dede会用到东西。
正则表达式采集过滤标签列表
引用
以下是常用的正则表达式标签
{dede:trim}<tbody(.*)>{/dede:trim}
{dede:trim}</tbody>{/dede:trim}
{dede:trim}<table(.*)>{/dede:trim}
{dede:trim}</table>{/dede:trim}
{dede:trim}<tr(.*)>{/dede:trim}
{dede:trim}</tr>{/dede:trim}
{dede:trim}<td(.*)>{/dede:trim}
{dede:trim}</td>{/dede:trim}
{dede:trim}<font(.*)>{/dede:trim}
{dede:trim}</font>{/dede:trim}
{dede:trim}<a(.*)>{/dede:trim}
{dede:trim}</a>{/dede:trim}
{dede:trim}<param(.*)>{/dede:trim}
{dede:trim}<embed(.*)</embed>{/dede:trim}
{dede:trim}<object(.*)</object>{/dede:trim}
{dede:trim}<iframe(.*)</iframe>{/dede:trim}
{dede:trim}<form(.*)</form>{/dede:trim}
{dede:trim}<input(.*)>{/dede:trim}
{dede:trim}<script(.*)</script>{/dede:trim}
{dede:trim}<style(.*)</style>{/dede:trim}
{dede:trim}<!--(.*)-->{/dede:trim}
以下为不常用的正则表达式标签
{dede:trim}<div(.*)>{/dede:trim}
{dede:trim}</div>{/dede:trim}
{dede:trim}<center(.*)>{/dede:trim}
{dede:trim}</center>{/dede:trim}
{dede:trim}<p(.*)>{/dede:trim}
{dede:trim}</p>{/dede:trim}
{dede:trim}<span(.*)>{dede:trim}
{dede:trim}</span>{dede:trim}
{dede:trim}<img(.*)>{/dede:trim}
万能过滤
{dede:trim}</?[aAcCdDeEfFiIoOpPsStT]([^>]*)>{/dede:trim}
/////////////////////////////////////
{dede:trim}<tbody(.*)>{/dede:trim}
{dede:trim}</tbody>{/dede:trim}
{dede:trim}<table(.*)>{/dede:trim}
{dede:trim}</table>{/dede:trim}
{dede:trim}<tr(.*)>{/dede:trim}
{dede:trim}</tr>{/dede:trim}
{dede:trim}<td(.*)>{/dede:trim}
{dede:trim}</td>{/dede:trim}
{dede:trim}<font(.*)>{/dede:trim}
{dede:trim}</font>{/dede:trim}
{dede:trim}<a(.*)>{/dede:trim}
{dede:trim}</a>{/dede:trim}
{dede:trim}<param(.*)>{/dede:trim}
{dede:trim}<embed(.*)</embed>{/dede:trim}
{dede:trim}<object(.*)</object>{/dede:trim}
{dede:trim}<iframe(.*)</iframe>{/dede:trim}
{dede:trim}<form(.*)</form>{/dede:trim}
{dede:trim}<input(.*)>{/dede:trim}
{dede:trim}<script(.*)</script>{/dede:trim}
{dede:trim}<style(.*)</style>{/dede:trim}
{dede:trim}<!--(.*)-->{/dede:trim}
以下为不常用的正则表达式标签
{dede:trim}<div(.*)>{/dede:trim}
{dede:trim}</div>{/dede:trim}
{dede:trim}<center(.*)>{/dede:trim}
{dede:trim}</center>{/dede:trim}
{dede:trim}<p(.*)>{/dede:trim}
{dede:trim}</p>{/dede:trim}
{dede:trim}<span(.*)>{dede:trim}
{dede:trim}</span>{dede:trim}
{dede:trim}<img(.*)>{/dede:trim}
万能过滤
{dede:trim}</?[aAcCdDeEfFiIoOpPsStT]([^>]*)>{/dede:trim}
/////////////////////////////////////
小技巧:增加一个fulltitle标签,让你的title=""显示完整标题
引用
1、打开include目录下inc目录下的inc_fun_SpGetArcList.php文件
2、找到$row['title'] = cn_substr($row['title'],$titlelen);//看到这步有些人已经明白怎么做了吧?呵呵。
3、增加一行 $row['fulltitle'] = $row['title']; //注释:显示完整标题
2、找到$row['title'] = cn_substr($row['title'],$titlelen);//看到这步有些人已经明白怎么做了吧?呵呵。
3、增加一行 $row['fulltitle'] = $row['title']; //注释:显示完整标题
为你自己上传的图片穿一件衣服。
引用
1、后台->系统设置->增加新变量,cfg_imageshow (变量名自己定)
查看图片
点击下载
2、打开FCKeditor/editor/dialog/image.php文件,如果你用的dede编辑器请自行找吧。
3、找到$urlValue = $bfilename 把它换成 $urlValue = $cfg_imageshow.$bfilename 记得有两处都换了。
4、找到$kkkimg = $urlValue; 把它换成 $kkkimg = $bfilename; 这样你上传以后就能在小窗里面预览了。
查看图片
点击下载
2、打开FCKeditor/editor/dialog/image.php文件,如果你用的dede编辑器请自行找吧。
3、找到$urlValue = $bfilename 把它换成 $urlValue = $cfg_imageshow.$bfilename 记得有两处都换了。
4、找到$kkkimg = $urlValue; 把它换成 $kkkimg = $bfilename; 这样你上传以后就能在小窗里面预览了。
删除文章时删除缩图和内容中大图
引用
找到"//删除数据库的内容"
在这前面加上
//删除缩略图
if($arcRow['litpic']!=""){
$dsql->ExecuteNoneQuery("Delete From #@__uploads where url='$arcRow[litpic]'");
$truedir = GetTruePath($arcRow['siterefer'],$arcRow['sitepath']);
$litpicfile = $truedir.$arcRow['litpic'];
@unlink($litpicfile);
}
//删除大图
$arcbodyQuery = "Select * from ".$arcRow['addtable']." where aid='$aid'";
$arcbodyRow = $dsql->GetOne($arcbodyQuery);
$imgsrcarray=GetImageSrc($arcbodyRow['body']);
foreach ($imgsrcarray as $v) {
if((trim($v)!="")&&(!eregi("^http://",$v))){
$dsql->ExecuteNoneQuery("Delete From #@__uploads where url='$v'");
$picfile = $truedir.$v;
@unlink($picfile);
}
}
//删除数据库的内容
第二处:
找到
Select #@__archives.ID,#@__archives.title,#@__archives.typeid
改为:
Select #@__archives.ID,#@__archives.title,#@__archives.typeid,#@__archives.litpic
第三处:
在文件最后加上一函数
//获得内容中的图像地址
function GetImageSrc($body){
if( !isset($body)) return '';
else{
preg_match_all ("/<(img|IMG)(.*)(src|SRC)=[\"|'|]{0,}([h|\/].*(jpg|JPG|gif|GIF))[\"|'|\s]{0,}/isU",$body,$out);
return $out[4];
}
}
在这前面加上
//删除缩略图
if($arcRow['litpic']!=""){
$dsql->ExecuteNoneQuery("Delete From #@__uploads where url='$arcRow[litpic]'");
$truedir = GetTruePath($arcRow['siterefer'],$arcRow['sitepath']);
$litpicfile = $truedir.$arcRow['litpic'];
@unlink($litpicfile);
}
//删除大图
$arcbodyQuery = "Select * from ".$arcRow['addtable']." where aid='$aid'";
$arcbodyRow = $dsql->GetOne($arcbodyQuery);
$imgsrcarray=GetImageSrc($arcbodyRow['body']);
foreach ($imgsrcarray as $v) {
if((trim($v)!="")&&(!eregi("^http://",$v))){
$dsql->ExecuteNoneQuery("Delete From #@__uploads where url='$v'");
$picfile = $truedir.$v;
@unlink($picfile);
}
}
//删除数据库的内容
第二处:
找到
Select #@__archives.ID,#@__archives.title,#@__archives.typeid
改为:
Select #@__archives.ID,#@__archives.title,#@__archives.typeid,#@__archives.litpic
第三处:
在文件最后加上一函数
//获得内容中的图像地址
function GetImageSrc($body){
if( !isset($body)) return '';
else{
preg_match_all ("/<(img|IMG)(.*)(src|SRC)=[\"|'|]{0,}([h|\/].*(jpg|JPG|gif|GIF))[\"|'|\s]{0,}/isU",$body,$out);
return $out[4];
}
}
[小功能]批量删除内容为空的记录
引用
修改方法:
打开content_batch_up.php
第一处,在第21行左右,找到
function ShowHideMove()
{
...(省略)
}
改为
function ShowHideMove()
{
var selBox = document.getElementById('moveradio');
var obj = document.getElementById('moveField');
var selBox2 = document.getElementById('delradio');
var obj2 = document.getElementById('onlybodynull');
if(selBox.checked) obj.style.display = "block";
else obj.style.display = "none";
if(selBox2.checked) obj2.style.display = "block";
else obj2.style.display = "none";
打开content_batch_up.php
第一处,在第21行左右,找到
function ShowHideMove()
{
...(省略)
}
改为
function ShowHideMove()
{
var selBox = document.getElementById('moveradio');
var obj = document.getElementById('moveField');
var selBox2 = document.getElementById('delradio');
var obj2 = document.getElementById('onlybodynull');
if(selBox.checked) obj.style.display = "block";
else obj.style.display = "none";
if(selBox2.checked) obj2.style.display = "block";
else obj2.style.display = "none";
【责任编辑:admin 】










