Поле домашняя страница в комментариях

26 ноября 2007 в 19:41
Аватар пользователя andron13 andron13 0 19

Для анонимусов разрешены комменты. Я нервничаю, когда пытаются спамить люди, а не боты. Хочу убрать поле урла, ака домашняя страница. И оставить только. Имя, емайл, и сам текст для ввода. где сделать?

Комментарии

поддерживаю. если кошерный способ найдём как сделать. то стоит сделать. чтоб комментатор изначально не видел поля урл. неужели мы первые столкнулись?

28 ноября 2007 в 14:41

А что если написать такой JS код:

$(document).ready( function{
    $("#edit-homepage").parent().css("visibility", "hidden");
})
<code>

В синтаксисе могут быть ошибки, поясню мысль. Сначала найти само поле с ID="edit-homepage" потом найти его родителя и установить для него CSS стиль.

29 ноября 2007 в 21:31

Его кстати можно разместить прямо в шаблоне comment.tpl.php и печатать после проверки на анонимность.

29 ноября 2007 в 21:34

Хотя в comment.tpl.php это плохая мысль, этот код будет печататься в каждом комментарии.
Лучше в template.php

29 ноября 2007 в 21:37

я просто закоментировал строки с выводом $form['homepage']
в модуле...интересно аукнется мне это гденибудь или нет.

16 ноября 2008 в 0:03

Спасибо, сделал похоже, но приятнее:
Друпал 6, поиском нашел homepage в comment.module и просто убрал проверку на валидность, пусть всегда будет ошибка:

      if ($edit['homepage']) {
        if (!valid_url($edit['homepage'], TRUE)) {
          form_set_error('homepage', t('The URL of your homepage is not valid. Remember that it must be fully qualified, i.e...'));
        }
      }

Теперь осталось только изменить сообщение об ошибке, типа: "Извините, возможность указывать домашнюю страницу отключена администратором."

P.S: терпеть не могу ковыряться в модулях ядра, но как это сделать отдельно, не представляю...

26 ноября 2008 в 20:23

В шестом друпале в коммент.модуле

Ищем эту строчку:
$form['homepage'] = array('#type' => 'textfield', '#title' => t('Homepage'), '#maxlength' => 255, '#size' => 30, '#default_value' => $edit['homepage']);

и заменяем на:
unset($form['homepage']);

Там же ещё одну строчку похожую на первую заменяем на этот же unset($form['homepage']);

Т.е. нужно заменить две строчки.

Тоже Чуть выше есть две подобных строчки с mail заменяем их на:
unset($form['mail']);

Вот только не нашёл как убрать Title Sad

P/S Не забывайте про кодировку, может вылезти знаменитый белый экран

3 февраля 2009 в 18:12