Such-/Filterproblem bei genauer Suche/Filterung
![](http://www.drupalcenter.de/files/noavatar_mini.gif)
am 16.06.2014 - 13:27 Uhr in
Hallo miteinander,
ich muss nun nochmal mein Such- bzw. Filterproblem anbringen.
Ich möchte auf einer Seite eine umfangreichere Suche bzw. Filterfunktion implementieren.
Vorbemerkungen:
- nodes eines bestimmten inhaltstyps sind vorhanden und als Filtereinschränkung gesetzt
- Nodes sind mit folgenden Feldern gefüllt, jedes der Felder referenziert auf Taxonomiebegriffe
Veranstaltungsbereich = Vokabular Veranstaltungsbereich
Bezirk = Vokabular Bezirk
Stadtteil = Vokabular Stadtteil
Interessengruppe = Vokabular Interessengruppe
Rund ums Auge = Vokabular Rund ums auge
Man kann nun eben eine Veranstaltung erstellen, sucht anfangs den Veranstaltungsbereich (Bezirk/Stadtteil, Interessen, Kultur,
Rund ums Auge, Fortbildung oder Sonstige) aus.
Je nach Veranstaltungsbereich können nun weitere Punkte ausgewählt werden (Bezirk/Stadttei, Interesse, Rund ums Auge)
Natürlich hat jede Veranstaltung auch ihr Veranstaltungsdatum.
Soweit alles Prima.
Nun möchte ich eine Suche oder auch Filterung erreichen, die folgende Funktionen bietet:
1. Auswahl von Veranstaltungsbereichen - Mehrfachauswahl möglich!
2. Je nach gewähltem Veranstaltungsbereich zusätzlich die mögliche Unterkategorie (also Bezirk/Stadtteil, Interesse oder Rund ums auge)
3. innerhalb eines Zeitraumes
Funktionieren tut aber nur Punkt 1 in Kombination mit 3.
Sobald Punkt 2 mit dazu kommt zeigt er nur noch Veranstaltungen an die Punkt 1 und Punk 2 erfüllen.
Ich möchte aber, dass er auch die zweite oder dritte Auswahl aus Punkt 1 mit beachtet.
Beispiel:
Punkt 1: gewählt Kultur, Fortbildung & Sonstige
Punkt 2 fällt damit weg
Punkt 3 Zeitraum hinzu -> funktioniert wunderbar
Punkt 1: gewählt Bezirk/Stadtteil, Kultur
Punkt2 wird mit Absicht nicht gewählt, Option Bezirk/Stadtteil allerdings vorhanden
Punkt 3 Zeitraum hinzu -< funktionier
Punkt 1 wie davor
Punkt 2 nun Option für Bezirk/Stadtteil ausgewählt
Punkt 3 Zeitraum hinzu -> als Ergebnis kommen NUR die Veranstaltungen aus Bereich Bezirk/Stadtteil des gewählten Bezirks/Stadtteils im Zeitraum, nicht aber auch die Veranstaltungen aus Kultur des gewählten Zeitraums!
Kann irgendwer das Problem nachvollzihenen und helfen?
Danke
- Anmelden oder Registrieren um Kommentare zu schreiben
Hallo, es könnte mit der
am 17.06.2014 - 08:42 Uhr
Hallo,
es könnte mit der Reihenfolge Deiner Filterkriterien zu tun haben.
Sobald Punkt 2 mit dazu kommt zeigt er nur noch Veranstaltungen an die Punkt 1 und Punk 2 erfüllen.
Versuch mal das Kriterium von Punkt 3 (Zeitraum) vor Punkt 2 zu setzten.
LG
Robert
Hallo, Reihenfolge spielt
am 18.06.2014 - 16:47 Uhr
Hallo,
Reihenfolge spielt keine Rolle. Ob ich Kriterium 2 zwischen 1 und 3, oder nach 3, platziere bringt jedesmal das gleiche Ergebnis.
Immer wenn Kriterium 2 hinzukommt wird die Mehrfachauswahl aus Kriterium 1 ignoriert.
Andere Vorschläge?
Hast du mal die und/oder
am 18.06.2014 - 19:02 Uhr
Hast du mal die und/oder Filtergruppen ausprobiert unter Views Filterkriterien > Hinzufügen > und/ oder?
Eventuell hast du bei deiner Taxonomie Struktur bei Punkt 1-3 irgendwelche Zuordnungen gesetzt die sich in die Quere kommen können, also blockieren?
Oder auch eine Möglichkeit wäre z.B. mit https://drupal.org/project/views_selective_filters immer nur die Werte anzuzeigen die auch tatsächlich vorhanden sind.
Allerdings habe ich kein Datumsfeld in der Suche, ob das funktioniert kann ich so nicht sagen.
Grüße Jenna
Mit Filtergruppen sowie
am 18.06.2014 - 19:20 Uhr
Mit Filtergruppen sowie und/oder Operatoren hab ich auch schon rumprobiert. Dann kommen aber gleich ganz seltsame Ergebnisse raus.
Ein Fehler bei den Taxonomien kann ich mir jetzt nicht vorstellen.
Die verschiedenen Felder speisen sich ja, wie geschrieben, aus jeweils unterschiedlichen Vokabularen.
Nur die Felder Bezirk und Stadtteil sind per Field Reference miteinander verknüpft, aber die sollen im zweiten Filterschritt ja sowieso miteinander korespondieren.
Selective Filters erschließt sich mir jetzt nicht ganz.
Im Prinzip bräuchte ich ja anstatt eines und/oder Operators einen undoder Operator.
Also zeige mir x,y,& z aus Veranstaltungsbereich, sowie das mit y zusätzlich mit a aus Bezirk o.ä.
Fireball79 schrieb Punkt 1
am 19.06.2014 - 06:21 Uhr
Punkt 1 wie davor
Punkt 2 nun Option für Bezirk/Stadtteil ausgewählt
Punkt 3 Zeitraum hinzu -> als Ergebnis kommen NUR die Veranstaltungen aus Bereich Bezirk/Stadtteil des gewählten Bezirks/Stadtteils im Zeitraum, nicht aber auch die Veranstaltungen aus Kultur des gewählten Zeitraums!
Danke
das stimmt schon so. das sind filter die logisch mit "UND" verknüpft sind, wenn man einen stadtteil auswählt, kann nur noch das ergebnis dieses satdtteils nagezeigt werden
Hi, wenn ich das richtig
am 19.06.2014 - 10:26 Uhr
Hi,
wenn ich das richtig verstehe, möchtest Du eine gefächerte Suche machen (faceted search).
Ich glaube damit stösst Du an die Grenzen was man mit Views
out of the box machen kann.
Es gibt keinen logischen UndOder Operator(es sind 2 Operatoren),
daher kann dies auch nicht in EINER Operation ausgeführt werden.
Ich habe das gleiche damals so gelöst:
Den ganzen Kontent in SOLR indexiert und mache ich die Suchanfragen von dort (superschnell!).
Evtl. hilft Dir auch das weiter(habe ich nie benutzt):
https://www.drupal.org/project/facetapi
Ohne SOLR:
Das beste ist Du gibst mit Devel den Query aus.
Dann versuchst Du den Query (phpmyadmin) so umzubauen,
das er die richtigen Ergebnisse liefert.
Dann kannst Du versuchen diesen Query mit Views zu erzeugen.
Ich vermute aber dass DU dies mit Views nie hinbekommst.
MfG
Robert
Danke euch beiden. Eine
am 19.06.2014 - 13:36 Uhr
Danke euch beiden.
Eine ähnliche Vermutung hatte ich auch schon, das diese gefächerte Suche so out of the Box mit Views leider nicht lösbar ist.
Wäre mal ne Überlegung, dass irgendwie mit in den Views-Core zu bekommen.
Meine Überlegung, nachdem sich meine Vermutung nun bestätigt hat, ist das ganze Via Search Api und FacetApi zusammenzubauen.
Habe dies ganze mal halbwegs eingerichtet,allerdings scheint da irgendwo noch ein Fehler zu sein (also bei Search und Facet Api), da ich dann in der View (sollte ja mit Search View gehen) einen Ajax Fehler bekomme.
Gibt's irgenwo ne deutsche Anleitung, wie Search und Facet Api einzurichten sind. Geht das Ganze auch ohne einen Apache Solr Server o.ä.?
Danke euch.
Fireball79 schriebHallo
am 19.06.2014 - 13:47 Uhr
Hallo miteinander,
ich muss nun nochmal mein Such- bzw. Filterproblem anbringen.
Ich möchte auf einer Seite eine umfangreichere Suche bzw. Filterfunktion implementieren.
Vorbemerkungen:
- nodes eines bestimmten inhaltstyps sind vorhanden und als Filtereinschränkung gesetzt
- Nodes sind mit folgenden Feldern gefüllt, jedes der Felder referenziert auf Taxonomiebegriffe
Veranstaltungsbereich = Vokabular Veranstaltungsbereich
Bezirk = Vokabular Bezirk
Stadtteil = Vokabular Stadtteil
Interessengruppe = Vokabular Interessengruppe
Rund ums Auge = Vokabular Rund ums auge
Man kann nun eben eine Veranstaltung erstellen, sucht anfangs den Veranstaltungsbereich (Bezirk/Stadtteil, Interessen, Kultur,
Rund ums Auge, Fortbildung oder Sonstige) aus.
Je nach Veranstaltungsbereich können nun weitere Punkte ausgewählt werden (Bezirk/Stadttei, Interesse, Rund ums Auge)
Natürlich hat jede Veranstaltung auch ihr Veranstaltungsdatum.
Soweit alles Prima.
Nun möchte ich eine Suche oder auch Filterung erreichen, die folgende Funktionen bietet:
1. Auswahl von Veranstaltungsbereichen - Mehrfachauswahl möglich!
2. Je nach gewähltem Veranstaltungsbereich zusätzlich die mögliche Unterkategorie (also Bezirk/Stadtteil, Interesse oder Rund ums auge)
3. innerhalb eines Zeitraumes
Funktionieren tut aber nur Punkt 1 in Kombination mit 3.
Sobald Punkt 2 mit dazu kommt zeigt er nur noch Veranstaltungen an die Punkt 1 und Punk 2 erfüllen.
Ich möchte aber, dass er auch die zweite oder dritte Auswahl aus Punkt 1 mit beachtet.
Beispiel:
Punkt 1: gewählt Kultur, Fortbildung & Sonstige
Punkt 2 fällt damit weg
Punkt 3 Zeitraum hinzu -> funktioniert wunderbar
Punkt 1: gewählt Bezirk/Stadtteil, Kultur
Punkt2 wird mit Absicht nicht gewählt, Option Bezirk/Stadtteil allerdings vorhanden
Punkt 3 Zeitraum hinzu -< funktionier
Punkt 1 wie davor
Punkt 2 nun Option für Bezirk/Stadtteil ausgewählt
Punkt 3 Zeitraum hinzu -> als Ergebnis kommen NUR die Veranstaltungen aus Bereich Bezirk/Stadtteil des gewählten Bezirks/Stadtteils im Zeitraum, nicht aber auch die Veranstaltungen aus Kultur des gewählten Zeitraums!
Kann irgendwer das Problem nachvollzihenen und helfen?
Danke
ich habs nochmal genau durchgelesen. müßte ja eigentlich funktionieren. hast du auch wirklich ein veranstaltung im bezirk mit dem zeitraum und mit der kategorie "kultur"??
so baue ich views filter ja auch immer auf und die funktionieren, oder übersehe ich eine logik?
die veranstaltungen haben doch immer eine kategorie, also welche kategorie wird dir denn angezeigt?
alsow enn du keine weiteren module aktiv hast, die das irgendwie beeinflussen oder irgendwie deine filtereinstellungen doch anderes sind, sehe da nur die lösung, dß es laufen müßte.. ;)
Hallo, ja es sollte auch ohne
am 19.06.2014 - 14:14 Uhr
Hallo,
ja es sollte auch ohne SOLR gehen.
Dort steht es funktioniert auch mit Core Search und Search API
https://www.drupal.org/project/facetapi
Allerdings, denke ich das eine solche Suche ohne SOLR extrem langsam sein wird.
Anleitung leider nur Englisch aber dafür gut erklärt:
http://www.trellon.com/content/blog/apachesolr-and-facetapi
MfG
Robert
Zitat: Punkt 1: gewählt
am 19.06.2014 - 14:49 Uhr
Punkt 1: gewählt Kultur, Fortbildung & Sonstige
Punkt 1: gewählt Bezirk/Stadtteil, Kultur
Ich habe ja das Gefühl, der Fehler liegt an Punkt 1, ich kann mich da nicht reinlesen, was finde ich denn unter Filter Punkt 1? Kultur oder Bezirk/Stadteil in Kombination oder sind das wirklich auch einzelne
Taxonomie-Strukturen?
Kannst du mal einen Screen anhängen von deinem Views Filter (Frontend) mit ausgeklappten Kategorien das man sehen kann wie die Verbindung bzw. Auswahlmöglichkeit aussieht?
Grüße Jenna
Punkt 1 sieht folgendermaßen
am 19.06.2014 - 15:25 Uhr
Punkt 1 sieht folgendermaßen aus (verbalisiert, Screenshot ist etwas schwierig, da ich blind bin)
Der Punkt 1 ist die Kategorie Veranstaltungsbereich, welche sich aus gleichnamigem Vokabular speist.
in diesem Vokabular sind die Taxonomiebegriffe Bezirk/Stadtteil, Interessengruppe, Kultur/Freizeit, Rund ums Auge, Fortbildung und Sonstige enthalten.
Eine Veranstaltung lässt sich beim Erstellen nun den verschiedenen Veranstaltungsbereichen zuordnen, wobei auch potentiell mehrere Bereiche gewählt werden können, da es manchmal Überschneidungen gibt. Dies sollte bei der Filterung aber kein Problem darstellen.
Ich möchte eben eine Filterung bspw. sowohl nach Bezirk/Stadtteil, Kultur und Rund ums auge. und zusätzlich wenn Bezirk/Stadtteil zusätzlicher Filter nach Bezirk/Stadtteil, ebenso bei Rund ums auge.
Es sollen also alle Veranstaltungen angezeigt werden, die zum einen Bezirk/Stadtteil mit Filter nach Bezirk/statdtteil erfüllen,
außerdem alle Veranstaltungen die Rund ums Auge, mit entsprechendem Filter erfüllen
und außerdem noch alle Kulturveranstaltungen.
Es soll also eine Veranstaltung nicht alle 3 Veranstaltungsbereiche erfüllen, sondern nach den Veranstaltungsbereichen soll es sich auffächern.Zeige sowohl x als auch y als auch z. Und dann eben x mit und Filter xa, ebenso bei y.
Zitat: Eine Veranstaltung
am 21.06.2014 - 13:19 Uhr
Eine Veranstaltung lässt sich beim Erstellen nun den verschiedenen Veranstaltungsbereichen zuordnen, wobei auch potentiell mehrere Bereiche gewählt werden können
Zeige sowohl x als auch y als auch z.
Bis zu dem obigen Zitat funktioniert alles, ja?
ab hier, nachfolgendes Zitat, scheint sich etwas in die Quere zu kommen:
Und dann eben x mit und Filter xa, ebenso bei y.
Prinzipiell sollte das mit Views funktionieren, aber ich glaube das eine Mehrfachauswahl im oberen Filter, die schon abgefragt ist, dann durch den Filter xa blockiert wird.
Bei Filterkriterien: "zeige alles von oder zeige eines von" könnte der Wurm drin sein oder eben doch in der Gruppierung der "und/ oder" Funktion.
Grüße Jenna
Genau so siehts wohl aus. Die
am 26.06.2014 - 11:16 Uhr
Genau so siehts wohl aus. Die Mehrfachauswahl wird durch die Verbindung mit einem xa oder ya o.ä. aufgehoben,
Es greift dann nur noch filter x + filter xa. Mehrfachauswahl wird dann konsequent ignoriert.
Auch die Umstellung auf "zeige alles von" bringt nix, ebenso wenn ich eine neue Filtergruppe hinzufüge, in der alle Filter - außer Inhaltstyp, veröffentlichungsstatus und Datum - stehenmit oder stehen, dann kommt wieder Kauderwelwsch raus. Dann beachtet er nicht mal mehr den xa Filter.
Mit facet Api und Search Facets hab ich nun auch mal rumprobiert. Dies bringt mich aber insgesamt zu dem selben Ergebnis, obwohl bei den Facets die Filter auf "oder" stehen. Oder mach ich da was falsch? Außerdem will der Facet Filter nach dem Datum (Date Facet) nicht funktionieren, da bringt er mir 3 Fehlermeldungen. Also brauchts dafür, wenn Facets generell mal gehen würden, auch noch ne Alternative.