0 Пользователей и 1 Гость просматривают эту тему.
  • 10 Ответов
  • 2868 Просмотров
*

Langoliers

  • Давно я тут
  • 621
  • 67 / 2
  • Если б Я изучал людей, то был бы паразитологом
Подправить ссылку в K2 Login
« : 02.04.2012, 16:01:21 »
Приветствую! Появилась такая необходимость, изменить ссылку в модуле K2 Login, так как изначально они выглядят вот так:
http://www.mysite.com/component/k2/itemlist/user/42-administrator.html
Код ссылки вот такой.
Код
<a class="k2Avatar ubAvatar" href="<?php echo JRoute::_(K2HelperRoute::getUserRoute($user->id)); ?>" title="<?php echo JText::_('K2_MY_PAGE'); ?>">
Мне нужно, чтобы ссылка выглядела вот так:
http://www.mysite.com/users/itemlist/user/42-administrator.html
Я просто не знаю, как мне вызвать 42-administrator =(

З.Ы. ссылка работать будет, так как есть пункт меню, после публикации которого ссылки вроде должны были приобрести нормальный вид, но этого не случилось. Ссылку редактирования материала я поправил, а вот с этой ничего сделать не могу, из за незнания вызова в строку каждому юзеру свою строчку =(
*

SDKiller

  • Moderator
  • 2706
  • 329 / 5
  • ...ergo sum
Re: Подправить ссылку в K2 Login
« Ответ #1 : 02.04.2012, 23:47:44 »
Я просто не знаю, как мне вызвать 42-administrator =(


Если речь о том, чтобы отредактровать ссылку, подставив соответствующие переменные - то $user в модуле - объект JUser

Id пользователя доступно как $user->id
Логин и имя соответственно - как $user->username и $user->name

Данные профиля пользователя К2 из таблицы #__k2_users - в объекте $user->profile
То есть имя пользователя К2 можно получить и как $user->profile->userName
*

Langoliers

  • Давно я тут
  • 621
  • 67 / 2
  • Если б Я изучал людей, то был бы паразитологом
Re: Подправить ссылку в K2 Login
« Ответ #2 : 03.04.2012, 12:22:56 »
Да, именно так =)
если пишу так:
Код
<a class="k2Avatar ubAvatar" href="/users/itemlist/user/<?php echo ($user->profile->userName);?>.html" title="<?php echo JText::_('K2_MY_PAGE'); ?>">
то получаю вот такую ссылку: http://www.mysite.com/users/itemlist/user/Administrator.html
И у меня 404 ошибка... Нужно получить вот такую ссылку:
http://www.mysite.com/users/itemlist/user/42-administrator.html
И именно с маленькой буквы, иначе 404 =(
А если пишу так:
Код
<a class="k2Avatar ubAvatar" href="/users/itemlist/user/<?php echo ($user->id);?>.html" title="<?php echo JText::_('K2_MY_PAGE'); ?>">
То соответственно получаю http://www.mysite.com/users/itemlist/user/42.html

Я конченный извращенец но написал вот так:
Код
<a class="k2Avatar ubAvatar" href="/users/itemlist/user/<?php echo($user->id);?>-<?php echo($user->name);?>.html" title="<?php echo JText::_('K2_MY_PAGE'); ?>">
И получил вот такую ссылку: http://www.mysite.com/users/itemlist/user/42-Administrator.html
Осталось понять, как вывести все буквы с маленькой буквы (переименование логина не вариант)
Или заставить поддерживать ссылки с разным регистром (ну чтобы ссылки с разным регистром как маленькие определял)
« Последнее редактирование: 03.04.2012, 12:36:23 от Langoliers »
*

SDKiller

  • Moderator
  • 2706
  • 329 / 5
  • ...ergo sum
Re: Подправить ссылку в K2 Login
« Ответ #3 : 03.04.2012, 13:26:51 »
...написал вот так:
Код
<a class="k2Avatar ubAvatar" href="/users/itemlist/user/<?php echo($user->id);?>-<?php echo($user->name);?>.html" title="<?php echo JText::_('K2_MY_PAGE'); ?>">
... как вывести все буквы с маленькой буквы ...

<?php echo $user->id.'-'.JString::strtolower($user->name);?>
*

Langoliers

  • Давно я тут
  • 621
  • 67 / 2
  • Если б Я изучал людей, то был бы паразитологом
Re: Подправить ссылку в K2 Login
« Ответ #4 : 03.04.2012, 17:57:42 »
Огромное спасибо! Все реботает! =)
И последний вопрос, как заставить его нормально отдавать логины с пробелами?
Точнее чтобы удалялись пробелы в логинах, а не выводил вместо них %20 ?
т.е. ссылка типа http://www.mysite.com/users/itemlist/user/42-super%20administrator.html не работает, а ссылка типа http://www.mysite.com/users/itemlist/user/42-superadministrator.html работает. Как убрать из ссылки с пробелом %20 (мало ли кто будет регаться с именами из двух слов
« Последнее редактирование: 03.04.2012, 18:13:33 от Langoliers »
*

Langoliers

  • Давно я тут
  • 621
  • 67 / 2
  • Если б Я изучал людей, то был бы паразитологом
Re: Подправить ссылку в K2 Login
« Ответ #5 : 05.04.2012, 11:24:40 »
Никто не знает, как запретить вывод пробелов в адресной строке?
urlencode() ничем не сможет помочь?
Вот такой вариант заменяет %20 на +, но мне нужно вообще убрать любые кодировки пробела.
Код
<?php echo $user->id.'-'.urlencode(JString::strtolower($user->name));?>
« Последнее редактирование: 05.04.2012, 13:30:51 от Langoliers »
*

Langoliers

  • Давно я тут
  • 621
  • 67 / 2
  • Если б Я изучал людей, то был бы паразитологом
Re: Подправить ссылку в K2 Login
« Ответ #6 : 05.04.2012, 17:37:43 »
Итак, благодаря ecolora нашлось решение:
Код
<?php echo $user->id.'-'.str_replace(' ','',JString::strtolower($user->name));?>

И снова косяк))) Если имя пользователя на русском - выдает в адресной строке русское имя и получаем 404... Если вводим на транслите вводим имя например вместо виктор viktor то страница отображается...
Черт знает как заставить отображать имена на транслите =\
« Последнее редактирование: 05.04.2012, 17:58:40 от Langoliers »
*

