将评论回复文本包装到span标记中

时间:2015-11-06 19:31:09

标签: html drupal drupal-7 drupal-theming

Drupal评论回复有下一个结构

<li class="comment-reply first">
 <a href="/comment/reply/12/1">reply</a>
</li>

但我想要下一个结构

<li class="comment-reply first">
  <a href="/comment/reply/12/1">
    <span class="rep">reply</span>
  </a>
</li>

我的问题是function comment_link我可以更改此链接的标记,或者我需要使用钩子或主题函数

1 个答案:

答案 0 :(得分:0)

您可以实施hook_comment_view来更改评论的输出。您需要将其添加到.module文件中的自定义模块

<?php

function hook_comment_view($comment, $view_mode, $langcode) {
  foreach($comment->content['links']['comment']['#links'] as $delta => $link) {
    // Only apply this new markup to the reply link
    if(strpos($link['href'], 'comment/reply') === 0) {
      $title = $link['title'];
      $comment->content['links']['comment']['#links'][$delta]['title'] = '<span class="rep">' . $title . '</span>';
    }
  }
}

请记住将函数名称开头的“hook”替换为模块名称。例如:

function mymodule_comment_view($comment, $view_mode, $langcode) {