drupal 6: как изменить отображение модуля комментариев - PullRequest
0 голосов
/ 31 января 2011

Перед публикацией комментариев показывается сообщение:

Login or register to post comments

Я хочу изменить вывод 2 ссылок «логин» и «регистрация», в основном я хочу добавить некоторые классы к ссылкам в форматеэто приятно с некоторым img.кнопки разных цветов

Мне действительно нужно «сказать» выводу, который нужно поставить и, и по умолчанию нет класса ....

Я знаю, что это можно сделать с некоторымикрюк или что-то, но я не могу найти информацию об этом ...

1 Ответ

1 голос
/ 24 февраля 2011

Часть, ответственная за эту строку, находится в theme_comment_post_forbidden в drupal_root / modules / comment / comment.module

это выглядит так

function theme_comment_post_forbidden($node) {
  global $user;
  static $authenticated_post_comments;

  if (!$user->uid) {
    if (!isset($authenticated_post_comments)) {
      // We only output any link if we are certain, that users get permission
      // to post comments by logging in. We also locally cache this information.
      $authenticated_post_comments = array_key_exists(DRUPAL_AUTHENTICATED_RID, user_roles(TRUE, 'post comments') + user_roles(TRUE, 'post comments without approval'));
    }

    if ($authenticated_post_comments) {
      // We cannot use drupal_get_destination() because these links
      // sometimes appear on /node and taxonomy listing pages.
      if (variable_get('comment_form_location_'. $node->type, COMMENT_FORM_SEPARATE_PAGE) == COMMENT_FORM_SEPARATE_PAGE) {
        $destination = 'destination='. rawurlencode("comment/reply/$node->nid#comment-form");
      }
      else {
        $destination = 'destination='. rawurlencode("node/$node->nid#comment-form");
      }

      if (variable_get('user_register', 1)) {
        // Users can register themselves.
        return t('<a href="@login">Login</a> or <a href="@register">register</a> to post comments', array('@login' => url('user/login', array('query' => $destination)), '@register' => url('user/register', array('query' => $destination))));
      }
      else {
        // Only admins can add new users, no public registration.
        return t('<a href="@login">Login</a> to post comments', array('@login' => url('user/login', array('query' => $destination))));
      }
    }
  }
}

Я предлагаю изменить template.php вашей темы и добавить новую функцию phptemplate_comment_post_forbidden($node), в которую вы скопируете содержимое theme_comment_post_comments и внесете необходимые изменения.

...