Kategorien in Zikula - weit mehr als nur Themen

in  Basics , ,

Kategorien in Zikula - weit mehr als nur Themen

Der Zikula Core enthält eine zentrale Verwaltung für Kategorien, mit denen man vielfältige Lösungen umsetzen kann. Die häufigste Verwendung von Kategorien ist sicherlich eine thematische Zuordnung von Inhalten. So lassen sich beispielsweise Newsartikel unterschiedlichen Themengebieten zuordnen. Dieser Artikel ist etwa in der Kategorie “Basics”. Im Folgenden wird ein Überblick darüber gegeben, was sich darüber hinaus noch alles mit Kategorien machen lässt.

Zunächst einmal bietet das Kategoriensystem einige Funktionen, die allgemein nützlich sind.

  • Kategorien werden in einem großen Baum verwaltet. So lassen sie sich nach beliebigen Kriterien unterteilen und strukturieren.
  • Im Gegensatz zu einer fest definierten Dropdown-Liste sind Kategorien einfach durch den Seitenbetreiber erweiterbar. Es lassen sich jederzeit zusätzliche Kategorien anlegen, die dann bei allen Modulen, die die entsprechenden Kategorien verwenden, automatisch mit auftauchen und ausgewählt werden können.
  • Kategorien sind übersetzbar: Name und Beschreibung können direkt beim Bearbeiten einer Kategorie in mehreren Sprachen hinterlegt werden.
  • Eine Kategorie kann Attribute haben: das sind dynamische Eigenschaften, die sich zusätzlich zu den Stammdaten angeben lassen. So könnte man jedem Themengebiet eine Farbe zuordnen oder den Namen einer zuständigen Person oder sonst irgendwelche weiteren Informationen.

Die mächtigste Funktion jedoch, mit der sich die genannten Vorteile erst wirklich entfalten, sind “Category Registries”. Hierbei handelt es sich um Einstiegspunkte, mit denen festgelegt wird, an welcher Stelle im Kategorienbaum ein Modul Kategorien für eine bestimmte Entität nutzen möchte.

Mehrere Module können die gleichen Unterbäume verwenden oder auch verschiedene. So könnten Inhaltsseiten und Newsartikel entweder die selben Themengebiete nutzen (Politik, Wirtschaft, Sport, usw.) oder aber es können komplett unterschiedliche Kategorien für die beiden Bereiche eingesetzt werden. Jedes Modul kann dabei definieren, ob lediglich eine oder mehrere der Kategorien aus dem Teilbaum erlaubt ist.

Falls mehrere Module die gleichen Kategorien benutzen, ist es möglich, relevante Inhalte zu verknüpfen. Man könnte unter einem Artikel passende Downloads oder Videos einblenden. Oder man könnte in einem Webshop zu der aktuellen Produktgruppe vorhandene Informationen aus einer Knowledge Base darstellen.

Der Seitenbetreiber kann die Einstiegspunkte der Registries frei einstellen. Und vor allem lassen sich auch zusätzliche Registries definieren. Dabei kann eine Entität auch mehrere Registries gleichzeitig nutzen und so mehrere Kategorienfelder bekommen. Falls also die Auswahl eines Themas für einen Newsartikel nicht ausreicht, sondern zusätzlich noch die Auswahl einer Abteilung möglich sein soll, so kann dies über einen zweiten Einstiegspunkt realisiert werden, der auf einen Teilbaum verweist, unter dem sich Kategorien für die unterschiedlichen Abteilungen befinden.

Das bedeutet, dass man beliebig viele Dropdown-Elemente für eine bestimmte Entität haben kann, die ihre Inhalte aus den Kategorien beziehen. Und alle diese Inhalte sind dynamisch erweiterbar, übersetzbar, können mit Attributen versehen und auch in anderen Modulen wiederverwendet werden.

Schließlich ist es auch möglich, Inhalte basierend auf Zugriffsrechten auf die Kategorien zu filtern, sofern dies durch das entsprechende Modul unterstützt wird. Hierbei gibt es zwei Varianten: entweder es werden die Inhalte zugelassen, bei denen Zugriffsrechte auf alle Kategorien aller Registries besteht, oder auch die Inhalte, für die mindestens eine Berechtigung gegeben ist.

Kategorien in Zikula - weit mehr als nur Themen
Kategorien in Zikula - weit mehr als nur Themen

Weitere Beiträge in Kategorie Basics

Prägnante und strukturierte Stylesheets mit SCSS
- Auch wenn es für einige Leser ein alter Hut ist, so gibt es dennoch sicherlich andere, die noch keine Erfahrungen mit Less oder Sass haben. Daher sei einmal das sehr leicht zu erlernende SCSS (Sassy …
Probleme mit Error Tracking proaktiv erkennen
- Sobald ein Programm oder eine Internetseite erst einmal produktiv verwendet wird, stellt sich heraus, ob alle Eventualitäten bedacht sind oder ob doch etwas nicht berücksichtigt worden ist. Spätestens …
Batch-Verarbeitung von Modulen mit der Bash
- In diesem Beitrag wird gezeigt, wie man eine ganze Reihe von Modulen automatisch mit Hilfe eines Bash-Skriptes neu generieren kann. Auch die Übersetzungen der Module können automatisch neu generiert …
Standalone Generator im ersten Praxistest
- Gastbeitrag von Ralf Köster Habt ihr schon mitbekommen, dass es seit 0.7.3 auch einen standalone Generator gibt? Sicherlich habt ihr dass, aber ihr fragt euch, was ihr damit machen könnt? Ich versuche …
Wget ist des Admins Freund
- Gastbeitrag von Ralf Köster Habt ihr einen Webspace, der einen SSH-Zugang bietet, aber ihr wisst nicht, wie man den gewinnbringend einsetzt? Ich möchte euch in diesem Beitrag kurz meine Erfahrungen …