Drupal 7 анонимных комментариев, отключение поля домашней страницы - PullRequest
1 голос
/ 17 марта 2011

В комментариях к Drupal 7, как я могу скрыть / отключить поле домашней страницы для анонимных комментаторов?

Ответы [ 5 ]

4 голосов
/ 10 июня 2014

Хотя ответов здесь много, ни один из них не предоставляет весь код в одном простом для копирования и вставки блоке:

/**
* Implements hook_form_FORM_ID_alter().
*
* Remove homepage field from comments form.
*/
function THEMENAME_form_comment_form_alter(&$form, &$form_state) {
    $form['author']['homepage']['#access'] = FALSE;
}

Поместите этот код в файл theme.php, заменив THEMENAME именемвашей темы.

2 голосов
/ 13 августа 2012

В подходящем form_alter() крюке сделайте следующее:

$form['author']['homepage']['#access'] = FALSE;

Это лучше, чем использовать unset() или установить $form['author']['homepage'] на null, как описано в других ответах, потому что функция comment_form_validate() выдает ужасные ошибки.

Весь кредит Арт Уильямс

2 голосов
/ 04 мая 2011

Откройте файл themes/<your_theme>/templates/comment-wrapper.tpl.php в папке установки drupal и добавьте эту строку перед кодом HTML:

<?php $content['comment_form']['author']['homepage'] = null; ?>

или, по крайней мере, до

<?php print render($content['comment_form']); ?>

При этом вы деактивируете поле домашней страницы в форме, отображаемой для пользователя.

Вы также можете сделать то, что говорит @Robert, и выбрать «Анонимные авторы могут не оставлять свои контактные данные», но вы также разрешаете оставлять комментарии и без электронной почты. Если вы просто хотите скрыть поле домашней страницы из формы и сохранить адрес электронной почты (например, чтобы использовать Gravatar), этот бит взлома должен помочь. Если на вашем веб-сайте имеется более одной темы, убедитесь, что вы делаете это в каждой теме, отображающей форму комментариев.

1 голос
/ 19 апреля 2011

Администрирование »Структура» Типы контента »(Ваш тип контента)» Настройки комментариев »Анонимное комментирование» Анонимные авторы не могут / могут / должны оставлять свои контактные данные.

0 голосов
/ 08 июня 2012

Вот решение для трехстрочного пользовательского модуля.Я обычно сохраняю модуль custom_site_tweaks для такого типа вещей на сайте.

function CUSTOM_form_comment_node_blog_post_form_alter(&$form, &$form_state, $form_id) {
  unset($form['author']['homepage']);
}

Кстати: это отличный способ де-стимулировать спам-сообщения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...