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

04.02.2018

Пример добавления контекстных ссылок в произвольный 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
Похожие записи

Добавить комментарий