Ссылка на профиль юзера

В произвольном месте сайта.

#1 28 апреля 2015 в 18:59
1. Как вывести в модуль в произвольном месте сайта ссылку на профиль залогиненного юзера и его никнейм? Можно заодно и аватар.
Речь идет о блоке-аналоге первой строчки юзерменю: Иллюстрация
Версия 1.10.5

2. Чтоб два раза не вставать: в каком месте документации это описано?
#2 28 апреля 2015 в 19:05
использую для этого дубликат модуля "меню пользователя" в качестве шаблона вывода этого модуля назначаю шаблон в котором, в котором только ссылка на профиль пользователя.
#3 28 апреля 2015 в 19:06
А можно попросить код этого шаблона?

Что-нибудь типа <a href="/users/{user.login}" class="red">{user.nickname}</a>, но чтоб работало.
#4 28 апреля 2015 в 19:11
Так, я научился получать номер пользователя: {$user_id}.
Как на основе него получить ник?
#5 28 апреля 2015 в 19:16
  1. {if $user_id}
  2. <span>
  3. <a href="{profile_url login=$login}"><img src="/templates/картинка.png" width="32" height="32" border="0" align="absmiddle" /></a> </span>
  4.  
  5. <span>&nbsp;&nbsp;&nbsp;</span>
  6. {if $users_cfg.sw_msg}
  7. <span>
  8. {if $newmsg.total}
  9. <a class="has_new" href="/users/{$id}/messages{if !$newmsg.messages}-notices{/if}.html" title="{$LANG.NEW_MESSAGES}: {$newmsg.messages}, {$LANG.NEW_NOTICES}: {$newmsg.notices}"><img src="/templates/картинка.png" width="29" height="29" border="0" align="absmiddle" /></a>
  10. {else}
  11. <a href="/users/{$id}/messages.html"><img src="/templates/картинка.png" width="29" height="29" border="0" align="absmiddle" /></a>
  12. {/if} </span>
  13. {/if}
  14.  
  15. <span>&nbsp;&nbsp;&nbsp;</span>
  16. <span ><a href="/logout"><img src="/templates/картинка.png" width="29" height="29" border="0" align="absmiddle" /></a></span>
  17.  
  18.  
  19.  
  20. {else}
  21.  
  22. <span> <a href="/login"><img src="/templates/картинка.png" width="29" height="29" border="0" align="absmiddle" /></a> </span>
  23. {/if}
результат справа,



это у меня в мобильной версии.
или вот так с выводом аватара

  1. {if $id}
  2.  
  3.  
  4. <a href="#"><img src="{$avatar}" border="0" align="middle" /></a>
  5. {/if}
  6.  


Вместо <img src="{$avatar}" border="0" align="middle" /> можно {$nickname}

Это все на версии 1.10.4 в 1.10.6 немного по другому вывод меню пользователя устроен, но думаю по аналогии можно создать файл шаблона где явно прописать код вывода одного пункта и назначить шаблоном показа определенного модуля меню
#6 28 апреля 2015 в 19:24
Брутально. Спасибо, вникаю.
#7 28 апреля 2015 в 19:30
{profile_url login=$login} выдает javascript:core.alert('Пользователь удален','Внимание');
#8 28 апреля 2015 в 19:34
quanteck, вы проставили условие {if $user_id} ?
Вы может быть у вас получилась ссылка на профиль которая видна гостю и вы гостем пытаетесь по ней перейти?
#9 29 апреля 2015 в 19:57

Нил

Нил
… пожалуйста,!!! оформляйте посты "соответственно"… #5 поправил…
#11 30 апреля 2015 в 16:29
Нил, нет. Я смотрю админом и пользователем. Гость вообще этот модуль не видит.
Олег Васильевич — огромное спасибо, небольшой реверс-инжиниринг и я решил проблему.

Галку поставлю, когда оформлю модуль.
#12 30 апреля 2015 в 17:30

Нил, нет. Я смотрю админом и пользователем. Гость вообще этот модуль не видит.

quanteck
Ну я приводил код от 1.10.4 у вас 1.10.6., сейчас сам занимаюсь адаптацией шаблона под эту версию, да там поменялось.
Собственно Олег Васильевич я, дал рецепт, спасибо.

Добавил в modules/mod_menu/module.php

  1. assign('login', $inUser->login)->
и ссылка на профиль пользователя теперь выглядит теперь может выглядеть так href="/users/{$login}"

Но вообще то если вам без аватара то, в 1.10.6 это еще проще. Достаточно посмотреть стандартное меню пользователя как там теперь устроена ссылка на профиль пользователя, продублировать модуль МП, оставить в нем только один нужный вам пункт, и вывести в нужную позицию. Даже файлы ковырять не надо. Всё заложено.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.