Рендер ссылки в Drupal 9

В Drupal 7 вы могли использовать функцию l($text, $url, $options) для генерации HTML кода тега <A>. В Drupal 9 подход коренным образом изменился, и прямого «наследника» устаревшей функции нет.

Чтобы получить примерно тот же функционал придется задействовать пару классов из ядра. К примеру, требуется создать ссылку на сайт shra.ru.

К сожалению, если вам нужно еще и установить какие либо атрибуты ссылки, то привычно передать их через тот же метод fromTextAndUrl() — не получится. Придется немного поколдовать над рендерингом:

Если же текст внутри ссылки должен содержать html код, то потребуется помощь еще одного класса —\Drupal\Core\Render\Markup.

Мало букафф? Читайте есчо !

Drupal Commerce - расчет доставки для выбранного района

Август 26, 2021 г.

Есть список районов города, доставка в которые имеет фиксированную ставку. Пользователь выбирает район - программа должна подставить цену доставки для ...

Читать

Программный вывод блока в Drupal 9

Август 31, 2021 г.

Рассмотрим пару кейсов, того как рендерить блок из вашего кода. Блок существует как Entity Вы создали произвольный блок через Manage->Structure->Block ...

Читать

Проблема с сохранением asymmetric paragraphs в tmgmt

Октябрь 4, 2024 г.

Проблема описана вот тут, и там даже предлагается патч https://www.drupal.org/files/issues/2024-05-28/3134922-40.patch,который частично решает проблему, но в #43 siavash (Sia) более подробно рассказывает о том, как сохраняются данные, и становится ясно, ...

Читать

Как в Drupal 9 получить URL изображения, сохраненного в поле media

Июль 27, 2021 г.

Чтобы извлечь адрес изображения из картинки в поле типа media, требуется ряд преобразований с использованием Entity объектов Drupal. Предполагается, что вы уже загрузили entity с полем типа media (в примере называется - field_media) в какую то ...

Читать
 

Комментарии к «Рендер ссылки в Drupal 9»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: