织梦dedecms会员发布文章内容自动过滤外部链接的方法

简介: 织梦会员中心发布文章自动过滤外部外部链接,保留本站站内链接。这个织梦默认后台本身带有这样的功能的,只是会员模块里没有而已。

织梦会员中心发布文章自动过滤外部外部链接,保留本站站内链接。这个织梦默认后台本身带有这样的功能的,只是会员模块里没有而已。

 

我们可以把功能嫁接到会员模块里去使用,实现自动过滤外部链接

实现教程:

 

打开 /member/inc/inc_archives_functions.php 在文件的最下面插入:

 

/**

*  删除非站内链接

*

* @access    public

* @param     string  $body  内容

* @param     array  $allow_urls  允许的超链接

* @return    string

*/

function Replace_Links( &$body, $allow_urls=array()  )

{

   $host_rule = join(‘|’, $allow_urls);

   $host_rule = preg_replace(“#[nr]#”, ”, $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);

相关文章
|
4月前
|
搜索推荐
一文教会你:如何在搜索过程中过滤CSDN的相关文章,一次设置永久过滤
这篇文章教你如何在浏览器搜索设置中添加自定义搜索引擎,通过在搜索查询中加入"-csdn"参数来过滤掉CSDN的搜索结果,从而提高搜索结果的质量。
一文教会你:如何在搜索过程中过滤CSDN的相关文章,一次设置永久过滤
网页编辑Office Word文档,开启修订功能,启用留痕、显示留痕并接受留痕
在日常办公环境场景下,有时候会遇到帮助他人修改文档或者为文档提供修改意见,如果我们在文档中直接修改,其他人很不容易看到我们修改了哪个部分,如果一旦你的修改意见不被采纳,原作者还需要恢复原来的文档,这样为别人带来了更多的工作。 如果用猿大师办公助手在网页中编辑Office Word文档,开启修订功能,启用留痕、显示留痕并接受留痕,就可以很好的来解决此问题。
457 12
|
7月前
|
Linux 网络安全 数据库
收集站点信息:第三方网站查询(附链接)
收集站点信息:第三方网站查询(附链接)
|
7月前
|
安全 JavaScript 开发者
网址链接跳转外部安全提醒代码
网页的安全性优化是一个越来越被开发者重视的问题,当本站链接点击跳转到第三方外链接时,要弹框提示信息,需要支持jquery引用 。
105 0
|
存储 机器人 API
typecho博客增加评论过滤插件/违禁词拦截
typecho博客增加评论过滤插件/违禁词拦截
415 0
|
XML 安全 数据格式
漏洞赏金猎人系列-测试电商类相关功能步骤和Tips-I
电商类的网站国内算是很多了,这里主要总结下相关业务功能的测试步骤以及技巧 正文
158 1
|
JavaScript 开发者
get方式提交新闻防止新闻被覆盖掉(补充说明)|学习笔记
快速学习 get 方式提交新闻防止新闻被覆盖掉(补充说明)
get方式提交新闻防止新闻被覆盖掉(补充说明)|学习笔记
|
JSON JavaScript 数据格式
get 方式提交新闻防止新闻被覆盖掉|学习笔记
快速学习 get 方式提交新闻防止新闻被覆盖掉
get 方式提交新闻防止新闻被覆盖掉|学习笔记
|
Web App开发 安全 JavaScript
漏洞赏金猎人系列-测试电商类相关功能步骤和Tips-II
前言 本文为本系列的第二篇,前篇有: 漏洞赏金猎人系列-测试电商类相关功能步骤和Tips-I
141 0
关闭“通过手机号搜索”依然能被找到?微博:Bug背锅
3月13日,有微博网友称新浪微博出现Bug,即使关闭“通过手机号搜索”选项依然能被找到。
749 0