Wie gruppiere ich Elemente in einer Ansicht?

33

Ich habe 8 Artikel: Artikel 1 (Gaming), Artikel 2 (Local News), Artikel 3 (World News), Artikel 4 (World News), Artikel 5 (Gaming), Artikel 6, Artikel 7, Artikel 8.

In einer Ansicht möchte ich die Artikel gruppieren nach: "News", "Gaming" und "Other". Kombinieren Sie die Welt und die lokalen Nachrichten unter einer Kategorie und verschieben Sie alles, was keine Kategorie hat, in "Andere". Ich wollte nicht nur für diese Ansicht ein neues Vokabular erstellen. Ich habe versucht, dies mit der Methode "Group by Field" zu erreichen, aber ich kann nicht herausfinden, wie ich dies mit dieser Methode erreichen kann.

mstef
quelle

Antworten:

15

In Ihrem Inhaltstyp können Sie ein "Listen" -Feld mit dem Namen "Kategorie" mit den Kategorien "Nachrichten", "Spiele" und "Andere" erstellen. In diesem Feld können Sie dann den Inhalt kategorisieren, der in Ihrer Ansicht angezeigt werden soll.

Wählen Sie in Ihrer Ansicht unter "Format" die Option "Einstellungen". Es sollte eine Option zur Auswahl eines Gruppierungsfelds geben. Wählen Sie das Feld "Inhalt: Kategorie". Ihre Ansicht sollte nun nach Nachrichten, Spielen und Sonstiges gruppiert angezeigt werden.

Hatten Sie das im Sinn?

UPDATE Das obige war nicht ganz das, wonach Sie gesucht haben. Kein Problem.

Sie sagen, Sie haben Artikel wie Artikel 1 (Gaming), Artikel 2 (Local News), Artikel 3 (World News), Artikel 4 (World News) usw. Ist es richtig, dass das Wort in Klammern ein Taxonomiebegriff ist? Wenn nicht, wird das Folgende nicht relevant sein, aber ich gehe davon aus, dass es das ist.

Wenn dies der Fall ist und Sie diese Begriffe in drei Kategorien unterteilen möchten, können Sie die Abfrage "Ansichten" durchaus ändern oder Ihre eigene erstellen.

Alternativ (was wahrscheinlich einfacher ist) können Sie Ihr vorhandenes Vokabular in eine hierarchische Taxonomie mit Nachrichten als Oberkategorie und Lokalen Nachrichten und Weltnachrichten als Unterkategorien ändern.

Nun sieht dein Wortschatz so aus:

Nachrichten

  • Lokalnachrichten
  • Weltnachrichten

Gaming

Andere

Wenn Ihr Inhalt bereits mit den vorhandenen Kategorien markiert war, sollten Sie nichts ändern müssen.

Sie können dann eine Ansicht erstellen, in der die gewünschten Felder angezeigt werden. Fügen Sie einen Filter "Term Name" hinzu und geben Sie "News" ein. Fügen Sie dann eine Anhangsanzeige hinzu und hängen Sie sie an Ihre aktuelle Ansicht an, überschreiben Sie den Filter und setzen Sie ihn auf "Gaming". Fügen Sie abschließend eine zweite Anlage hinzu, überschreiben Sie den Filter und ändern Sie ihn in "Andere". Dies sollte Ihnen das gewünschte Ergebnis liefern.

g_thom
quelle
Ich bin damit einverstanden, dass Ihre Methode funktionieren würde. Aber für meine Bedürfnisse wird es schlampig. Dies ist eine einmalige Ansicht, etwas, das ich tun muss, aber das Erstellen eines neuen Listenfelds, um die Artikel nur für die Verwendung für eine Ansicht zu kennzeichnen, scheint nicht sehr sauber zu sein. Vielen Dank für die Antwort, immer noch hilfreich. Aber wenn jemand eine Idee hat, wie man den mysql-Aufruf hijackt oder dies im Code ausführt, um dies zu erreichen, ohne ein neues willkürliches Feld zu erstellen, wäre es hilfreich! Vielen Dank!
mstef
Vielen Dank! Ich hatte nicht daran gedacht, eine hierarchische Taxonomie zu verwenden, das ist definitiv viel sauberer, danke. Ich mache mir nur Sorgen, dass wir solr verwenden, um die Site zu indizieren. Ich möchte nicht, dass Nachrichten, Spiele und anderes in diesem Index angezeigt werden, sodass möglicherweise ein neues Problem zum Aussortieren entsteht. Wenn jemand Referenzen hat, um dies im Code zu tun, wird es dennoch geschätzt. Aber vielen Dank g_thom!
mstef
@mstef, ich bin froh, dass es nützlich war. Ich kenne mich mit solr nicht aus und habe es noch nie implementiert. Theming ist eher meine Tasche, aber viel Glück bei der Suche.
g_thom
3

Sie können auch Views Distinct verwenden . Dieses Modul ermöglicht das Hinzufügen von Beziehungen oder anderen Verknüpfungen in Ansichten, wodurch häufig "doppelte" Ergebnisse erzielt werden. Beispielsweise kann ein Knoten mit einem Feld mit mehreren Werten in der Ansicht einmal pro Wert im Feld mit mehreren Werten angezeigt werden.

heilop
quelle
2

Ich bin auf diesen Thread gestoßen, als ich nach einer Group-by-Lösung gesucht habe, entweder mit Views oder mit Display Suite (D7). Irgendwie kann ich die Gruppe nicht über das im Abschnitt Format erwähnte Feature g_thom erhalten. Sollte es dort in D7 sein? Gibt es ein Views-abhängiges Submodul, das ich verpasse? In der Display Suite gibt es auch eine Funktion zum Gruppieren nach, aber die einzige Option, die dort angezeigt wird, ist eines meiner benutzerdefinierten Felder, die ich erstellt habe (ich weiß nicht, warum dieses bestimmte, nicht ein anderes). In einem solchen Fall nicht verwendbar.

Mein Ziel ist es, dass Ansichten einen Block von Links (Links zu benutzerdefinierten Typknoten) bilden, die nach einem Taxonomiebegriff gruppiert sind (der Begriff sollte ausgegeben, aber nicht mit irgendetwas verknüpft sein).

PS. respekt an g_thom für seine ausführliche hilfe!

Artur
quelle
Es tut mir leid, ich hätte es als Kommentar setzen sollen, nicht als Antwort. Mein Fehler.
Artur
Hast du das jemals herausgefunden? Es scheint, als gäbe es noch keine Möglichkeit, dies zu tun. (D7)
user379468
2
Ich gehe davon aus, dass Sie dies bereits herausgefunden haben, aber Group By wird nicht nur unter der Überschrift Format angezeigt. Sie müssen auf den Link Einstellungen neben dem Element Format unter der Überschrift Format klicken.
EmmyS