Mit Hilfe einer anderen Frage: Neueste Knoten für jeden Taxonomiebegriff in Ansichten anzeigen Ich konnte die von mir benötigte Ansicht erstellen, mit der Ausnahme, dass alle Beiträge für jeden Begriff angezeigt werden (gruppiert nach Begriffen). Wie beschränke ich die Anzeige der letzten 3 Einträge in den einzelnen Begriffen?
z.B
Term 1
- Post 1
- Post 2
- Post 3
Term 2
- Post 1
- Post 2
- Post 3
Term 3
- Beitrag 1
- Beitrag 2
- Beitrag 3
quelle
Nach weiteren Untersuchungen scheint Peek Summary genau das zu sein, was Sie wollen. Die Screenshots in der Dokumentation beziehen sich auf Drupal 6 und unterscheiden sich geringfügig von Drupal 7. Daher habe ich einige aktualisierte Screenshots angehängt.
Sie müssen den Pager für jede Gruppe, die Sie einschränken möchten, bearbeiten, was unglücklich ist.Wenn Sie den Pager für eine Gruppe bearbeiten, werden die Einstellungen für alle Gruppen geändert. Wenn Sie eine andere Anzahl von Knoten pro Gruppe als die Gesamtzahl der Gruppen anzeigen möchten, überschreiben Sie diese in den Einstellungen unter "Kontextfilter" (auf dem ersten Screenshot in Lila).Dies hat den Nachteil, dass im Wesentlichen [n] Ansichten für [n] Gruppierungen erstellt werden. Dies kann je nach Anzahl der Gruppierungen zu Performanceproblemen führen, beschränkt die Abfrage jedoch nur auf die anzuzeigende Anzahl. Dies kann je nach Anwendungsfall zu einer Leistungsverbesserung führen. Cache wie immer verantwortungsbewusst.
quelle
Eine Möglichkeit, dies im Code einzuschränken, besteht darin, einem benutzerdefinierten Modul Folgendes hinzuzufügen:
Dies ist eine Ansicht der Taxonomiebegriffe, die über eine Beziehung mit Knoten verbunden sind. Wenn Sie nur eine Ansicht der Knoten haben, kann Ihr Kilometerstand variieren.
Dadurch wird zwar die Anzeige von mehr als 3 pro Begriff verhindert, die Abfrage kann jedoch nicht alle Ergebnisse für jeden Begriff zurückgeben, sodass die SQL-Leistung überhaupt nicht verbessert wird. Wenn Sie für jeden Begriff eine sehr große Anzahl von Ergebnissen haben, können Sie mithilfe von CTools Page Manager separate Anzeigefenster erstellen und alle Ergebnisse in einer Region zusammenfassen, damit keine großen Abfragen ausgeführt werden.
Wie immer werden Sie dieses Zeug in der Produktion zwischenspeichern wollen.
quelle
Hook_views_pre_build()
oderhook_build_pre_execute()
könnte für so etwas verwendet werden, das die Leistung beeinträchtigt , aber ich kenne mich damit nicht so gut aus. Oder Sie möchten vielleicht meine Antwort auf diese Frage zuvor .