Добавляем ссылку "Редактировать блок" во Front-end Drupal 6


17:30, 19/03/2018

В 6-ке не предусмотрена возможность редактировать блоки во Front-end'e, но в этом нет никакой проблемы т.к. каждому блоку программно можно добавить ссылку на его редактирование.

Вот что нам предлагают http://drupal.org/node/120334
Суть такова: добавляем в block.tpl.php конструкцию:

module == "block"): ?>




Далее просто меняем адрес ссылки взависимости от версии Drupal:

/admin/structure/block/manage/block/ для 7.x

/admin/build/block/configure/block/ для 6.x

/admin/build/block/configure для 5.x

/admin/block/configure для 4.7

/admin/block/edit/ для 4.6

Ссылка на редактирование добавится только для пользовательских блоков(созданных стандартным модулем Block). Неплохой вариант, но не совсем удобный т.к. у нас могут быть блоки созданные другими модулями, кроме модуля Views(он создает ссылки на редактирование блоков созданных с его помощью).

Наш вариант:

module !== "views"))): ?>


Помимо проверки на права пользователя редактировать блоки, мы исключили вывод ссылки на редактирование в блоках созданных с помощью Views.

/* Edit block link */
.edit-block {
    position: absolute; /* blocks must have position: relative; */
    top: -6px;
    right: -6px;
    text-shadow: none;
    z-index: 1;
}
.edit-block a {
    background-color: #95FF00;
    border: 1px solid #000;
    color: #000;
    font-size: 12px;
    padding: 1px 4px;
    text-decoration: none;
}
.edit-block a:hover {
    border: 1px solid #95FF00;
    color: #FFF !important;
    background-color: #000;
    text-decoration: none;
    box-shadow: 0 0 18px #95FF00;
}
/* end Edit block link */


Комментарии