Нужно заменить запись "Войдите или зарегистрируйтесь чтобы отправлять комментарии", которая появляется для анонимов вместо кнопки "ответить" в комментариях. Когда 100 комментариев на странице, то получается 100 записей "Войдите или зарегистрируйтесь...", это же просто бредово и некрасиво. Хочется, чтобы кнопка "ответить" оставалась для всех пользователей, но для анонимов она вела на регистрацию.
1. Самый плохой способ: Переименовать в переводе "ответить".
Недостатки: вместо формы комментариев анонимам будет написано "ответить". Глупо как-то. Но можно скрыть.
2. Еще один способ: Открыть комментирование анонимам (без публикации с проверкой админа) и создать правило в Rules, которое позволит перекинуть анонима после сохранения комментария на регистрацию.
Недостатки: Будет куча неопубликованных комментариев и нужно наверное создавать правило, которое будет удалять их после публикации анонимами.
3. Еще один плохой способ: Просто удалить эти ссылки через тот же template.php или еще проще через CSS скрыть.
Недостатки: Анонимный пользователь не видит кнопочку ответить, соответственно мотивации написать комментарий нет.
4. Самый, на мой взгляд, лучший способ: В comment.tpl.php или в template.php написать код, который для анонимов заменит все записи "Войдите или зарегистрируйтесь..." в комментариях на ссылку "ответить".
Решение в комментариях.
Комментарии
Но кошерно - только так. Причем нуна знать не только пыху, но и апи друпала.
Попадос у тебя, в общем.
Я бы просто поменял перевод!
Да уж... а нужно то всего лишь там где нужно - "Войдите или зарегистрируйтесь..." -> "Ответить", и там где не нужно "Войдите или зарегистрируйтесь..." -> "".
Я бы тоже так поступил, а потом всё таки потратил бы кучу времени на поиски лучшего решения, хотя оно (лучшее решение) нафиг никому не нужно кроме меня, ибо долбанный перфекционизм.
Объединяйтесь с ТС, он писатель, вы перфекционист
Нафига объединяться...
Мне и без этого не сладко...))))))
А я бы сделал в CSS
Если у вас запрещены комментарии анонимам, то просто скрыть...
Ну а если уж захотелось, чтобы пользователи регились только когда им приспичило оставить комментарий то
<?php
global $user;
if (is_object($user) and $user->uid>0) {
$ulogin=$user->name;
?>
<!--
тут заменяемый код
-->
<?php
} else {
?>
<a href="/user/register">Ответить</a>
<?php
}
?>
Спасибо. Проблема решена.