
织梦会员中心发布文章自动过滤外部外部链接,保留本站站内链接。这个织梦默认后台本身带有这样的功能的,只是会员模块里没有而已。
我们可以把功能嫁接到会员模块里去使用,实现自动过滤外部链接
实现教程如下:
打开 /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); |
如图:
上一篇:详解织梦dedecms标签{dede:flink /}用法
下一篇:dedecms织梦判断某字段调用详细教程
总结以上是内存溢出为你收集整理的禁止织梦会员发布文章内容中带超链接修改教程全部内容,希望文章能够帮你解决禁止织梦会员发布文章内容中带超链接修改教程所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)