织梦会员中心发布文章自动过滤外部外部链接,保留本站站内链接。这个织梦默认后台本身带有这样的功能的,只是会员模块里没有而已。
(此图片来源于网络,如有侵权,请联系删除! )
我们可以把功能嫁接到会员模块里去使用,实现自动过滤外部链接
实现教程
打开 /member/inc/inc_archives_functions.php 在文件的最下面插件
复制functionReplace_Links(&$body, $allow_urls=array()){
$host_rule=join(|, $allow_urls);
$host_rule=preg_replace(“#[
\r]#”,, $host_rule);
$host_rule=str_replace(.,“\\.”, $host_rule);
$host_rule=str_replace(/,“\/”, $host_rule);
$arr=;
preg_match_all(“#<a([^>]*)>(.*)</a>#iU”, $body, $arr);if( is_array($arr[0])){
$rparr=array();
$tgarr=array();foreach($arr[0]as $i=>$v){if( $host_rule !=&& preg_match(#.$host_rule.#i, $arr[1][$i])){continue;}else{
$rparr[]=$v;
$tgarr[]=$arr[2][$i];}}if(!empty($rparr)){
$body=str_replace($rparr, $tgarr, $body);}}
$arr=$rparr=$tgarr=;return $body;}
继续在这个文件中找到,大概在329行
复制//自动摘要
在它上面加入
复制//删除非站内链接
$allow_urls=array($_SERVER[HTTP_HOST]);// 读取允许的超链接设置if(file_exists(DEDEDATA.“/admin/allowurl.txt”)){
$allow_urls=array_merge($allow_urls, file(DEDEDATA.“/admin/allowurl.txt”));}
$body=Replace_Links($body, $allow_urls);
如图
(此图片来源于网络,如有侵权,请联系删除! )
完成