Добавляем контекстные ссылки для комментариев

В семёрке контекстные ссылки (contextual links) есть у материалов и блоков, но отчего-то их нет у комментариев.

Код ниже добавляет к каждому комментарию ссылку на редактирование и удаление:

/**
 * Реализация hook_menu_alter()
 */
function mymodule_menu_alter(&$items)
{
    $items['comment/%comment/edit']['context'] = MENU_CONTEXT_PAGE | MENU_CONTEXT_INLINE;
    $items['comment/%/delete']['context'] = MENU_CONTEXT_PAGE | MENU_CONTEXT_INLINE;
}
 
/**
 * Реализация hook_comment_view()
 */
function mymodule_comment_view($comment, $view_mode, $langcode)
{
    if ($view_mode == 'full')
    {
        $comment->content['#contextual_links']['comment'] = array('comment', array($comment->cid));
    }
}

Обычные ссылки за ненадобностью можно скрыть — в template.php добавить:

function THEMENAME_preprocess_comment(&$vars)
{
    hide($vars['content']['links']);
}

Не забываем сбросить кэш.

Написанное актуально для
Drupal 7.x
Теги:
работа с комментариями
Добавлено: 26 Июля 2018 22:16:38 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...