Перейти к содержимому
Русский язык для Invision Community 5

Здравствуйте.

Помогите,пожалуйста с написанием образца bbcode и php

Нужно примерно следующее

Обрабатывать информацию между тегом и выводить результат работы скрипта в месте, где был указан тег.

Пример (просто пример, никак не связан с задумкой, но показывает суть, что я хочу):

Ввожу
[mybb]2+2+2[/mybb]
Получаю 
6

То есть, скрипт получает данные из ббкода, делает с ними какие то функции, и выводит результат на месте тега.

 

Возможно ли такое сделать?

Посмотрел пример файла стадартных ббкодов (defaults.php) и особо не разобрался что к чему...

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

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

  • Автор

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

Я думаю, это не помеха

Образец ббкода table привязного к php файлу http://ipbskins.ru/forum/topic5925.html

В настройках ббкода нужно указать имя php файла, который должен находиться в папке /admin/sources/classes/text/parser/bbcode/

  • Автор

Положил файл из того примера в папку /admin/sources/classes/text/parser/bbcode

Создал ббкод , указал тег такой же как и в файле (в файле менял)

попытался зайти в тему (еще даже не писал ничего с этим тегом) и вот ошибка

Fatal error: Class 'bbcode_parent_main_class' not found in /var/www/data/www/admin/sources/classes/bbcode/custom/defaults.php on line 1144

Вместо bbcode_parent_class нужно использовать bbcode_parent_main_class

  • Автор

Исправил,ничего не изменилось, эта же ошибка

Адрес 'sources/classes/bbcode/custom/defaults.php' заменить на 'sources/classes/text/parser/bbcode/defaults.php'

Видимо все же тот пример был взят со старой версии.

  • Автор

Сделал, теперь ничего не происходит, тег не обрабатывается

При кеширование сообщений ббкод будет обрабатываться только при отправке сообщения или обновления кеша.

За замену ббкода отвечает метод _replaceText. Начните с его дебагом.

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.