织梦优化

织梦dede如何禁止会员发布文章内容带超链接

织梦dede如何禁止会员发布文章内容带超链接

温馨提示:DedeCMS用户请及时前往织梦官网处理官方版权事宜。
织梦dede如何禁止会员发布文章内容带超链接

实现教程

打开/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("#[\n\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);

本文属原创,转载请注明原文:http://www.zhimatong.com/jiaocheng/173.html

为保证教程的实用性及扩大知识面覆盖,如果您有相似问题而未解决,可联系在线客服免费技术支持。

内容有用

联系
顾问

在线
客服
购物车
账号登录

没有账号?立即注册

忘记密码

登录即同意用户协议没有账号? 立即注册
账号注册
我已阅读并同意用户协议
立即注册
注册即同意用户协议已有账号? 立即登录
找回密码

操作步骤:邮箱验证->设置新密码

注册即同意用户协议已有账号? 立即登录