xandeadx.ru Блог музицирующего веб-девелопера

Drupal → Добавить контекстные ссылки своему html элементу

Опубликовано в

Пример добавления контекстных ссылок в произвольный html элемент:

<div class="contextual-links-region">
  <?php
  if ($GLOBALS['user']->uid == 1) {
    $contextual_links = array(
      '#type' => 'contextual_links',
      '#links' => array(
        array(
          'title' => t('Configure'),
          'href' => 'admin/config/system/site-information',
        ),
      ),
      '#pre_render' => array(),
    );
    echo drupal_render($contextual_links);
  }
  ?>
 
  Block content...
</div>

Сложность в том, что модуль contextual не умеет выводить произвольные ссылки, ему нужно, что родительский роут обладал контекстом MENU_CONTEXT_INLINE. Поэтому приходится наполнять вручную свойство #links и затирать свойство #pre_render.

Написанное актуально для Drupal 7
Похожие записи

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании