У меня есть блок на главной странице моего сайта, в котором отображаются последние новости из Новости страница (3 последних записи). Это вид, вот его настройки:
Я пытаюсь сделать этот блок лучше. Поскольку это представление, я использую блок--блок-просмотров--блок-новостей-1.html.twig файл шаблона для моей цели. Все, что я хотел, это получить в нем отображаемые значения поля, чтобы обернуть каждое из них в <div> со своим собственным классом css. Я пытался много раз и путем проб и ошибок, наконец, написал следующий код:
{%
установить классы = [
'блокировать',
'block-' ~ configuration.provider|clean_class,
'block-' ~ plugin_id|clean_class,
]
%}
<div класс="контейнер">
<section{{ атрибуты.addClass(классы) }}>
{{ title_prefix }}
<h2 class="article_title">Районные новости</h2>
{{ title_suffix }}
{% заблокировать содержимое %}
<ul class="content article_list">
{% для строки в содержании['#view'].result %}
<li class="article_item">
<div class="article_item-header">
<div class="article_release_date">
{{ content['#view'].field['published_at'].value(row)|date("d.m.Y") }}
</div>
{{ контент['#view'].поле['название'].getItems(строка) }}
</div>
<div класс="статья_описание">
{{ содержимое['#view'].поле['тело'].getItems(строка) }}
</div>
</li>
{% конец для %}
</ul>
{% конечный блок%}
<div class="article_read_more">
<a href="/news">Просмотреть все</a>
</div>
</раздел>
</div>
Работает удовлетворительно: я вижу разметку и переменные в этом блоке на главной странице именно такими, какими я их спроектировал. Но я не могу сказать, что он работает просто идеально, потому что, когда я захожу в «Последние сообщения журнала», я вижу ошибки, исходящие от этого. .ветка файл шаблона. Сообщение об ошибке:
Ошибка пользователя: "raw" является недопустимым ключом массива рендеринга в Drupal\Core\Render\Element::children() (строка 97 core/lib/Drupal/Core/Render/Element.php)
. Когда я удаляю файл ветки, ошибка больше не возникает.
Итак, мой вопрос: как правильно добиться такой же разметки без таких ошибок? Может быть, мой подход совершенно неверен, и я должен изменить его. Или, может быть, мой подход правильный, но в моем коде есть небольшая ошибка? В любом случае, я хотел бы знать, почему я получаю такую ошибку в журнале и как ее избежать. Пожалуйста, помоги мне.