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

Функции в IPB - Возможно ли?


Vladiger

Вопрос

Хотелось бы узнать:

Возможно ли в IPB создавать свои функции, не изменяя основных PHP файлов движка?

 

То есть:

Я создаю небольшой HTML фрагментик который к примеру обрисовывает таблицу покругу собственной графикой (ну или что нибудь другое, неважно).

Далее, для того что бы использовать этот кусок HTML неоднократно, мне удобней всего назначить на него фунуцию, к примеру: OPENTABLE

Внутри этой обрисованной таблицы будет находиться HTML контент, который мне необходимо передать переменной, например: $title

В итоге:

Например в обычном PHP файле, я запросто мог это сделать так:

function opentable($title) {
<html контент открывающий таблицу>
$title
<html контент закрывающий таблицу>
}

Теперь имея подключенную функцию, я могу открывать свою панельку сколько угодно, выполняя всего одну команду:

opentable('Моя панель');

 

Подобное я смог реализовать в IPB при помощи макросов. То есть создаю свой макрос например:

<{OPEN_TABLE}>

в котором прописываю кусок HTML кода. Затем я использую этот макрос в любом из HTML фрагментов IPB.

Вот только как передать макросу переменныю $title?

Может как-то можно измачиться с собственными HTML фрагментами?

Вообщем пока у меня не получается. Помогите советом если кто-то сталкивался с подобным.

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

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

  • 0

на мой взгляд - самый просто способ - использовать ббкод.

в админке в управлении дополнительными ббкодами создаём новый бб код. придумываем для него код - типа OPTA и в поле замены BBкода пишем <html контент открывающий таблицу>{content}<html контент закрывающий таблицу> и после добвления форум автоматом будет заменять тег [opta] Нужный текст [/opta] на нужный html код и будет подставлять необходимый текст.

 

Это если в только в постах требуется. а если в других местах - то нужно всётаки править/добавлять файлы и скин.

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

  • 0

Vladiger

 

к сожалению в полной мере использовать модули без изменения двигла нет(мне кажется вам навеяло эту идею двигло битрикса)... можно только в шаблонах использовать управлющую конструкцию if-else

 

пример

<if="some_do%2==0">
тут какой-то HTML
</if>
<else>
тут какой-то HTML
</else>

 

заметьте что в условии я не использовал знака $ ибо при парсинге, потом он подставится автоматически.

 

так же есть возможность использовать автомодули, но это будут практически независимые модули.

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

  • 0

Спасибо за ответы! ;)

Вообщем примерно так я и думал. Просто как говорится: "Надежда умирает последней!"

Эту идею (обрисовать таблицы) мне навеял, низачто не поверите: PHP-Fusion гы-гы-гы!!!

Дело в том, что я обратил внимание что в структуре движка все таблички именно так и открываются, командой opentable и closetable. К тому-же эти функции включают в себя как раз такую обрисовку таблиц HTML кодом, заключая контент таблицы в красивую рамочку.

 

Вот я и подумал как это можно реализовать в IPB при написании собственного скина. Вообщем я решил проблему просто:

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

 

С макросами впринципе этот прием оказался возможным, но до ужасса неудобным. Впрочем вполне приемлемо.

А вот с BB кодом, я честно говоря не пробовал, но немного непонятно:

BB код будет работать в сообщениях на форуме. А будет ли он работать в HTML фрагментах скина? :D

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

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

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

Гость
Ответить на вопрос...

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

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

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

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

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

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

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

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