[Решено] Views фильтрует style (картинку из поля в background строки)

Аватар пользователя cmig

Добрый день! В общем, при перезаписи поля и добавления style в вывод он не попадает. Пробовал просто style="dislpay:block;" режет и хоть ты ему тресни. Я хочу картинку из поля вывести в бэкграунд.

Тип материала:
Версия Drupal:
0 Thanks

Комментарии

Аватар пользователя gun_dose
gun_dose 4 месяца назад

Вьюс вырезает атрибут style полностью.
Попробуйте поставить модуль bg_image_formatter

Аватар пользователя bumble
bumble 4 месяца назад

Все верно.
В общем, Views - не место для формирования HTML, для этого есть шаблоны.

Аватар пользователя VasyOK
VasyOK 4 месяца назад

План Б.
для картинки задаем

.kartinka { /*или .kartinka img*/
position: absolute;
z-index: -1;
width: 100%; /*воззможно*/
}
Аватар пользователя cmig
cmig 4 месяца назад

модуль bg_image_formatter задает привязку к классу, а у мене нужно картинку из поля сделать фотом строки, чтоб понятней слайдер химичу =)

Аватар пользователя gun_dose
gun_dose 4 месяца назад
1

В классы строки во вьюсах можно вставлять токены. Ставите туда что-то вроде "class-{{ id }}" и указываете этот селектор в форматтере.

Аватар пользователя cmig
cmig 4 месяца назад

в обвертке поля да, а вот в Background Images Formatter токенов с ид страницы и т д нет

Аватар пользователя cmig
cmig 4 месяца назад

почитал внимательней [current-page:url:args] возвращает ид. Спасибо!

Аватар пользователя cmig
cmig 4 месяца назад

а нет, не работает, урл то берется не самой ноды, а той где выводится блок, в связи с чем ид ноды как получить так я и не выяснил.

Аватар пользователя gun_dose
gun_dose 4 месяца назад

Выведите поле айдишника, как поле вьюса и скройте из отображения, тогда должен будет появиться нужный токен.

Аватар пользователя cmig
cmig 4 месяца назад

может я что не так делаю, добавил поле "content id", "Cредство форматирования" поставил "фоновое изображение" но "DEFAULT CSS SETTINGS Selector(s)" в токенах nid так и не появился, зато если перезаписать результаты тут же nid есть, от куда модуль этот берет токены?

Аватар пользователя gun_dose
gun_dose 4 месяца назад

Скрытое поле должно быть расположено перед тем, в котором используется его токен, а не после.

Аватар пользователя cmig
cmig 4 месяца назад

так и есть, нет все равно токенов.

Аватар пользователя cmig
cmig 4 месяца назад

психанул, так то я ковыряюсь в друпале с 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('/sites/default/files/styles/slider/public/slider/2018-02/15.jpg?itok=3FpFbjhB') 50% 50% no-repeat; background-size: cover;">
  <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;"&gt;
</div>

вот такой косяк вылазит и не втыкну почему

Аватар пользователя cmig
cmig 4 месяца назад

мануалы бестолковые! {% set name_field = true %} было лишним, убрал и все как надо! Еще раз всем спасибо!