Ich habe Filter in einer Ansicht als Auswahllisten verfügbar gemacht. Wie kann ich den Text für die Standardfilteroption "- Beliebig -" ändern? In früheren Versionen wurde vorgeschlagen, eine Vorverarbeitungsfunktion wie die folgende zu verwenden:
if($form['#id'] == 'views-exposed-form') {
foreach ($form['FIELDNAME']['#options'] as $key => &$option) {
if ($key === 'All') {
$option = 'All';
}
}
}
In Drupal 8 bleibt es jedoch anstelle eines veränderbaren Schlüssels / Werts in einer geschützten Klasse stecken.
protected string -> string(7) "- Any -"
Wie kann ich das ändern?
Hinweis: Ich habe auch Better Exposed Filters ausprobiert, aber die Option "- Any -" kann nicht neu geschrieben werden.
Besser belichtete Filter funktionieren in meinem Drupal 8 gut für mich. Das einzige, was Sie tun müssen, ist diesem Pfad zu folgen.
Besser belichtete Filter> Einstellungen> Weitere Optionen> Ergebnisse neu schreiben.
Dann müssen Sie in Drupal 8 jeden Text ersetzen, der dieses Format verwendet. Ich denke, was Sie verpasst haben, ist dieser. Ersetzen Sie mit diesem Token
quelle
Ich habe einen Weg gefunden, dies auf Themenebene zu tun. Sie können '- Any -' in einen bestimmten Wert oder eine andere Variable ändern.
Kopieren Sie select.html.twig in Ihr Thema. Ändern Sie die Vorlage, um zu überprüfen, ob option.label gleich '- Any -' ist, und ändern Sie sie in diesem Fall nach Belieben. Im folgenden Code wird der Wert für die Filterbezeichnung festgelegt.
quelle
@ user61857 Es hat mich in die richtige Richtung gelenkt, danke für deine Hilfe. Der Zusammenführungsfilter hat bei mir nicht funktioniert, ich bin mir nicht sicher, was schief gelaufen ist, also habe ich die einfachere Option verwendet.
fröhliches Drupaling
quelle
Optional können Sie select.html.twig in Ihrem benutzerdefinierten Design mit dem folgenden Code verwenden.
quelle
Vielleicht möchten Sie das Modul "Besser exponierte Filter" nicht installieren, und vielleicht möchten Sie Ihre Vorlagenfunktion nicht codieren.
In diesem Fall können Sie entweder:
quelle
Wenn Sie auf Besser belichtete Filter: Einstellungen und dann auf "Weitere Optionen für ..." klicken, wird eine Dropdown-Liste mit dem Namen "Filteroptionen neu schreiben" angezeigt. Fügen Sie dort hinzu: - Beliebig - | Alle
oder ändern Sie es in alles, was Sie brauchen. Das funktioniert.
quelle
Sie können es in Ihre Datei themename.theme in Ihrem Themenverzeichnis einfügen . Das hat bei mir funktioniert: -
quelle