#1
13 декабря 2009 в 16:49
Как сделать чтобы определенный модуль показывался ТОЛЬКО когда человек находится в своем профиле. В привязках где показывать модуль такого нет.
#2
3 января 2010 в 11:33
не кто не разбирался, где проверяются критерии где показывать модуль?
#3
3 января 2010 в 23:32
fuze, один как из вариантов — если прочитать — readme!.txt — находящийся в папке /templates/_default_ — то там описаны варианты — редактирования tpl-файлов , а именно:
— Если нужно подключить к странице CSS-файл, то внутри tpl-шаблона
можно использовать инструкцию {add_css}
Пример:
{add_css file="templates/my-template/css/style.css"}
— Если нужно подключить к странице JS-файл, то внутри tpl-шаблона
можно использовать инструкцию {add_js}
Пример:
{add_js file="templates/my-template/js/script.js"}
— Если нужно использовать php:
{php}… ваш код… {/php}
— Если нужно использовать выражения с $ (например jQuery):
{literal}… код со знаками $… {/literal}
Попробуйте добавить все необходимое — отредактировав — темплат вывода профиля…
— Если нужно подключить к странице CSS-файл, то внутри tpl-шаблона
можно использовать инструкцию {add_css}
Пример:
{add_css file="templates/my-template/css/style.css"}
— Если нужно подключить к странице JS-файл, то внутри tpl-шаблона
можно использовать инструкцию {add_js}
Пример:
{add_js file="templates/my-template/js/script.js"}
— Если нужно использовать php:
{php}… ваш код… {/php}
— Если нужно использовать выражения с $ (например jQuery):
{literal}… код со знаками $… {/literal}
Попробуйте добавить все необходимое — отредактировав — темплат вывода профиля…
Сегодня в 08:18
#4
4 января 2010 в 00:30
Madmax, ты не понял.
мне надо не под выводом содержимого профиля, а к примеру в левой колонке. Т.е. есть модуль "поиск пользователей" я хочу чтобы он выводился в левой колонке (left) только когда человек находится в профиле.
мне надо не под выводом содержимого профиля, а к примеру в левой колонке. Т.е. есть модуль "поиск пользователей" я хочу чтобы он выводился в левой колонке (left) только когда человек находится в профиле.
#5
5 января 2010 в 10:15
fuze, ну я ведь только учусь быть телепатом )))
Madmax, ды вроде доступно объяснил))) ну да ладно.
в общем поразобравшись, пришел вот к чему:
все зависит от menu_id. Так вот смысл в том что menu_id и в профиле пользователя и на главной странице одно и то же — 0. Т.е. если я путем добавления в базе в таблице cms_modules_bind добавляю
module_id=70 menu_id=0, где 70 есть module_id нужного мне модуля, то модуль показывается и на главной и в профиле. вот как-то так)))
Буду думать как теперь из этого положения выйти...
Т.е. вопрос в том как сделать, чтобы или на главной или в профиле menu_id было отличным от 0.
в общем поразобравшись, пришел вот к чему:
все зависит от menu_id. Так вот смысл в том что menu_id и в профиле пользователя и на главной странице одно и то же — 0. Т.е. если я путем добавления в базе в таблице cms_modules_bind добавляю
module_id=70 menu_id=0, где 70 есть module_id нужного мне модуля, то модуль показывается и на главной и в профиле. вот как-то так)))
Буду думать как теперь из этого положения выйти...
Т.е. вопрос в том как сделать, чтобы или на главной или в профиле menu_id было отличным от 0.
#7
11 января 2010 в 14:02
Вот решение, подсказанное Администратором:
где search имя позиции в файле positions.txt.
<?php if ($_REQUEST['view']=='users' && $_REQUEST['do']=='profile'){ cmsModule('search'); } ?>
fuze[drums], этот код запихнуть, я так понимаю, в templates.php?
P.S. Что-то у меня в templates.php не срабатывает 😥
P.S. Что-то у меня в templates.php не срабатывает 😥
#9
11 января 2010 в 20:13
Виктор, да ты правильно понимаешь, в templates.php.
Кавычки, в positions.txt добавил?
Кавычки, в positions.txt добавил?
#10
11 января 2010 в 20:57
В positions.txt я добавил позицию userprofiles.
В templates.php добавил
В templates.php добавил
<?php if ($_REQUEST['view']=='users' && $_REQUEST['do']=='profile'){ cmsModule('userprofiles'); } Заменил в приведенном коде обратные кавычки на двойные (и на прямые тоже пробовал) ?>
#11
11 января 2010 в 21:42
<div style="margin:0 0 0 6px;"><?php cmsModule("left"); ?> <?php if ($_REQUEST['view']=='users' && $_REQUEST['do']=='profile'){ cmsModule('search'); } ?> </div>
#12
12 января 2010 в 09:45
Всё, разобрался. Дело в том, что в таблице для хранения имени позиции вывода модуля отводится 10 позиций. Следовательно, моё название обрезалось и при попытке найти модули выводимые в этой позиции ничего не находилось. Искалось userprofiles, а в таблице было userprofil.
Уменьшил длину названия и всё заработало.
Уменьшил длину названия и всё заработало.
#13
13 января 2010 в 08:02
ты сейчас о чем?А авторизация пользователя с переходом в профиль работает только через скрипт?
В админке есть опция что делать после авторизации — переходить в профиль, в настройка профиля или ничего не делать…
так авторизация проходит?
и еще… если под админом заходить, то в любом случае сразу в профиль не зайдет, попробуй под пользователем.
и еще… если под админом заходить, то в любом случае сразу в профиль не зайдет, попробуй под пользователем.
#15
8 февраля 2010 в 14:02
в догонку...
я запарился: как сделать аналогичную проверку — на главной я или нет? хочу чтобы позиция была видна только на главной — экономия 3-4 запроса.
я запарился: как сделать аналогичную проверку — на главной я или нет? хочу чтобы позиция была видна только на главной — экономия 3-4 запроса.