Ich möchte in meiner Ansicht jedem Titelfeld ein Stilattribut hinzufügen. Ich habe ein Feld für eine Farbe erstellt. Ich habe versucht, das Ergebnis so umzuschreiben:
<h2 style="color: [field_color];">[title_1]</h2>
Das style-Attribut wird jedoch entfernt. Ich benutze Drupal 7.
Jede Hilfe dankbar.
Antworten:
Sie können eine Klasse für das Titelfeld festlegen, indem Sie die Stileinstellungen verwenden, wie im folgenden Bildschirm dargestellt. Sie können Benutzer-Token-Ersetzungen in den Stileinstellungen vornehmen, um die Klasse auf das Titelfeld festzulegen.
Wenn Sie kleines Javascript oder eine kleine Abfrage verwenden, lesen Sie das Feld für die Titelklasse und stellen Sie die Farbe mithilfe der CSS- Eigenschaft auf den Namen der Klasse ein .
quelle
Sie können eine tpl für dieses Feld erstellen (Beispiel: views-view-field-MY-VIEW-NAME-page.tpl.php). In dieser tpl können Sie das Token hinzufügen, das dies schreibt:
quelle
Ich musste auch den Wert eines Feldes als Inline-Farbe für ein bestimmtes Feld angeben. Nachdem ich im Internet nach einer einfach anpassbaren Lösung gesucht hatte, ging ich folgendermaßen vor:
Schreiben Sie die hook_preprocess_views_view_field () Funktion wie folgt aus :
Wie Sie sehen können, habe ich diese Zeilen hinzugefügt:
Und ändern Sie die Zeile unter:
quelle
Fügen Sie einen Namen in das Feld ein und öffnen Sie style.css in Ihrem Themenordner. Geben Sie ".my-css-name" gefolgt von den gewünschten CSS-Ergebnissen ein, wie zum Beispiel:
Mein-CSS-Name {Farbe: rot; Hintergrund: grün; }
quelle
Ich mache nur etwas Ähnliches und hier ist, was ich getan habe:
1- Erstellen Sie eine Ansicht mit Farb- und Titelfeldern.
2- Erstellen Sie eine benutzerdefinierte "views-view-fields.tpl" für diese Ansicht. (Eine benutzerdefinierte Vorlage nur für das Farbfeld zeigte mir einen Fehler)
3- In der
field->content
Zeile hinzufügen / ersetzen, was Sie brauchen ....<h2 style="color: #<?php print $field->content; ?>">
/// Von nun an habe ich es nicht getestet, aber es sollte gut funktionieren ///
4- Schließen Sie das Titelfeld aus und zeigen Sie es in der Kopfzeile / Gruppe an
5- Erstellen Sie eine benutzerdefinierte "views-view-unformatted.tpl" für diese Ansicht.
6- In dieser Ansicht fügen wir
<?php print $title; ?></h2>
nach<?php print $row; ?>
. (Wir fügen den Titel hinzu und schließen das in der ersten Vorlage geöffnete H-Tag.)LAST EDIT:
Sie können einfach PHP-Ansichten verwenden, um alles zu drucken, was Sie brauchen, und der Stil wird nicht gefiltert.
quelle
Ich hatte das gleiche Problem und löste es, indem ich eine Vorlage mit dem Namen erstellte
In meinem Fall lautete der Code, mit dem ich den benötigten HTML-Code erstellte, wie folgt:
Aktivieren des Entwicklungsmoduls und Verwenden von
in der Vorlagendatei war sehr hilfreich. Hätte das nicht herausfinden können ohne es.
quelle
Die einfachste Lösung, die ich finden konnte, bestand darin, den Wert als Datenattribut einzufügen. Dann nehme ich in meinem JavaScript den Wert aus dem Datenfeld und aktualisiere das CSS, um die Änderung widerzuspiegeln.
quelle