Quantcast
Channel: erdfisch blog - Views
Viewing all articles
Browse latest Browse all 20

Badges mit Views generieren

$
0
0

Wer kenn sie nicht, die netten kleinen Kreise in einer Ecke eines Links, die uns direkt anzeigen, dass es neue Inhalte, neue Nachrichten oder sonstiges Interessantes nach den Klicken zu entdecken gibt.

Bislang konnte man dies zwar schon mit einigen Verrenkungen erreichen, man erstellt einen oder mehrere Views, die einem eine Zahl oder sonstiges ausspucken, man gibt diese Zahl aus und themed dann entsprechend.
Man kann auch über die Templates gehen oder gleich ein kleines Modul schreiben.

Es gibt aber zwei Module, die einem einem sehr viel Arbeit abnehmen können: Link Badges und Menu Badges. Ersteres stellt die generelle API zur Verfügung, um solche Badges an Links anzuhängen, letzteres ermöglicht es dies an jede Art von Menüpunkt anzuhängen und ebenso die Erstellung neuer Badges mittels Views.
Diese Lösung ist sehr flexibel, weil man jeglichen Inhalt, den man über einen View bekommt in einen Badge packen kann.

In unserem Beispiel haben wir einen Inhaltstyp "Termin" und wir wollen an einen Menüpunkt "Kommende Termine" einfach einen Badge anhängen, der uns die Anzahl der kommenden Termine visualisiert.
Als erstes brauchen wir dafür einen View, der uns die entsprechenden Werte liefert. Hierfür wählen wir einfach "Inhalte" vom Typ "Termin" anzeigen. Wir brauchen weder eine Page noch einen Block.

In unserem View wollen wir einfach alle kommenden Termine anzeigen. Wir haben also als Display "Menu Badge" gewählt. Wir benötigen nun ein eindeutiges Feld, damit wir auch eine valide Anzahl anzeigen können.
Am sinnvollsten ist hierfür die NID, oder "Beitrags-ID" wie es so schön heißt. Um einen Zähler zu haben, muss man dafür die "Aggregation" in der Views aktivieren:

Enable Aggregation in Views

Danach fügen wir dann das benötigte Feld hinzu und wählen als Aggregation "Count DISTINCT" aus:

Select Count DISTINCT Aggregation for field

Da wir nur kommende Termine wollen, brauchen wir natürlich noch einen Filter. Darauf gehe ich hier nicht genauer ein, das ist von Anwendungsfall zu Anwendungsfall unterschiedlich. Im Preview sehen wir nun eine einzelne Zahl - genau das was wir wollen.

Nach dem Speichern des View können wir nun einen Menüpunkt anlegen, der zum Beispiel auf eine Kalenderansicht oder ähnliches verlinkt und unseren Badge hier verwenden:

Add menuitem with badge from view

Danach haben wir das gewünschte Verhalten, einen Menüpunkt mit einem Badge.

Die Möglichkeit, diese Badges durch Views füllen zu können ermöglicht natürlich sehr viele Variationen und spart viel Arbeit.

Weitere Bilder: 

Viewing all articles
Browse latest Browse all 20

Latest Images

Trending Articles





Latest Images