Как скрыть поле в комментарии программно?

Мои комментарии имеют поле под названием "Extra". Я пытаюсь скрыть это, когда пользователь, который просматривает комментарий, написал это. Это мой пользовательский модуль:

function mymodule_comment_view($comment) {
  global $user;
  if ($comment->uid == $user->uid){
    unset ($comment->field_extra);
  }
}

Почему это не работает и как правильно достичь моей цели?

2 ответа

Решение

Оказывается, этот код работает:

function mymodule_comment_view($comment) {
  global $user;
  if ($comment->uid == $user->uid){
    $comment->content['field_extra']['#access'] = FALSE;
  }
}

Вы помните, чтобы заменить часть имени функции на "привязку" к имени вашего модуля?

function MODULENAME_comment_view($comment) {
  global $user;
  if ($comment->uid == $user->uid){
    unset ($comment->field_extra);
  }
}

Остальная часть кода должна работать. Вам не нужно передавать $comment по ссылке, поэтому снова удалите символ "&", если он у вас еще есть.

Другие вопросы по тегам