Маловато мне стало возможностей, которые предоставляет форум, хочу сделать свои, но не знаю, как и вообще возможно ли это Поэтому обращаюсь за помощью к знатокам.
Суть такая (в простом виде). Мне надо, чтобы в профиле пользователей была галочка с каким-то описанием. Если пользователь ставит эту галочку, то ему показывается одна шапка форума, если он ее снимает, то другая.
На самом деле надо не для этого, но это самый простой и понятный пример. Т.е. надо самому создать условие, проверка которого будет выполняться форумом, а вписываться оно будет в какой-то шаблон.
Насколько это реально и трудно?
можно делать свои, дополнительные настройки, для этого нужно включить дебаг моде в админке (хак есть на форуме) и там уже задавать свои настройки, а в шаблонах и коде плагинов свои условия выполнения этих настроек, посмотри так же список хуков, а какой за что отвечает, нужно рыть в самих файлах воблы, тогда будет более-менее понятно, где подключать свой код
для отладки и просмотра нагрузки сервера или кол-во выполненных запросов, можно включить дебаг и на форуме или поставить хак "микростатс"
=))
в общем то, сложно только начать
если что то конкретное непонятно - спрашивай, постараюсь помочь... =))
Да, я поставил дебуг, посмотрел его возможности. В принципе, понятно для чего он нужен и что он может. Загвоздка лишь в том, что я не понял, как это делать :( Есть ли где-нибудь описание того, что и как с ним надо проделывать, чтобы создать своё условие?
открой в настройках какой нибудь не сложный продукт в режиме дебаг и посмотри, как там все устроено, если продукт использует шаблон, глянь так же и его, какие и как там прописаны условия
Хе, kerk, ты в своем первом посте в этой теме преувеличил мои умственные способности, а в третьем приуменьшил
Я смотрел настройки других параметров, в принципе, основную массу понял. Не понятно, какие надо сделать настройки для того, чтобы описанный мной выше пример заработал. Если я разберусь с ним, только тогда я разберусь со всем остальным.
первом посте в этой теме преувеличил мои умственные способности, а в третьем приуменьшил
и не собирался... =))
======
ну хорошо, давай подробней....
что хочешь сделать
как это реализовать
создавать продукт, делать плагином или просто одна настройка
есть ли такие или подобные настройки в самой вобле
======
Цитата:
Сообщение от Pauk
Мне надо, чтобы в профиле пользователей была галочка с каким-то описанием. Если пользователь ставит эту галочку, то ему показывается одна шапка форума, если он ее снимает, то другая.
если делаем продукт
в манагере продуктов добавляем:
в поле "Номер продукта": свою переменную - pauk_product
в поле "Заголовок": свое название, можно по-русски
в поле "Версия": версию, скажем.... 1.0.0
в поле "Описание" свое описание, что данный хак делает
потом сохраняем и идем в основные настройки....
======
в основных настройках (режим дебаг!) добавляем новую группу настроек, например: pauk_product_group -
потом в этой группе добавляем свои настройки:
1. можно, но не обязательно => вкл/откл -
=======
эта настройка в шаблоне будет выглядеть так:
т.е. если включено, код отображается
а код php этой настройки будет выгледь так:
PHP код:
if ($vbulletin->options['pauk_product_onoff'])
{
$code;
}
если включено - код работает (нужно для плагина, например)
=======
таким же образом добавляешь другие настройки, но уже с другим кодом и другими переменными, например если хочешь сделать многострочное поле ввода текста, в поле настройки, вместо yesno, пишешь textarea
или можешь добавлять свой код (тут уже немного знаний нужно и внимание )
=======
если хак использует шаблон, делаем след.:
создаем новый шаблон, как это обычно делается в ман. стилей (с переменной pauk_tpl, к примеру)
потом этот шаблон нужно подключить в плагине и вывести на страницу, нууу, к примеру на главную, делаем:
идем в менеджер модулей и созаем новый плагин к нашему готовому продукту
в поле "Продукт" выбираем из выпадающего меню наш продукт
в поле "Местоположение хака" выбираем из выпадающего меню хук "cache_templates" и пишем след код плагина:
PHP код:
if (THIS_SCRIPT == 'index')
{
global $globaltemplates;
$globaltemplates = array_merge($globaltemplates, array('pauk_tpl'));
}
можно еще добавить условие на проверку вкл/откл. хака - AND $vbulletin->options['pauk_product_onoff']
сохраняем плагин
потом нам нужно вывести этот плагин на странице, добавляем в менеджере модулей еще один:
так же в поле продукт выбираем наш, а в поле расположение, выбираем хук, которым будем подключать наш код, ну а т.к. решили вывести на главную форума, в конце загрузки страницы, то и хук будет forumhome_complete php код плагина, примерно следующий:
PHP код:
if (THIS_SCRIPT == 'index' AND $vbulletin->options['pauk_product_onoff'])
{
eval('$pauk = "' . fetch_template('pauk_tpl') . '";');
}
потом нам нужно просто прописать переменную $pauk там, где вы собираетесь вывести отображение своего шаблона, например в шаблоне FORUMHOME
вот собссно очень простое описание создания своего продукта, с такими настройками он будет отображаться только на главной странице и больше нигде, если нужно отображение в другом месте, то соотв. пишем имя скрипта, а если по всему форуму, то вместо THIS_SCRIPT == 'index' - пишем VB_AREA == 'Forum' в обеих плагинах
=======
простой пример, хак "панель ссылок"
посмотри настройки и условия этого хака - там все понятно.... =))
остальное зависит от твоей фантазии, ну и немного навыка...
=======
с плагином немного проще, ненужно добавлять новый продукт, добавляешь плагин, только в поле продукт выбираешь vbulletin
если без продукта и без плагина, то добавляешь только группу настроек и свои настройки в этой группе
или добавляешь свою настройку к уже существующим вобловским настройкам.....
=======
фух.... надеюсь этот небольшой мануал кому то пригодится
если что то непонятно, попробую объяснить.........