[gelöst] Icons in Views Listenansicht ausgeben statt Taxobegriffe
am 03.11.2020 - 14:54 Uhr in
Was auf der Node-Detailseite bestens funktioniert, kriege ich in der Listenansicht (Views-Suchergebnisse) nicht hin.
Beispiel: bei einer Node sind die Werte rot, grün, gelb, blau zugeordnet, bei anderen Nodes dementsprechend andere Werte...
Dazu gibt es ein TaxoVokabular indem alle Begriffe mit svg Icons hinterlegt sind.
In der Listenansicht erscheinen die Taxobegriffe als Klartext richtig, aber in dem Moment wo ich sie als Icon darstellen will, passiert je nach Einstellung folgendes:
1. es werden immer die gleichen Icons im Suchergebnis angezeigt obwohl diese der Node gar nicht zugeordnet waren...
oder
2. Die Icons werden passend zur Node angezeigt, dafür immer nur eins, also bei 5 Werten je Node, erhält man 5 x das gleiche Suchergebnis jeweils mit den unterschiedlichen Icons untereinander.
Wieso klappt das mit den Icons nicht, obwohl es bei der Auswahl "Klartext" funktioniert? Ich komme hier einfach nicht weiter, freue mich über jeden Hinweis, dank vorab...
Grüße Jenna
- Anmelden oder Registrieren um Kommentare zu schreiben
Verstehe ich richtig, wenn Du
am 04.11.2020 - 07:52 Uhr
Verstehe ich richtig, wenn Du den Namen des SVG-Icons ausgibst, dann passt es?
Aber wenn Du das SVG als solches ausgeben willst, dann nicht?
Hm, also die Referenzen in der View müssten ja dann passen.
Wie bindest Du das SVG ein? Als normales Bild mit Oder als Hintergrundbild?
Kann man sich das mal auf der Webseite ansehen?
Und vielleicht ein Bild der View- Einstellungenß
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
@montviso Ich habe die
am 04.11.2020 - 16:38 Uhr
@montviso
Ich habe die Install nur local auf Xampp, aber ich beschreibe es dir anhand deiner D9 Blumenstauden Seite.
Linke Spalte (Views) mit Select- und Checkbox Filtern für Suche.
Mainbereich: Suchergebnisse Listenansicht
Was bei dir dieses Vokabular wäre:
Verwendung: Dachgarten, Mobiles Grün, Steingarten, Formschnitt, Gruppengehölz, Einfassung, Bodendecker, Vogelschutzgehölz
ist bei mir mit Icons je Taxobegriff (als SVG-Image) hinterlegt.
Dies mit einem zusätzlichen Imagefield unter dem Taxovokabular gelöst und jedem Begriff wird ein icon1.svg, icon2.svg... usw. zugeordnet.
Jeder Pflanze sind ja unterschiedliche Begriffe zugeordnet, die in der Listenansicht lediglich als Icon statt Begriffsname dargestellt werden sollen.
Begriffsname funktioniert mit der Einstellung Klartext oder Link.
Will ich aber statt Begriffsname die Icons ausgeben, erscheint jede Pflanze so oft untereinander in der Suchausgabe, abhängig davon wie viele Begriffe ihr zugeordnet wurden.
Also bei 6 Begriffen, 6 x gleiche Pflanze untereinander. In jeder Ausgabe erscheint dann jeweils 1 Icon, dann kommt das nächste Icon usw.
In der Views (Typ Inhalt) habe ich eine Beziehung erstellt: Begriff aus field_verwendung (Verwendung wäre in diesem Beispiel der Name des TaxoVokabulares)
Unter Felder: TaxoBegriff (Name des Imagefields), Beziehung = Begriff aus field_verwendung
Formatierer: Image SVG Support (Bild wäre auch auswählbar, löst aber das Problem nicht)
Angezeigt werden die Icons ja, nur eben nicht in einer Reihe passend zur Pflanze, sondern als Mehrfach Ausgabe untereinander.
Würde man jetzt bei dir ein Pflanzen Vorschaubild anklicken (zur eigentlichen Node) werden dort alle Icons richtig dargestellt.
Grüße Jenna
Fehlt da einfach eine Angabe
am 05.11.2020 - 08:05 Uhr
Fehlt da einfach eine Angabe distinct bei der View?
Sieht so aus, als würde jeder Node für jede Tax einmal ausgegeben.
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Das ist oft ein Problem mit
am 05.11.2020 - 12:30 Uhr
Das ist oft ein Problem mit Taxonomie. Mann muß dann die View anders aufsetzen. Ein "distinct" funktioniert nur auf der Basistabelle. Die Kombination von Node-ID und Tid (bei Node als Basis-Tabelle) ist eindeutig und es wird pro Kombination ein Ergebnis gezeigt. Nimmst Du dagegen aber eine auf der Taxonomie aufbauende View und und verbindest die mit den Nodes über die Taxonomie-Referenz, dann hast Du genau ein Element pro tid. Dann sollte es keine Duplikate mehr geben.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Zitat: Sieht so aus, als
am 05.11.2020 - 13:12 Uhr
Sieht so aus, als würde jeder Node für jede Tax einmal ausgegeben.
Genau, das ist momentan das Problem. Ich habe auch Views Distinct installiert, aber in diesem Fall wirkungslos, egal welche Einstellung.
@werner
Dann setze ich eine Views vom Typ Taxonomie auf und versuche es damit.
Die Kombination von Node-ID und Tid (bei Node als Basis-Tabelle) ist eindeutig und es wird pro Kombination ein Ergebnis gezeigt.
Deswegen funktioniert es auch auf der Node, in der SearchViews steht ja die Node-ID noch gar nicht zur Verfügung, besten Dank, da komme ich erstmal mit weiter.
Grüße Jenna
Hm, komisch. Irgendwie habe
am 05.11.2020 - 13:33 Uhr
Hm, komisch.
Irgendwie habe ich es auch schon so hinbekommen.
Muss doch eigentlich funktionieren.
Eine Zeile pro Node und statt der Tax-TID holt man via Referenz das SVG.
Ich habe auch kein Zusatz Modul installiert.
Nur in der View -> Erweitert -> Datenbankabfrageoptionen -> Eindeutig
Klar, mit einer Tax-View funktioniert es sicher, aber hat ja wieder andere Auswirkungen, die man vielleicht nicht will.
Das Problem, es gibt so viele Anwendungsfälle und so viele Lösungswege...
Ich bin mir auch nicht mehr sicher, wo und wie ich das zuletzt hin bekommen habe.
Das gut: Es ist Drupal! Irgendwann findet man eine Lösung, denn es gibt sie. ;-)
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Zitat: Nur in der View ->
am 05.11.2020 - 14:24 Uhr
Nur in der View -> Erweitert -> Datenbankabfrageoptionen -> Eindeutig
Da habe ich auch schon jede mögliche Kombination ausprobiert, hat leider auch nichts gebracht.
Die Einstellungen in der Search-View sind exakt so wie in der View die für die Detail-Node ausgegeben wird und in dem Moment wo eine Node-ID zur Verfügung steht funktioniert es auch.
Grüße Jenna
Sorry, ich habe jetzt noch
am 05.11.2020 - 15:28 Uhr
Sorry, ich habe jetzt noch mal alles genau durchgelesen, was Du da als Vergleich mit meiner Pflanzen-Datenbank geschrieben hast.
Ich sitze dieser Tage manchmal auf dem Schlauch. ;-)
Also EINE Pflanze kann MEHRERE Begriffe haben und folglich mehrere Bilder?
Müsste das nicht über die Einstellung:
"Einstellungen für Felder, die mehrere Werte erlauben" zu regeln sein und dort den Haken setzen bei " Alle Werte in der selben Reihe anzeigen"
Vermutlich zu primitiv, aber ich möchte ja auch nicht frühzeitig aufgeben mit schlauen Tipps. ;-)
Du hast angegeben Drupal 7 oder Neuer.
Welches ist es denn? Da gab es mal Änderung von wegen den Voreinstellungen.
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Zitat: "Einstellungen für
am 05.11.2020 - 21:10 Uhr
"Einstellungen für Felder, die mehrere Werte erlauben" zu regeln sein und dort den Haken setzen bei " Alle Werte in der selben Reihe anzeigen"
Diese Auswahl steht bei dem Begriffsfeld (Icon Field/SVG) gar nicht zur Verfügung.
Im eigentlichen Inhaltstyp ist angelegt: Field_Mein_Name mit "Referenz auf Taxonomiebegriffe" und dieses Feld zeigt in der View auch die Auswahl "mehrere Werte erlauben" an, die du meinst. Das ist ja auch das Field, welches der Kunde im Einstellformular ausfüllt (so wie bei dir die Zuordnung zu Pflanzen)
Diese Ausgabe funktioniert aber leider nur mit den zugeordneten Begriffsnamen (als Klartext oder Link), diese zwar richtig, aber sie lassen sich eben nicht als Icon ausgeben, auch nicht mit Feld ersetzen etc.
Nur auf der eigentlichen Node-Detailseite klappt alles perfekt, aber nicht in der Search-Views in den Suchergebnissen.
Grüße Jenna
Nutze die aktuelle 7.73,
am 05.11.2020 - 21:12 Uhr
Nutze die aktuelle 7.73, hatte das aber auch schon mit der Version davor probiert...
kann man evtl. einfach mit
am 06.11.2020 - 05:11 Uhr
kann man evtl. einfach mit css. data von den werten und dann grafiken/icons als hintergrund
C.A.W. Webdesign
>>Diese Auswahl steht bei dem
am 06.11.2020 - 09:27 Uhr
>>Diese Auswahl steht bei dem Begriffsfeld (Icon Field/SVG) gar nicht zur Verfügung.
Aha, dann scheint hier das Problem zu liegen. Gut zu wissen.
Dann würde ich in der Tax nur ein Feld mit dem Namen des SVG mit führen und das irgendwie selbst zusammenbauen.
Entweder als überschriebenen Wert in der View oder eben, wie caw vorschlägt direkt im CSS als Hintergrundbild.
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Zitat:Entweder als
am 06.11.2020 - 11:35 Uhr
Entweder als überschriebenen Wert in der View oder eben, wie caw vorschlägt direkt im CSS als Hintergrundbild.
CSS als Hintergrundbild würde ich ja machen, aber es ist nicht greifbar, die Ausgabe sieht so aus:
Klartext:
<div class="field-content">rot, grün, gelb, blau, pink, lila</div>
Links:
<a href="/testversion/meine-categorie/rot">Rot</a>
Ich brauche ja irgendeine Class je Begriff und die ist nicht vorhanden. Ich hatte die Hoffnung auf ein Modul mit dem sich eine Class je Begriff vergeben lässt, es scheint keines zu geben.
Lediglich ein Modul mit dem man eine einzige Class für alle Begriffe vergeben kann, aber das bringt mich leider nicht weiter.
@montviso
was meinst du mit: Entweder als überschriebenen Wert?
Wo kann ich die Werte in der View überschreiben?
Falls du Feld A ersetzen mit Feld B meinst, das funktioniert leider nicht...oder meinst du in einer eigenen meinev-views.tpl?
Grüße Jenna
das geht
am 06.11.2020 - 11:59 Uhr
das geht https://css-tricks.com/almanac/selectors/a/attribute/
C.A.W. Webdesign
Mit überschriebenem Wert
am 06.11.2020 - 12:38 Uhr
Mit überschriebenem Wert meine ich die Option bei jedem View-Field "Ergebnisse überschreiben".
Also angenommen, das Tax-Field, welches eben keine SVG ist, liefert den Wert "meinbild1" und Du weißt die Bilder liegen im Ordner sites/file/meintaxordner, dann kannst Du darin etwas aufbauen:
Dann werden meintewegen sechs so imeges untereinander dargestellt, alle mit der Klasse meinicon, so dass Du sie positionieren kannst, wie gewünscht. Und außerdem hätte jedes noch eine individuelle Klasse, abhängig von der Icon-Art.
Oder alternativ einen Container schaffen, dem Du ein Hintergrundbild abhängig von der Klasse gibst. Jenachdem, was besser erscheint.
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
Ich habe eine Lösung
am 06.11.2020 - 17:57 Uhr
Ich habe eine Lösung gefunden.
Das field-mein-name aus dem Content Type, mit Referenz auf das TaxoVokabular, lässt sich in der View unter Formatierer auf "Gerenderte Entität" stellen.
Damit hat man dann je Begriff eine eigene Class zur Verfügung.
div#taxonomy-term-1
div#taxonomy-term-2
usw.
Dann per CSS mit background-image: url... die icons.svg einbinden und eben das Ganze optisch anpassen.
Danke euch vielmals für die Mithilfe.
@caw
Super Link, diese Varianten kannte ich bisher nicht, sehr interessant. Ich habe es zwar auf Anhieb damit nicht lösen können, aber das lag eher daran das meine Konzentration auch einfach im Eimer ist...
@wla
Ich hatte mit einer Views vom Typ Taxonomie zwar angefangen, aber der Aufwand wäre riesig gewesen, da die andere View komplett fertig ist mit vielen Feldern und CSS-Klassen, Suchfiltern etc.
@montviso
In der Views unter Format / Unformatierte Liste / Einstellungen habe ich das Ganze mit Gruppierung versucht. Ich bin soweit gekommen das zumindest 2 Begriffe angezeigt wurden, danach war mir nicht mehr klar wie man die nächsten Begriffe dazu holt.
Falls du mal auf so eine Lösung kommst, würde mich das sehr interessieren. Wahrscheinlich geht es auch mit Gruppierung, wenn man weiß wie...
Grüße Jenna
Das mit der Gruppierung hatte
am 06.11.2020 - 18:50 Uhr
Das mit der Gruppierung hatte ich auch schon angedacht.
Eine andere Lösung wäre noch mit dem Modul Views Field View auf eine andere View zugreifen, die für den Node als Parameter die Taxonomie-Referenzen holt.
ABer das geht auf Kosten der Performance.
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de