Перейти к контенту

IPB 2.1: BBCode


Рекомендуемые сообщения

Анализатор BBcode

Эта инструкция поможет Вам использовать Bbcode в модификациях и прочем.

 

Система использует класс обработчика и несколько подклассов. Следующим образом есть четыре главных функции:

 

pre_db_parse

Эта функция переводит текст (POST) в BBcode.

 

pre_edit_parse

Эта функция переводит BBcode в текст.

 

Эта функция преобразовывает все Bbcode в нормальных готовый для отображения HTML код.

 

Первое необходимое действие состоит в том, чтобы загрузить функции в ваш сценарий.

 

//-----------------------------------------

// Загрузка и конфигурация парсера

//-----------------------------------------

 

require_once( ROOT_PATH."sources/handlers/han_parse_bbcode.php" );

$parser = new parse_bbcode();

$parser->ipsclass =& $this->ipsclass;

$parser->allow_update_caches = 1;

$parser->bypass_badwords = intval($this->ipsclass->member['g_bypass_badwords']);

 

$parser->allow_update_caches = [int] Управляет смайликами.

$parser->bypass_badwords = [int] Анализируется на так называемые "плохие слова" - слова из фильтра.

 

Если вы желаете преобразовывать отправляемый по почте текст в BBCode

 

$parser->parse_smilies = 1;

$parser->parse_bbcode = 1;

 

$bbcode_text = $parser->pre_db_parse( $_POST['text'] );

 

$parser->parse_smilies = [int] Анализирует, заменять ли символы на смайлики или оставлять их прежними (в виде текста).

$parser->parse_bbcode = [int] This tells the BBCode classes whether to parse BBcode in this raw text

 

Если желаете обработать Bbcode и HTML:

 

$parser->parse_html = 0;

$parser->parse_nl2br = 1;

 

$ready_to_print = $parser->pre_display_parse( $bbcode_text );

 

$parser->parse_html = [int] Это для преобразовании Bbcode в HTML

$parser->parse_nl2br = [int] Автоматически вставляет тег <br /> если HTML отключен (при нажатии enter, перевода строки)

 

Иногда, Вы можете сохранить неинтерпретируемый текст поста. IPB делает это с личными сообщениями, календарными событиями и объявлениями. В этом случае, Вы использовали бы следующее:

 

$parser->parse_html = 0;

$parser->parse_nl2br = 1;

$parser->parse_smilies = 1;

$parser->parse_bbcode = 1;

 

$bbcode_text = $parser->pre_db_parse( $_POST['text'] );

$ready_to_print = $parser->pre_display_parse( $bbcode_text );

 

Если Вы желаете преобразовать уже преобразованный BBCode назад в текст (например для использования в редактирующем экране) используют это:

 

$raw_post = $parser->pre_edit_parse( $parsed_text );

 

Конечно, если Вы используете мощный редактор текста (режим полного соответствия) тогда, Вы не хотите HTML, мощный редактор текста покажет неразобранным тэгам BBCode, и не отформатированному HTML. В этом случае используйте это:

 

$raw_post = $parser->convert_ipb_html_to_html( $parsed_text );

 

© Matt

Изменено пользователем Master
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.