У меня есть файл ветки: views-view-unformatted - view-machine-name.html.twig
{#
/**
* @file
* Default theme implementation to display a view of unformatted rows.
*
* Available variables:
* - title: The title of this group of rows. May be empty.
* - rows: A list of the view's row items.
* - attributes: The row's HTML attributes.
* - content: The row's content.
* - view: The view object.
* - default_row_class: A flag indicating whether default classes should be
* used on rows.
*
* @see template_preprocess_views_view_unformatted()
*
* @ingroup themeable
*/
#}
{% if title %}
<h3>{{ title }}</h3>
{% endif %}
{% for row in rows %}
{%
set row_classes = [
default_row_class ? 'views-row',
]
%}
<div{{ row.attributes.addClass(row_classes) }}>
{{ row.content }}
</div>
{% endfor %}
Я хочу, чтобы Title
и body
поле было в 1 строке, разделенных запятой, как:
название, тело
Как я могу получить значение 'title' или 'body' или любого другого поля в этом представлении при отладке?
Я использовал kint (название) и kint (тело), но это не работает. Я также сделал debug = TRUE;
в файле услуг.
Но не могу найти способ иметь значение поля в неформатированной ветке HTML.
Я нашел способ с помощью Kint, вы можете получить значения полей в views-view - unformatted.html.twig
если вы хотите определенное поле
Чтобы получить значение текстовых полей
{{row.content['#row']._entity.field machine name[0].value}}
Получить поля изображения src
{{file_url(row.content['#row']._entity.field machine name.entity.uri.value)}}
Чтобы получить изображение alt, title, width, height
{{row.content['#row']._entity.field machine name[0].alt/title/width/height}}
Если вы хотите перебрать несколько полей
Если вы хотите сырое значение
источник
Я придумала способ использования кинта.
Внутри вашего views-view-unformatted.html.twig используйте следующий код для отображения ваших отдельных полей:
источник
Ниже приведен пример кода для доступа к значениям полей в файле views-view-unformatted.html.twig -
источник
Вам нужно создать три файла, чтобы переопределить представления, используя файлы веток.
1. views-view - foobar.html.twig
2. views-view-unformatted - foobar.html.twig
3. views-view-fields - foobar.html.twig
Назначение всех трех файлов описано ниже:
1: Реализация темы по умолчанию для шаблона основного вида.
2: Реализация темы по умолчанию для отображения неформатированных строк.
3: Шаблон представления по умолчанию для отображения всех полей в строке.
Вы должны использовать "views-view-fields - foobar.html.twig", чтобы вывести каждое ваше поле на представления.
Ниже приведен образец:
источник
Исходя из моего опыта, не существует простого способа вставить в views-views-unformatted - view-.html.twig значение из полей, не являющихся частью структуры объекта.
Очень напечатать
text (plain)
поле. Так больно печататьflag_field
,entity_reference
и так далее.Чтобы достичь этого, не пройдя весь код ядра представления, мне пришлось создать этот хак:
Более подробная информация здесь /drupal//a/288316/13760
источник