staticlight

  • Moderator
  • 1086
  • 65 / 0
  • Staticlight
Re: Подправить ссылку в K2 Login
« Ответ #7 : 06.04.2012, 10:51:43 »
все-таки в данном случае, по-моему, уместнее поставить sh404SEF
Руководитель отдела сервисного обслуживания систем безопасности.
Устали от com_content - поставьте com_k2.
TRIPLE "F" POWER: Firefox+FireShot+Firebug. Chrome + Ctrl+Shift+I
*

Langoliers

  • Давно я тут
  • 621
  • 67 / 2
  • Если б Я изучал людей, то был бы паразитологом
Re: Подправить ссылку в K2 Login
« Ответ #8 : 06.04.2012, 11:54:09 »
все-таки в данном случае, по-моему, уместнее поставить sh404SEF
Скорее проще... Я только в крайнем случае обращусь к подобным компонентам... Очень много лишних запросов - ниже скорость работы сайта, плюс большая нагрузка будет на машину при ~1000 уников в день...

Но если все таки обращусь, то какой лучше компонент выбрать? Понимаю, это оффтоп, но все же =)
sh404SEF?
*

staticlight

  • Moderator
  • 1086
  • 65 / 0
  • Staticlight
Re: Подправить ссылку в K2 Login
« Ответ #9 : 06.04.2012, 12:23:17 »
404sef - довольно удобный, JED его считает самым лучшим, да и у k2 "родная" поддержка именно sh404SEF.
Руководитель отдела сервисного обслуживания систем безопасности.
Устали от com_content - поставьте com_k2.
TRIPLE "F" POWER: Firefox+FireShot+Firebug. Chrome + Ctrl+Shift+I
*

KosMos

  • Новичок
  • 3
  • 0 / 0
Re: Подправить ссылку в K2 Login
« Ответ #10 : 19.12.2013, 03:08:12 »
Ребят помогите настроить вывод ссылочки ...
В К2 Login есть ссылка на пользователя вида :

<a href="<?php echo JRoute::_(K2HelperRoute::getUserRoute($user->id)) ; ?>">
Страница</a>


Выводится она без SEF в таком виде:
index.php?option=com_k2&view=itemlist&task=user&id=725:administrator

В данном случае administrator это имя пользователя (которое добавляется к ссылке, я так и не понял откуда), а мне нужно чтобы добавлялся Логин.




« Последнее редактирование: 19.12.2013, 03:15:08 от KosMos »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

как добавить ссылку в вк на сайт

Автор Рашид

Ответов: 1
Просмотров: 477
Последний ответ 01.11.2017, 13:50:04
от Akeksandr
Как получить ссылку на текущую страницу вывода материалов по тегу? (k2)?

Автор Divn

Ответов: 0
Просмотров: 615
Последний ответ 30.01.2017, 20:43:04
от Divn
Количество нажатий на ссылку в доп. полях

Автор kolhoz

Ответов: 1
Просмотров: 676
Последний ответ 23.11.2015, 06:30:12
от jurassik
Как вставить в текст материала ссылку на другой материал?

Автор Dusk09

Ответов: 0
Просмотров: 620
Последний ответ 07.09.2015, 22:49:53
от Dusk09
K2 комментарии (user/login)

Автор Risenab

Ответов: 12
Просмотров: 1113
Последний ответ 15.07.2015, 18:19:15
от Risenab