好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

织梦批量替换文章中超链接方法 - DeDecms

织梦批量替换文章中超链接方法

我自己的一个网站由以前采集里面有很多连接没有过滤掉,现在想再过滤这些连接了,找了很多找到了一个解决办法,下面分享给各位朋友有需要的可参考.

把下面代码保存replace.php保存在你网站根目录,代码如下:

require ( "data/common.inc.php" );  $conn =mysql_connect( $cfg_dbhost , $cfg_dbuser , $cfg_dbpwd )  or   die ( "数据库服务器链接失败" );  mysql_select_db( $cfg_dbname )  or   die  ( "数据库打开失败" );  mysql_query( "SET NAMES 'gbk'" );  $sql = "select * from {$cfg_dbprefix}addonarticle order by aid desc" ;  $result =mysql_query( $sql );  while ( $rows =mysql_fetch_array( $result ))  {       $body = $rows [ "body" ];       $newbody =preg_replace( "/(?<=href=)([^>]*)(?=>)/i" , "http://HdhCmsTest111cn.net" ,  $body );            $sqlu = "update {$cfg_dbprefix}addonarticle set body='" . $newbody . "' where aid=" . $rows [ "aid" ];                 $resultu =mysql_query( $sqlu );       if (! $resultu )      {           $eoo []= $rows [ "aid" ];               }  }  if (isset( $eoo ))  {       echo   "有错误,有错误的ID如下: " ;      print_r( $eoo );  }  else   {       echo   "执行成功" ;  }  ?> 

还有一种办法在dedecms后台中的sql命令方式下载替换,语句 DEDECMS SQL命令批量替换.

1.更改文章中的内容,代码如下:

update dede_addonarticle set body=replace(body,'原来的字符','替换后的字符')

批量替换文章模型中内容部分超链接,代码如下:

1.update dede_addonarticle set body=replace(body,'href="http://HdhCmsTestphpfensi测试数据','href="http://phpfensi测试数据');

例子解释: 把文章模型中的超链接由原来的http://HdhCmsTestphpfensi测试数据替换成http://phpfensi测试数据

查看更多关于织梦批量替换文章中超链接方法 - DeDecms的详细内容...

  阅读:47次