Покопавшись на форумах, пересмотрев файлы движка и подключив логику пришел к элементарным решениям.
1.Выбор группы при регистрации:
Файл components/registration/frontend.php
после
добавить
После.Добавляем проверку чтобы не могли регистрироваться определенные группы, например админи($group_id == 1 || $group_id == 2, записываем номера запрещённых групп,1 и 2 приведены только для примера)
в /languages/ru/components/registration.php добавить текст ошибки $_LANG['WRONG_GROUP'].
Далее там же в components/registration/frontend.php
вместо
вставить
Файл templates/ваш шаблон/registration.tpl
добавить
<option value="6"> это номер группы(6 и 10 это только пример).Прописываем нужный id группы.
2.Показ контента в профиле для определенной группы.Контент будет показываться в профиле только у одной группы людей:
Файл components/users/frontend.php
В секции //=====Просмотр профиля=====//
Довставить
Файл templates/ваш шаблон/com_users_profile.tpl
Вставить
3.Вывод разных данных в профиле для разных групп.Можно определенной группе назначить разный дизайн профиля, позиции модулей в профиле и тд, подключаем фантазию.
Файл components/users/frontend.php
в той же секции //=====Просмотр профиля=====//
Ну скажем после // награды пользователя
добавить
Файл templates/ваш шаблон/com_users_profile.tpl
Вот пример разных профилей:
Example 1
Example 2
Example 3
Если нужно демо позже выложу
"А для какой версии?" = 1.10.1 :)
1.Выбор группы при регистрации:
Файл components/registration/frontend.php
после
148 $pass2 = cmsCore::request('pass2', 'str', '');
149 $group_id = cmsCore::request('group_id', 'int', 0);
cmsCore::addSessionMessage($_LANG['WRONG_GROUP'], 'error'); $errors = true;}
Далее там же в components/registration/frontend.php
вместо
$item['group_id'] = $model->config['default_gid'];
$item['group_id'] = $group_id;
добавить
<tr> <td valign="top" class=""><strong>Кто вы:</strong></td> <td valign="top" class=""> <select name="group_id"> <option value="0">--- Выберите ваш статус ---</option> <option value="6">Персона</option> <option value="10">Компания</option> </select> </td> </tr>
2.Показ контента в профиле для определенной группы.Контент будет показываться в профиле только у одной группы людей:
Файл components/users/frontend.php
В секции //=====Просмотр профиля=====//
До
$smarty->display('com_users_profile.tpl');
$smarty->assign('is_group', $inUser->group_id);
Вставить
{if $is_group==2} Контент который будет показан только группе номер 2 {/if}
Файл components/users/frontend.php
в той же секции //=====Просмотр профиля=====//
Ну скажем после // награды пользователя
добавить
//Группа Пользователя $usr['group_id'] = $group_id;
{if $usr.group_id eq 1}<div style="назначаем любой нам нужный стиль">Ставим то что хотим выводить в профилях пользователей группы номер 1</div>{/if}
Example 1
Example 2
Example 3
Если нужно демо позже выложу
"А для какой версии?" = 1.10.1 :)
Реклама #
Петр 11 лет назад #
PrazdNik 11 лет назад #
Петр 11 лет назад #
PrazdNik 11 лет назад #
alexbabo 11 лет назад #
PrazdNik 11 лет назад #
alexbabo 11 лет назад #
picaboo 11 лет назад #
alexbabo 11 лет назад #
picaboo 11 лет назад #
лучше в примере исправьте на другую группу. а то кто по глупости вставит как есть и будет у него куча "Персон" с доступом в админку
alexbabo 11 лет назад #
lokanaft 11 лет назад #
picaboo 11 лет назад #
picaboo 11 лет назад #
if $item['group_id'] = 1 ; { return false;}
не знаю как правильно :)
picaboo 11 лет назад #
alexbabo 11 лет назад #
после
в принципе вместо ошибки можно добавить else{$group_id = 15;}и всех кто ц неправильным группы будет отправлять в группу 15.Проверьте как работает и отпишитесь
В жизни к не имел отношение PHP и програмированию ,а вот кажется учусь :)
lezginka.ru 11 лет назад #
den4ik 11 лет назад #
alexbabo 11 лет назад #
den4ik 11 лет назад #
den4ik 11 лет назад #
Петр 11 лет назад #
Петр 11 лет назад #
alexbabo 11 лет назад #
Anton Bogoradov 11 лет назад #
Пользователь регистрируется в группе частное лицо и есму нужно вводить обычные параметры аська, фио, логин и т.д.
Пользователь регистрируется как организация тут бы лучше брать как минимум адрес, инн и т.п
alexbabo 11 лет назад #
Anton Bogoradov 11 лет назад #
Понимаю что можно завуалировать (о какое слово знаю) и прописать что все акаунты проходят жёсткую модерацию и незаполненные будут удалятся но я на сайт лажу только если мне на мобильник придёт оповещение яндекс метрики что сайт лежит =)
alexbabo 11 лет назад #
alexbabo 11 лет назад #
Anton Bogoradov 11 лет назад #
Петр 11 лет назад #
например у меня две группы на сайте: юристы и клиенты
естественно поля для заполнения будут разными...
+ еще нужна выборка в списке юзеров
alexbabo 11 лет назад #
Петр 11 лет назад #
Петр 11 лет назад #
:(((
Петр 11 лет назад #
две строчки
Петр 11 лет назад #
den4ik 11 лет назад #
omarov 11 лет назад #
Это решение исключит нужду добавления вывода ошибки, и проверки нужной группы.
Def 10 лет назад #
Def 10 лет назад #