Chciałbym dodać atrybut stylu do każdego pola tytułu w moim widoku. Stworzyłem jedno pole dla koloru. Próbowałem przepisać wynik w ten sposób:
<h2 style="color: [field_color];">[title_1]</h2>
Ale atrybut stylu zostanie usunięty. Używam Drupala 7.
Każda pomoc doceniona.
Odpowiedzi:
Możesz ustawić klasę w polu tytułowym za pomocą Ustawień stylu, jak pokazano poniżej na ekranie. Użytkownik może zastąpić tokeny w ustawieniach stylu, aby ustawić klasę na pole tytułu.
Używając małego javascript lub jquery, odczytaj klasę pola tytułu i ustaw ten sam kolor co nazwa klasy za pomocą właściwości CSS .
źródło
Możesz utworzyć tpl dla tego pola (przykład: views-view-field-MY-VIEW-NAME-page.tpl.php), w tym tpl możesz dodać token piszący:
źródło
Musiałem także dołączyć wartość pola jako kolor wstawiany dla określonego pola. Po przejrzeniu sieci w celu znalezienia łatwego do dostosowania rozwiązania, skończyłem na tym, że:
Przepisz funkcję hook_preprocess_views_view_field () w następujący sposób:
Jak widać, dodałem następujące linie:
I zmień wiersz pod:
źródło
dodaj nazwę do pola anil sugerowanego, a następnie otwórz style.css w folderze motywu i wpisz „.my-css-name”, a następnie żądane wyniki css, takie jak:
.my-css-name {kolor: czerwony; tło: zielony; }
źródło
Po prostu robię coś podobnego i oto co zrobiłem:
1- Utwórz widok z polami koloru i tytułu.
2- Utwórz niestandardowy „views-view-fields.tpl” dla tego widoku. (Szablon niestandardowy tylko dla pola koloru, pokazał mi błąd)
3- Na
field->content
linii dodaj / zamień to, czego potrzebujesz ....<h2 style="color: #<?php print $field->content; ?>">
/ / / / Od tej pory nie testowałem tego, ale powinno działać dobrze / / / /
4- Wyklucz pole tytułu i pokaż je w nagłówku / grupie
5- Utwórz niestandardowy „views-view-unformatted.tpl” dla tego widoku.
6- W tym widoku dodajemy
<?php print $title; ?></h2>
po<?php print $row; ?>
. (dodajemy tytuł i zamykamy tag H otwarty w pierwszym szablonie)OSTATNIA EDYCJA:
Możesz po prostu użyć widoku PHP do wydrukowania wszystkiego, czego potrzebujesz, a styl nie będzie filtrowany.
źródło
Miałem ten sam problem i rozwiązałem go, tworząc szablon o nazwie
W moim przypadku kod, którego użyłem do utworzenia potrzebnego kodu HTML, to:
Włączanie modułu Devel i korzystanie z niego
w pliku szablonu był bardzo pomocny. Bez tego nie mógłbym tego rozgryźć.
źródło
Najłatwiejszym rozwiązaniem było wstawienie wartości jako atrybutu danych. Następnie w moim JavaScript pobieram wartość z pola danych i aktualizuję CSS, aby odzwierciedlić zmianę.
źródło