Скачал 1.0.3 версию движка, гоняю на локалке. Заметил такую вещь — нет кнопки цитировать или обратиться по нику. Как то можно ее сотворить? Или где копать?
Вот ссылка Ответить по нику. Но когда на нее нажимаешь, то вылезает простая форма ответить, и там нет уже вписанного туда ника человека, кому хочешь ответить.
Нужно сделать, чтобы ник прописывался в форму ответа автоматически. Можно ли это реализовать? Смотрю на многих сайтах это сделали, но я не пойму как. По идее надо создавать вторую форму ответа с прописанной туда формулой, и подводить на нее альтернативную ссылку при ответе…
Реализовать скорее всего можно, но таких мануалов здесь не размещалось, а так вопрос вряд ли решается дописыванием пары строк кода, не стоит ждать ответа. Скорее всего у Вас одна дорога — на биржу.
Я тут ничем не смогу помочь, т.к. не программист. Но чувствую, что никаких вторых форм писать не нужно, а нужно вытащить айдишник пользователя на чей коммент отвечаем (если это ответ на чей-то коммент, а не просто коммент) и добавить в форму ответа, предварительно из айдишника вытянув логин и ссылку на пользователя.
<li class="comment-author {if $iAuthorId == $oUser->getId()}comment-topic-author{/if}" title="{if $iAuthorId == $oUser->getId() and $sAuthorNotice}{$sAuthorNotice}{/if}">
<a href="{$oUser->getUserWebPath()}">{$oUser->getLogin()}</a>
{assign var="oParentComment" value=LS::E()->ModuleComment_GetCommentById($oComment->getPid())}
{if !is_null($oParentComment) and $oParentComment->getUser()->getId() != $oComment->getUser()->getId()}
ответ для <a href="#" onclick="ls.comments.goToParentComment({$oComment->getId()},{$oComment->getPid()}); return false;">{$oParentComment->getUser()->getLogin()}</a>
{/if}
</li>
Теперь у тебя рядом с именем автора комментария выводится имя автора родительского комментария (только если они не совпадают). А при клике на автора родительского комментария осуществляется подсветка и переход к родительскому комментарию (также как при клике на стрелочку вверх).
Я не рекомендую использовать это решение, оно
1. Создает N дополнительных запросов к базе, где N — это кол-во комментариев. Топики с сотней комментов будут открываться ощутимо дольше.
2. Делает эти запросы из шаблона, где подобной логики вообще не должно быть.
3. Исправляет исходные файлы шаблона, хотя этим должен заниматься плагин.
4. Ломает верстку, если логины будут длинными.
И, повторюсь, подобное решение — тебе же дороже выйдет, как тебе уже посоветовали выше — надо заказывать разработку.
14 комментариев
Вот ссылка Ответить по нику. Но когда на нее нажимаешь, то вылезает простая форма ответить, и там нет уже вписанного туда ника человека, кому хочешь ответить.
Если вы все же хотите обратится по нику — см. скриншот выше
<ls user="username" />
, предварительно «вытащив» username из каммента, на который отвечаем.Открываешь файл templates/skin/(your skin)/comment.tpl
Ищешь там это
Заменяешь на это
Теперь у тебя рядом с именем автора комментария выводится имя автора родительского комментария (только если они не совпадают). А при клике на автора родительского комментария осуществляется подсветка и переход к родительскому комментарию (также как при клике на стрелочку вверх).
Я не рекомендую использовать это решение, оно
1. Создает N дополнительных запросов к базе, где N — это кол-во комментариев. Топики с сотней комментов будут открываться ощутимо дольше.
2. Делает эти запросы из шаблона, где подобной логики вообще не должно быть.
3. Исправляет исходные файлы шаблона, хотя этим должен заниматься плагин.
4. Ломает верстку, если логины будут длинными.
И, повторюсь, подобное решение — тебе же дороже выйдет, как тебе уже посоветовали выше — надо заказывать разработку.