Подскажите, реально ли сделать в Drupal следующее:
В поле оставления комментария, пользователь (даже Гость) вводит свое имя, мыло, веб-сайт и в отдельное поле сам текст коммента.
И после отправки коммента, в авторе коммента его имя становится гиперссылкой на веб-сайт, который он указал в соотв. поле.
Подскажите как это сделать, есть ли модули/сниппеты для этого, если нет, то какие файлы отвечают за вывод коммента.
Заранее спасибо!
Комментарии
Помоему имено такое поведение стандартно для "встроенного" модуля comment (по крайней мере в шестерке точно так и есть)
Нет, в стандартном модуле такого нет, ссылка по умолчанию идет на профиль пользователя, а не на его веб-сайт. И настроить это нельзя обычными средствами:(
Ну я имел введу для гостей, а если надо для всех, то всатавте в вашей теме (в template.php) функцию
типа этой (но учтите вывод юзера переопределится во всех местах, где выводиться юзер),
ну и замените $u->profile_homepage на то как это поле называется у вас в профиле
<?php
function phptemplate_username($object) {
if ($object->uid && $object->name) {
if (drupal_strlen($object->name) > 20) {
$name = drupal_substr($object->name, 0, 15) . '...';
}
else {
$name = $object->name;
}
$u=user_load(array('uid'=>$object->uid));
if($u->profile_homepage) {
$output = l(check_plain($name), $u->profile_homepage,array('attributes' => array('rel' => 'nofollow')));
}
else {
$output = check_plain($name);
}
}
$object->name) {else if (
if (!empty($object->homepage)) {
$output = l($object->name, $object->homepage, array('attributes' => array('rel' => 'nofollow')));
}
else {
$output = check_plain($object->name);
}
}
else {
$output = variable_get('anonymous', t('Anonymous'));
}
return $output;
}
?>
Спасибо, попробую!
Еще вопрос возник:
http://freecoder.ru/node/18#comment-107 вот тут гость оставил коммент, и рядом с его ником в скобках пишет Не проверено.
Что не проверено, никак понять не могу.
Данное сообщение говорит о том, что анонимный пользователь ввел Имя (которое с учетом того что можно смешать регистры (допусти русский и англиский) можно подстроить под зарегистренного пользователя (например аdmin - где первая буква русская), и соответственно скомпроментировать ник - , что бы этого не было как раз и выдается данное сообщение (в приведенной мной функции, я кстати этот участок убрал, там по идее после строк
<?php
else {
$output = check_plain($object->name);
}
?>
должна бы идти строка
<?php
$output .= ' (' . t('not verified') . ')';
?>
Хорошо, спасибо большое!