[Решено] Views фильтрует style (картинку из поля в background строки)
18 марта 2018 в 18:35
Добрый день! В общем, при перезаписи поля и добавления style в вывод он не попадает. Пробовал просто style="dislpay:block;" режет и хоть ты ему тресни. Я хочу картинку из поля вывести в бэкграунд.
- Блог
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Комментарии
Вьюс вырезает атрибут style полностью.
Попробуйте поставить модуль bg_image_formatter
Все верно.
В общем, Views - не место для формирования HTML, для этого есть шаблоны.
План Б.
для картинки задаем
position: absolute;
z-index: -1;
width: 100%; /*воззможно*/
}
модуль bg_image_formatter задает привязку к классу, а у мене нужно картинку из поля сделать фотом строки, чтоб понятней слайдер химичу
В классы строки во вьюсах можно вставлять токены. Ставите туда что-то вроде "class-{{ id }}" и указываете этот селектор в форматтере.
в обвертке поля да, а вот в Background Images Formatter токенов с ид страницы и т д нет
почитал внимательней [current-page:url:args] возвращает ид. Спасибо!
а нет, не работает, урл то берется не самой ноды, а той где выводится блок, в связи с чем ид ноды как получить так я и не выяснил.
Выведите поле айдишника, как поле вьюса и скройте из отображения, тогда должен будет появиться нужный токен.
может я что не так делаю, добавил поле "content id", "Cредство форматирования" поставил "фоновое изображение" но "DEFAULT CSS SETTINGS Selector(s)" в токенах nid так и не появился, зато если перезаписать результаты тут же nid есть, от куда модуль этот берет токены?
Скрытое поле должно быть расположено перед тем, в котором используется его токен, а не после.
так и есть, нет все равно токенов.
психанул, так то я ковыряюсь в друпале с 6 версии, с 7 вообще вещи шикарные вытворял, а с 8 еще не особо кишки рассматривал, тем более этот твиг... в общем решил кастомизировать вывод поля представления
<?php
{% for name_field,field in fields -%}
{% if field.content %}
{% set name_field = true %}
{% if name_field == "field_image" %}
<div class="item relative" style="background: url('{{ field.content }}') 50% 50% no-repeat; background-size: cover;">
{% else %}
{{ field.content }}
{% endif %}
{% endif %}
{% endfor %}
</div>
?>
<div class="item relative" style="background: url('<div class=" table"="">
<div class="table-cell">
<div class="container">
<div class="text">
<p>букет от 500 рублей</p>
<p>корзины с бесплатной доставкой</p>
</div>
<a class="scrollto button" href="#applicationsection">Подобрать букет</a>
</div>
</div>
</div>') 50% 50% no-repeat; background-size: cover;">
</div>
вот такой косяк вылазит и не втыкну почему
мануалы бестолковые! {% set name_field = true %} было лишним, убрал и все как надо! Еще раз всем спасибо!