Вобщем протестировал на phpbb 3.1 и phpBBex 2.0.1
Все работает. Получаем кликабельную ссылку на регистрацию и текст. Смотрите скрин. Установка
Из архива
Копируем: root/styles/prosilver/theme/guest_hide_bbcode_mod.css --> в: styles/prosilver/theme/guest_hide_bbcode_mod.css
Копируем: root/language/en/mods/guest_hide_bbcode_mod.php --> в: language/en/mods/guest_hide_bbcode_mod.php
Далее:
Открываем: includes/functions_content.php
Находим:
Код: Выделить всё
function smiley_text($text, $force_option = false)
{
global $config, $user, $phpbb_root_path;]
Код: Выделить всё
function smiley_text($text, $force_option = false)
{
global $config, $user, $phpbb_root_path, $phpEx, $template;
/* ==================================================================================
*
* @package Guest Hide BBCode MOD PHP code
* @version 1.4.0 of 14.04.2009
* @copyright (c) By Shapoval Andrey Vladimirovich (AllCity) ~ http://allcity.net.ru/
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
================================================================================== */
if (!defined('INCLUDE_GUEST_HIDE_BBCODE_MOD'))
{
define('INCLUDE_GUEST_HIDE_BBCODE_MOD', true);
/* === SETTING === */
define('GUEST_HIDE_BBCODE_MOD_ENABLED', true); /* Enable this MOD? (true = YES, false = NO) */
define('GUEST_HIDE_BBCODE_MOD_BOT', false); /* Enable hide the text from bots? (true = YES, false = NO) */
define('GUEST_HIDE_BBCODE_MOD_REG_LINK', true); /* Enable link to regestration or (login - if regestration disable)? (true = YES, false = NO) */
define('HideBlockAOpen', '<div class="HideBlockA">'); /* Open HTML tag A. (FOR USER) */
define('HideBlockAClose', '</div>'); /* Close HTML tag A. (FOR USER) */
define('HideBlockBOpen', '<div class="HideBlockB">'); /* Open HTML tag B. (FOR GUEST) */
define('HideBlockBClose', '</div>'); /* Close HTML tag B. (FOR GUEST) */
define('HideBlockCLine', '<hr class="HideBlockLine" />'); /* The separation line. */
/* =============== */
define('HideBlockDOpen', '<!-- GuestHideBBCodeMODStart -->'); /* Open HTML replacement - Only for experts! (Do not use the # symbol) */
define('HideBlockDClose', '<!-- GuestHideBBCodeMODEnd -->'); /* Close HTML replacement - Only for experts! (Do not use the # symbol) */
/* === SETTING === */
if (GUEST_HIDE_BBCODE_MOD_ENABLED)
{
$user->add_lang('mods/guest_hide_bbcode_mod');
$template->assign_vars(array('GUEST_HIDE_BBCODE_MOD' => true));
}
}
/* === Do not change anything below this line === */
if (GUEST_HIDE_BBCODE_MOD_ENABLED)
{
if ($user->data['user_id'] == ANONYMOUS || GUEST_HIDE_BBCODE_MOD_BOT && $user->data['is_bot'])
{
$replace_hide = HideBlockBOpen.$user->lang['HIDE_ON'].HideBlockCLine;
if (GUEST_HIDE_BBCODE_MOD_REG_LINK && $config['require_activation'] == USER_ACTIVATION_DISABLE)
{
$replace_hide .= '<a href="'.append_sid("{$phpbb_root_path}ucp.$phpEx",'mode=login').'">'.$user->lang['HIDE_REG'].'</a>';
}
else if (GUEST_HIDE_BBCODE_MOD_REG_LINK && $config['require_activation'] != USER_ACTIVATION_DISABLE)
{
$replace_hide .= '<a href="'.append_sid("{$phpbb_root_path}ucp.$phpEx",'mode=register').'">'.$user->lang['HIDE_REG'].'</a>';
}
else
{
$replace_hide .= $user->lang['HIDE_REG'];
}
$replace_hide .= HideBlockBClose;
}
else
{
$replace_hide = HideBlockAOpen.$user->lang['HIDE_OFF'].HideBlockCLine.'$1'.HideBlockAClose;
}
$text = preg_replace('#'.HideBlockDOpen.'(.*?)'.HideBlockDClose.'#', $replace_hide, $text);
}
/* =============================================================================== */
Находим:
Код: Выделить всё
</head>]
Код: Выделить всё
<!-- IF GUEST_HIDE_BBCODE_MOD -->
<link href="{T_THEME_PATH}/guest_hide_bbcode_mod.css" rel="stylesheet" type="text/css" />
<!-- ENDIF -->
Код: Выделить всё
Использование BBCode: [hide]{TEXT}[/hide]
4. Замена HTML: <!-- GuestHideBBCodeMODStart -->{TEXT}<!-- GuestHideBBCodeMODEnd -->
5. Подсказка: [hide]text[/hide]
Готово!