2010-09-22 42 views
0

我试图找到一种方法来启用PHPBB中的HTML标记(仅限于管理员)。在PHPBB中启用HTML标记

你知道我该怎么做到这一点?

谢谢

+0

这个问题似乎是脱离主题,因为它是关于建立一个PHPBB系统。 – ChrisF 2014-06-27 09:16:17

回答

3

这不支持开箱即用。您应该使用自定义BBCodes。如果您确实坚持使用HTML标记,则可以使用Enable HTML MOD。

0

最近我忙于将基于Snitz 2.x的论坛移植到phpbb3论坛。 我不得不处理的主要挑战是围绕邮件正文中的HTML支持。 Snitz允许HTML内部的帖子正文,但phpbb3 forbids内部的HTML标签。 由于我们有大约40000个帖子,其中许多帖子包含HTML标签,我们必须为此找到解决方案。我们使用Enable HTML MOD,但我们修改它。 原有的功能:

function enable_html($text, $uid) 
{ 
    if (strpos($text, '[html') === false) 
    { 
     return $text; 
    } 

    $text = str_replace(array('[html:' . $uid . ']', '[/html:' . $uid . ']'), array('[html]', '[/html]'), $text); 

    $text_ary = explode('[html]', $text); 
    $text = ''; 
    foreach ($text_ary as $tmp) 
    { 
     if (strpos($tmp, '[/html]')) 
     { 
      $tmp = explode('[/html]', $tmp, 2); 
      $text .= htmlspecialchars_decode(str_replace(array("\r\n", "\n"), ' ', $tmp[0])) . $tmp[1]; 
     } 
     else 
     { 
      $text .= $tmp; 
     } 
    } 

    return str_replace(array('[html]', '[/html]'), '', $text); 
} 

进行了修改,

function enable_html($text, $uid) 
{ 
    return htmlspecialchars_decode($text); 
} 

最后一步是给新的权限给用户,我们得到的HTML渲染为我们Snitz了它。