Catalog

Aus Contao Community Documentation

Das Catalog-Modul ermöglicht eine vielfältige Kategorisierung beliebiger Daten in hierarchischen und flachen Strukturen. Beispiele umfassen Literaturverzeichnisse oder Immobilienlisten.


MsgError.png Unvollständiger Artikel: dieser Artikel ist noch nicht sauber bearbeitet.

Bitte erweitere ihn und entferne erst anschliessend diesen Hinweis.


betrifft
TYPOlight Version ab 2.8
Extensions TYPOlight Core

Inhaltsverzeichnis

Forum

Fragen rund um den Catalog werden im Forum hier behandelt: Forum - Catalog Bereich

Installation

Catalog kann ganz normal über die Erweiterungsverwaltung des TYPOlight-Backend installiert werden. Eine manuelle Installation ist auch möglich, dazu muss man sich die benötigen Dateien des catalog aus dem Extension Repository herunterladen (abhängige Erweiterungen nicht vergessen!).

Den jeweils neusten Build kann man sich aus dem SVN-Repository herunterladen. Einzig das Modul backend_filterwiz muss dabei separat installiert werden, alle weiteren Module sind im Repository vorhanden. Man sollte darauf achten, welche Ordner wohin in der Installation kommen!

Migration von Version 1 auf Version 2

In Version 2 wurde Einiges geändert. So ist es u. a. nicht mehr nötig catalog und catalog_ext zu installieren, da diese Erweiterungen zusammengelegt wurden. Damit es zu keinem Datenverlust kommt, muss bei einem manuellen Update wie folgt vorgegangen werden:

  • Zuerst die alten Modulordner entfernen,
  • danach die neuen Modulordner hochladen.
  • Erst zum Schluss das Datenbankupdate ausführen!

Beim Update über das TYPOlight-ExtensionRepository sollte man die Reihenfolge beachten:

  • Catalog 2 installieren und Datenbank-Update ausführen.
  • Catalog_ext deinstallieren und erneut Datenbank-Update ausführen.
  • Zur Sicherheit alle catalog-Module etc. noch mal öffnen und speichern, damit auch alles glatt läuft.
  • Neue Einstellungen vornehmen.

Allgemeines

Testumgebung und Vortrag vom Usertreffen 2010:

Backend

Mit dem Catalog bekommt man im Backend unter dem Menüpunkt 'Inhalte' 2 neue Menüeinträge:

  • Katalog
  • Taxonomie

Module - Übersicht

  • Catalog List (Zur Ausgabe einer Liste von Items)
  • Catalog Reader (Um die Details von einem einzelnen Item anzuzeigen)
  • Catalog Filter (Mit Hilfe von einem Filter können Besucher die Liste eines Catalogs filtern und die Anzeige eingrenzen)
  • Catalog Navigation (Mit dieser Navigation kann man eine Navigation erstellen. Die Navigation besteht zum Beispiel aus Kategorien)
  • Catalog Notify (Hiermit wird ein Formular erstellt, welches zur schnellen Kontaktaufnahme bei einem einzelnen Item dargestellt wird)
  • Catalog Featured (Hiermit kann man eine besondere Liste erstellen, die besondere Items darstellt. Die Liste wird per Zufall zusammengestellt.)
  • Catalog Related (Hiermit erstellt man eine Liste von ähnlichen Items - Einzusezten auf einer Seite wo auch der Catalog Reader enthalten ist. Zufallsausgabe)
  • Catalog Reference (Hiermit erstellt man eine Liste von Items mit einer gleichen Eigenschaft.)
  • Catalog Edit (Um ein Item im Frontend editieren zu können, wird anstelle von Catalog Reader dieses Modul verwendet)

Für die einfachste Variante eines Cataloges braucht man nur eine Catalog List, wo dann alle Items in einer Liste/Tabelle ausgegeben werden.

Der nächste Schritt wäre eine Liste von Items mit einer Detail Ansicht. Dafür braucht man dann nur noch Catalog List und Catalog Reader. Die Liste verweist dabei auf den Reader wo dann ein einzelnes Item dargestellt wird.

Alle anderen Module sind für fortgeschrittene Bedürfnisse da und müssen an sich nicht für die Grundfunktionalität benutzt werden.

Erstellen von einem Katalog (Backend)

Auf Katalog klicken > Neuer Katalog:

  • Name des Katalogs angeben
  • Einen Tabellennamen angeben (Der catalog legt diese Tabelle selbstständig an. Es hat sich bewährt eine Tabelle anzulegen ohne tl_ als präfix, da TYPOlight diese Tabellen sonst zum Entfernen vorschlägt. Ich empfehle den präfix cat_ damit man die Tabellen schnell wiederfindet.)
  • Alias field (kann erst später ausgefüllt werden) -> anstelle der ID wird der Alias genutzt bei den Links
  • publishField (kann erst später ausgefüllt werden) -> Hier kann ein Checkboxfeld ausgewählt werden, was die Funktion eines 'Auges' = on-/offline hat (z.B. Ein Feld mit dem Namen online)
  • Jump to page -> Hier muss die Detail Seite mit dem Modul Catalog Reader angegeben werden.
Achtung.png Achtung: Die richtige Zuweisung der Readerseite erfolgt in den Kataloglisten Modulen, diese Zuweisung hier ist jedoch nötig damit der Katalog die Items in die xml-Sitemap eintragen kann. Wird diese Zuweisung hier nicht vorgenommen, so "weiss" der Katalog nicht, auf welchem Reader die Items dargestellt werden sollen und trägt sie daher nicht in der sitemap.xml ein.
  • Ein Bild hinzufügen -> Hier kann ein Bild für den Katalog hinzugefügt werden, um im Backend den Katalog schnell von anderen unterscheiden zu können
  • Zeichenkette des Titels formatieren (wird erst später gebraucht) -> Um im Backend die Übersicht von vielen Items besser gewährleisten zu können, kann man hier die Anzeigen der einzelnen Items konfigurieren
  • Allow comments -> Kommentare bei den einzelnen Items erlauben und konfigurieren (Funktion ist wie bei News o.ä. daher wird hier nicht genauer darauf eingegangen)
  • Searchable -> Wenn man die Items auch in der TYPOlight Suche indexieren lassen möchte. Nach Aktivierung ist es möglich, Conditions (Ausnahmen) einzugeben und das Title Feld anzugeben von einem Item (weiteres zu Conditions und Title finden Sie weiter unten)
    • Condition -> Um Felder direkt aus der Suche herauszunehmen (damit unveröffentlichte Items nicht in die Suche aufgenommen werden o.ä.)
    • Page title field -> Den Namen des Items auswählen, damit dieser für die Ergebnisanzeige der Suche genutzt wird (und auch für den Title)
  • Enable CSV import -> Damit ist es möglich CSV-Dateien zu importieren. Natürlich sollte man das nicht einfach so machen und nur von Leuten die wissen was sie tun. Daher kann hier festgelegt werden, das nur Administratoren das machen dürften und ob Items überschrieben werden oder nicht
  • Generate feed -> Hier kann festgelegt werden, dass ein RSS-Feed generiert wird aus den Items (Funktion ist wie bei News o.ä., daher wird hier nicht genauer darauf eingegangen)

Erstellen von Attributen/Feldern von Items in einem Katalog

Nun ist die Grundkonfiguration von einem Katalog erst einmal abgeschlossen. Aber es ist noch nicht festgelegt aus welchen Feldern ein Item denn nun besteht, also welche Attribute ein Item besitzen kann. Dazu kommen wir jetzt:

Katalog > Felder für Katalog erstellen > Neues Feld:

Die Standardwerte von Feldern

Die speziellen Felder werden erst sichtbar, wenn man einen Feldtyp ausgewählt hat. Diese Werte werden weiter unten erläutert.

  • Field configuration
    • Bezeichnung (Eine eindeutige Bezeichnung für das Feld. Diese sollte möglichst selbsterklärend sein.)
    • Beschreibung (Um im Backend und beim Frontend-Editing eine Beschreibung anzuzeigen für die Ersteller eines Items)
    • Spaltenname (der Spaltenname in der Tabelle. Dieser muss eindeutig sein und und so vergeben werden, das er logisch ist, da man beim Template erstellen diese Namen benutzt um an die Inhalte zu kommen)
    • Typ (weiter unten)
  • Display Settings (Diese Einstellungen sind für die Ansicht im Backend zuständig)
    • Kontroll-Checkbox (Wenn eine Kontroll-Checkbox angegeben wird, wird dieses Feld erst angezeigt, wenn das Kontroll-Checkbox Feld angekreuzt ist)
    • Vorher Umbruch einfügen (Um dieses Eingabefeld in einer neuen Zeile zu beginnen)
      • Legend Titel (hier kann dann ein Name für den Legend Titel angegeben werden -> die Grün geschriebenen Titel im Backend)
    • Enable half width (um 2 Felder nebeneinander anzuzeigen - durch TYPOlight 2.7 möglich)
  • Backend filter settings (hier kann festgelegt werden, ob das Feld im Backend zur Filterung angezeigt wird)
    • Sortieren (Muss zum Filtern etc. angegeben werden. Sonst weiß TL nicht wie der Filter erstellt werden soll. Für Datum ist zwangsweise die Angabe nötig ob nach Jahr, Monat oder Tag sortiert werden soll!)
    • Filter
    • Suche
  • Advanced settings
    • Pflichtfeld -> Dieses Feld muss ausgefüllt werden
  • Frontend editing
    • Frontend editing groups -> Welche Gruppen dürfen dieses Feld im Frontend bearbeiten (Mehrfachangabe ist möglich). Wenn hier nichts angegeben wird, dürfen alle Gruppen dieses Feld im Frontend editieren

Typ - Feldtypen von Feldern

Hier werden die Angaben für die jeweiligen Typen aufgelistet und erläutert.

Text

  • Format settings
    • Prefix und Suffix Strings
    • Format
      • Formattyp
        • Zeichenkette
        • Nummer
        • Datum
      • Zeichenfolge für Formatierung

Alias

Es ist immer nur ein Alias Feld erlaubt in einem Katalog. Die Funktion ist die selbe wie bei einem Alias für eine Seite.

  • Alias-Titel-Feld (Aus diesem Feld wird automatisch ein Alias generiert, wenn keine Angabe beim Alias gemacht wurde. Dieses Feld muss nicht Eindeutig sein. Der Alias wird aber eindeutig generiert und ist damit genau so benutzbar wie eine eindeutige ID)

Langtext

  • Advanced settings
    • Allow html (wenn erlaubt werden in dem Feld HTML-Tags erlaubt - Liste der erlaubten HTML-Tags ist in den Eigenschaften von TYPOlight editierbar)
    • Rich Text (wenn angekreuzt wird der TinyMCE angezeigt)

Nummer

  • Advanced settings
    • Minimum (legt den Minimalwert fest, den ein Benutzer eingeben kann)
    • Maximum (legt den Maximalwert fest, den ein Benutzer eingeben kann)
  • Format settings
    • Prefix und Suffix Strings
    • Format
      • Formattyp
        • Zeichenkette
        • Nummer
        • Datum
      • Zeichenfolge für Formatierung

Dezimal

  • Advanced settings
    • Minimum (legt den Minimalwert fest, den ein Benutzer eingeben kann)
    • Maximum (legt den Maximalwert fest, den ein Benutzer eingeben kann)
  • Format settings
    • Prefix und Suffix Strings
    • Format
      • Formattyp
        • Zeichenkette
        • Nummer
        • Datum
      • Zeichenfolge für Formatierung

Datum

  • Advanced settings
    • Zeiteingabe (Falls ausgewählt, darf der Benutzer Datum und Zeit eingeben
    • Format
      • Formattyp
        • Zeichenkette
        • Nummer
        • Datum
      • Zeichenfolge für Formatierung

Checkbox

Zum Erstellen einer einfachen Checkbox. Hier kann nicht viel eingestellt werden, da ja nur 1 oder 0 als Zustand gilt.

Auswahl

Hiermit kann man ein Auswahl-Feld (Select) erstellen, das als Grundlage eine andere Tabelle nutzt. Das kann Taxonomie sein oder auch ein anderer Katalog.

  • Advanced settings
    • Include blank option (Um bei der Drop-Down Liste auch die Möglichkeit zu haben, eine leere Auswahl anzubieten)
  • Options settings
    • Tabelle für Optionen (Hier muss die Tabelle ausgewählt werden, in der die Optionen stehen - Taxonomie wäre -> tl_taxonomie)
    • Spalte für Tabellenwerte (Eine Spalte für die Speicherung einer Option auswählen. Hier sind nur die Spalten vorgegeben, die sich auch in der Tabelle befinden)
    • Anzeige der Sortierspalte (Um die Sortierung der Optionen vorzunehmen kann hier eine andere Spalte ausgewählt werden.)
    • Filter items (Hier kann man wieder eigene Filter definieren, um die Auswahl einzugrenzen)
    • Auswahl der Einträge
      • Optionen (Hier kann man noch mal genau auswählen, welche Optionen man anbieten möchte)
      • Modus für Unterauswahl
        • Show selected items collapsed (Nur die ausgewählten Items anzeigen)
        • Show children of selected items collapsed (Nur die Kinder der selektierten Items anzeigen)
        • Tree with all items selectable (Baumansicht mit allen Items als Option auswählbar)
        • Tree with only children selectable (Baumansicht nur mit den Kind-Items auswählbar)
      • Parent Filter (Hier kann man das Eltern Element angeben, welches die Optionen enthält. Praktisch wenn man 2 Bäume bei der Taxonomie hat und nur einen zur Auswahl geben will)

Tags

Auch Tags sind ähnlich der Auswahl dazu da, eine andere Tabelle als Wert anzugeben.

Der Unterschied besteht darin, das Tags eine Checkboxliste ergeben, mit der auch eine Mehrfachauswahl möglich ist.

  • Advanced settings
    • Include blank option (Um bei der Drop-Down Liste auch die Möglichkeit zu haben, eine leere Auswahl anzubieten)
  • Options settings
    • Tabelle für Optionen (Hier muss die Tabelle ausgewählt werden, in der die Optionen stehen - Taxonomie wäre -> tl_taxonomie)
    • Spalte für Tabellenwerte (Eine Spalte für die Speicherung einer Option auswählen. Hier sind nur die Spalten vorgegeben, die sich auch in der Tabelle befinden)
    • Anzeige der Sortierspalte (Um die Sortierung der Optionen vorzunehmen kann hier eine andere Spalte ausgewählt werden.)
    • Filter items (Hier kann man wieder eigene Filter definieren, um die Auswahl einzugrenzen)
    • Auswahl der Einträge
      • Optionen (Hier kann man noch mal genau auswählen, welche Optionen man anbieten möchte)
      • Modus für Unterauswahl
        • Show selected items collapsed (Nur die ausgewählten Items anzeigen)
        • Show children of selected items collapsed (Nur die Kinder der selectierten Items anzeigen)
        • Tree with all items selectable (Baumansicht mit allen Items als Option auswählbar)
        • Tree with only children selectable (Baumansicht nur mit den Kind-Items auswählbar)
      • Parent Filter (Hier kann man das Eltern Element angeben, welches die Optionen enthält. Praktisch wenn man 2 Bäume bei der Taxonomie hat und nur einen zur Auswahl geben will)

URL

Der Feldtyp URL hat keine besonderen Parameter. Er dient lediglich der Ein- und Ausgabe einer URL.

Datei

Dieser Feldtyp ist für die Ein- und Ausgabe von Dateien vorhanden. Man kann damit Downloads oder Galerien erstellen.

  • Advanced Settings
    • Mehrere Dateien (Wenn ausgewählt können mehrere Dateien ausgewählt werden)
    • Ändern des Dateibaumes
      • Setzen des Ordners für das Wurzelverzeichnis (Hier kann ein spezieller Dateibaum gewählt werden, um unnötige Wege zu verkürzen)
      • Gültige Dateitypen (In einer Komma-separierten Liste kann man hier die Dateitypen auf eine gültige Liste einschränken)
      • Nur Dateien erlauben (Ordner sind dann nicht anwählbar)
  • Format settings
    • Bild anzeigen (Um ein Bild / eine Bildergalerie anzeigen zu lassen)
      • Bildbreite und -höhe sind auswählbar
    • Link erzeugen
      • Um einen Link zum Herunterladen der Datei zu erzeugen oder bei einem Bild eine Vollansicht (Lightbox) anzubieten

Calculate

Um Berechnungen auf SQL Ebene vorzunehmen

  • Calculation formula (Eingabe von einer SQL calculation für das Feld, wie '(price*1.15)*qty'
  • Format settings
    • Prefix und Suffix Strings
    • Format
      • Formattyp
        • Zeichenkette
        • Nummer
        • Datum
      • Zeichenfolge für Formatierung

Bewertungen

Die Besucher der Internetseite können bei Angabe eines solchen Feldtypes eine Bewertung vornehmen

  • ajaxratingfield (Angabe von maximalen Punkten die ein Besucher vergeben kann)

Zugriffszähler

Ohne Optionen. Hiermint wird einfach gezählt und ausgegeben wie oft auf dieses Item zugegriffen wurde. Es ist auf ein Klick per IP pro Tag festgelegt.

Frontend Benutzer

Ohne Optionen. Um die Items nur dem jeweiligen Frontendbenutzer der sie angelegt hat zuzuweisen muss ein Feldtyp dieser Art angelegt sein.

Meta Keywords

Ohne Optionen. Um eine Liste von Keywords für diese Item eingeben zu können.

Mehrspaltiger Text

Hiermit kann ein Feld ähnlich des Tabellenelements in TYPOlight angelegt werden. Man definiert einmal die Spaltenanzahl und Überschriften. Beim Anlegen des Items hat man dann die Möglichkeit beliebig viele Zeilen anzugeben.

  • Spaltenüberschriften (Angabe der Anzahl, der Reihenfolge und der Titel der Spaltenüberschriften)

Für das Frontend Editing (wenn man dieses Feld dort editieren möchte) braucht man die Erweiterung xFrontend MultiTextWizard. Ansonsten ist dieses Feld nicht editierbar.

Produktvariante (Besonderheit vom chshop -> wird dort erläutert)

Merkliste und Varianten

Mit diesem Feldtyp ist es möglich Items für eine Merkliste vorzubereiten.

  • Notelistvariants sind die Varianten, die ein Item besitzen können. Die Liste der Varianten besteht aus Select- und Tagfields des Katalogs. Dadurch ist es möglich Varianten von der Taxonomie oder von anderen Katalogen zu erstellen, indem man in diesem Katalog Auswahlen dafür anlegt.

Sobald man Felder definiert hat

ist in der Übersicht bei den Feldern zu sehen ob ein Feld:

  • zur Suche markiert ist
  • Sortierbar ist
  • Gruppiert wurde (um die Reihenfolge festzulegen)
  • ein Pflichtfeld ist
  • ob es eine Kontrol Checkbox ist (nur wenn angewählt wird es sichtbar)
  • Ob es ein Dateityp ist
  • Ob es sich um ein Bild handelt
  • in der halben Breite im Backend angezeigt wird
  • Ob darüber ein Filter angewendet wird

Frontend Module und ihre Atribute

Bei den verschiedenen Modulen muss zunächst eine Auswahl getroffen werden, für welchen Katalog das Modul gemacht wird. Dabei kann immer nur ein Katalog gewählt werden.

Allgemeine Einstellungen (die alle Module haben):

  • Titel
  • Überschrift
  • Modultyp (mit den unten stehenden Modultypen)
  • Zugriffsschutz (Nur bestimmten Gruppen das Modul anzeigen)
  • Experten Einstellungen
    • Nur Gästen anzeigen
    • CSS-ID/Klasse
    • Abstand davor und dahinter


Catalog List

Zur Ausgabe einer Liste von Items wird das Modul ModuleCatalogList verwendet.

Catalog Reader

Um die Details von einem einzelnen Item anzuzeigen

  • Als Wichtigstes muss eine Weiterleitungsseite eingestellt werden. Auf dieser Seite muss der Catalog Reader vorhanden sein.
  • catalog layout (Auswahl des Templates für den Reader)
    • catalog_full (Standardtemplate um Alles auszugeben)
    • catalog_full_rev (Template um alle Felder auszugeben - Entwickler Version)
  • Visible Fields - Sichbare Felder. Diese Felder sind dann im Template verfügbar. Man kann auch die Reihenfolge der Ausgabe bestimmen.

Catalog Filter

Mit Hilfe von einem Filter können Besucher die Liste eines Catalogs filtern und die Anzeige eingrenzen. Die Filter können hier genau eingestellt werden. Sogar ein eigenes Suchfeld nur für den einen Katalog kann hier erstellt werden.

  • Catalog -> für welchen Katalog soll dieser Filter benutzt werden (es kann nur ein Katalog angegeben werden)
  • Weiterleitungsseite (auf welche Seite soll bei Klick weitergeleitet werden. Üblicherweise ist das eine Seite mit dem Modul 'cataloglist', da hier dann nur noch die Items angezeigt werden, die zu der gefilterten Ausgabe passen)
  • Filter layout (default -> filter_default | zum Entwickeln ist das filter_widget Template gedacht)
  • Enables Filter By section (Einen Filter erstellen)
    • Filter Headline (Überschrift für diese(n) Filter)
    • Filter Fields (Hier kann man das Feld und die Art des Filters auswählen)
      • Die Reihenfolge bestimmt man mit den grünen Pfeilen neben der Feldbezeichnung
      • Tree View (Ankreuzen wenn es eine baumartige Struktur sein soll, bzw. bei diesem Feld eine baumartige Struktur eingegeben wurde. Die Kindelemente reagieren dabei auf die Auswahl der Elternelemente)
      • None (default Wert -> es wird von diesem Feld kein Filter erstellt)
      • Links List (eine einfache Link Liste wird von dem Feld erstellt)
      • Radio Button (Eine Auswahl mittels Radio Button wird erstellt, so ist die Auswahl nur von einem Wert möglich)
      • Select drop-down (Eine Auswahl mittels einer Select-Box wird erstellt. Nur ein Wert kann ausgewählt werden.)
    • Reveal tree view sequentially (Die Filter werden erst nach und nach eingeblendet. Die Reihenfolge bestimmt dabei die Einblendung. So wird der 2. Filter erst eingeblendet, wenn im ersten etwas ausgewählt wurde. Eine Möglichkeit wäre hier die Auswahl von Städten, die erst erscheint, wenn ein Bundesland ausgewählt wurde)
    • Tags multiple select allowed (Wenn dieses Feld ausgewählt wurde, wird aus dem Radio Button eine Checkbox und aus der Select drop-down Liste eine Liste mit der Möglichkeit meherere auszuwählen.)
  • Enables Range section (Hier können Felder ausgewählt werden, wo ein Minimum und Maximum eingegeben werden kann um darüber zu Filtern)
    • Range Headline (Überschrift angeben)
    • Range Fields (Auswahl der Felder für die ein Bereichsauswahl erstellt werden soll. Die Liste ist auch wieder sortierbar)
  • Enables Date section (Hier können Felder ausgewählt werden, welche nach Datum zusammengefasst werden können)
    • Dates Headline (Überschrift angeben)
    • Date Filds (Hier sind nur Datumsfelder zur Auswahl angeboten. Man kann bestimmen, welches benutzt werden soll)
    • Date Ranges (Hier kann angegeben werden, welche Auswahl der Besucher hat, um die Daten zu filtern):
      • Last year
      • Last 6 months
      • Last month
      • Last week
      • Yesterday
      • Today
      • Tomorrow
      • Next week
      • Next month
      • Next 6 months
      • Next year
  • Enables Sort section (Hier wird eingestellt, welche Felder vom Besucher überhaupt sortierbar sind und wie das geschehen soll)
    • Sort Headline (Überschrift angeben)
    • Sort Fields (Hier muss angegeben werden, welche Felder sortierbar sein sollen. Die Reihenfolge kann wieder über die grünen Pfeile bestimmt werden)
    • Sort form control type Hier wird festgelegt, wie die Besucher bestimmen können wie sortiert wird:
      • select (Über eine Select Auswahl)
      • list (Mit hilfe einer Linkliste)
      • radio (Über einen Radio Button)
  • Enables Search Box (Eine Suchbox einschalten. Nur Text, langtext Felder werden unterstützt)
    • Search Headline (Überschrift eingeben)
    • Search Fields (Hier können die Felder ausgewählt werden, in denen gesucht werden soll)
  • Use filter condition from lister on same page (Wenn auf derselben Seite auch eine List-Modul von dem Katalog eingesetzt wird und diese Liste mit conditions eingeschränkt ist, werden bei Auswahl dieses Feldes die Filter mit Berücksichtigung der conditions erstellt.)

Catalog Navigation

Mit diesem Modul kann man eine Navigation durch einen Katalogs erstellen. Die Navigation besteht zum Beispiel aus Kategorien.

  • Catalog -> für welchen Katalog soll diese Navigation genommen werden (es kann nur ein Katalog ausgewählt werden)
  • Weiterleitungsseite (auf welche Seite soll bei Klick weitergeleitet werden. Üblicherweise ist das eine Seite mit dem Modul Katalog liste, da hier dann nur noch die Items angezeigt werden, die zu der Kategorie passen)
  • Navigations field -> Hier muss das Feld angegeben werden, aus dem die Navigation zusammengesetzt wird. Also ein Select- oder Tagfield aus dem gewählten Katalog.
  • Alle anderen Einstellungen der Navigation funktionieren genau so wie beim normalen Navigationsmodul

Catalog Notify

Hiermit wird ein Formular erstellt, welches zur schnellen Kontaktaufnahme bei einem einzelnen Item dargestellt wird. Z.B.: Möchten Sie nähere Informationen zu diesem Produkt? Dann schicken Sie uns bitte Ihre Kontaktdaten, damit wir uns bei Ihnen melden können.

  • Catalog (Hier muss wieder der Katalog angegeben werden, in dem das Item dargestellt werden soll)
  • Form Fields (Hier können Sie Felder angeben, die der Benutzer ausfüllen soll, damit Sie Kontakt zu ihm aufnehmen können)
  • Sicherheitsfrage deaktivieren (nicht empfohlen! Nur sinnvoll, wenn die Benutzer schon in einem Bereich sind, in dem man sich anmelden muss)
  • Subject (Betreff der Email, hier können spezielle Inserttags benutzt werden in der Art -> {{catalog::Spaltenbezeichnung}}. Z.B. {{catalog::title}}
  • Recipients List (Liste von Emailadressen, die eine Email mit dem Inhalt erhalten sollen)
  • Body text (Text der Email. Auch hier sind die speziellen Inserttags {{catalog::Spaltenbezeichnung}} möglich. Zusätzlich sind noch die Variablen ##catalog## und ##link## verfügbar. Wobei catalog durch den Katalog und link durch den direkten Link zu dem Item ersetzt werden.
  • Catalog Template (Hier kann das passende Template angegeben werden um das Formular darzustellen. Default ist mod_catalognotify)

Catalog Featured

Hiermit kann man eine Liste erstellen, die besondere Items darstellt. Die Liste wird per Zufall zusammengestellt.

  • Grundeinstellungen sind wie bei der Catalog-List
  • Besonderheiten:
    • Number of items (Hier kann die Anzahl der Items dargestellt werden. 0 zeigt alle)
    • Custom ordering (Die Reihenfolge kann hier festgelegt werden)
  • Um spezielle Einträge anzulegen braucht nur ein extra Feld (checkbox) erstellt werden (z.B. hervorgehoben) und in der Condition können dann Items festgelegt werden, deren Wert 1 ist -> spalte_hervorgehoben=1

Catalog Related

Hiermit erstellt man eine Liste von ähnlichen Items - einzusetzen auf einer Seite, auf der auch der Catalog Reader enthalten ist. Zufallsausgabe.

  • Grundeinstellungen sind wie bei der Catalog-List
  • Besonderheiten:
    • Related fields to match (Angabe der Felder, die bei den darzustellenden Items gleich sein sollen)
    • Amount of tags that must be in common (Einstellen der Anzahl der Übereinstimmungen -> Minimumangabe. d.h. wenn 3 Felder angegeben wurden, die übereinstimmen sollen, kann bei einer Angabe von 1 auch ein Item angezeigt werden, welches nur eine Übereinstimmung hat und nicht alle 3)
    • Number of items (Hier kann die Anzahl der Items dargestellt werden. 0 zeigt alle)
    • Custom ordering (Die Reihenfolge kann hier festgelegt werden)

Catalog Reference

Hiermit erstellt man eine Liste von Items mit einer gleichen Eigenschaft. Diese muss zusammen mit dem Catalog Reader eingesetzt werden und ist für die Anzeige von Items aus einem anderen Katalog.

  • Grundeinstellungen sind wie bei der Catalog-List
  • Besonderheiten:
    • Select the match field (Das Feld auswählen, welches die Verbindung zum anderen Katalog herstellt)
    • Select reference catalog (Den zweiten Katalog auswählen, wo die anzuzeigenden Items enthalten sind)
    • Select the reference field (Das Feld angeben, welches im 2. Katalog für die Identifizierung genutzt wird. Es soll dasselbe Feld angegeben werden, welchen auch schon für die Verknüpfung genommen wurde)
    • Number of items (Hier kann die Anzahl der Items dargestellt werden. 0 zeigt alle)
    • Custom ordering (Die Reihenfolge kann hier festgelegt werden)

Catalog Edit

Um ein Item im Frontend editieren und erstellen zu können. Dieses Modul wird anstelle von Catalog Reader verwendet.

  • Catalog (den Katalog auswählen, dessen Items im Frontend editierbar sein soll)
  • Editable Fields (Angabe der Felder, die editierbar sein sollen. Mit den Pfeilen kann man diese in der Reihenfolge anordnen)
  • Weiterleitungsseite (Seite die angezeigt werden soll, wenn das Formular abgesendet wurde. Meistens wird wieder zurück zu der Liste weitergeleitet)
  • Sicherheitsabfrage deaktivieren (Nicht empfohlen! Es sei denn, nur angemeldete Benutzer haben Zugriff auf diese Seite)
  • Restricted fields (Mit dieser Einstellung können Vorbelegungen, die _nicht_ geändert werden können, vorgenommen werden. Diese Felder sollten nicht als Editable Fields konfiguriert sein)
    • Wählen Sie hier die Felder aus, welche vorbelegt sein sollen
    • Restricted fields default values (Sind erst nach dem Speichern einstellbare Vorgaben für die Felder, die vorher ausgewählt wurden -> Jeder Feldtyp ist individuell einstellbar.)
    • Beispiel für ein Restricted field: Ein Feld mit einer Checkbox, ob das Item online sein soll. 'online' bekommt als default Wert 'Nein'. Nun ist jedes Item, was über diesen Catalog Editor erstellt oder bearbeitet wird offline! So kann man im Frontend mit einer extra Gruppe, die dieses Feld bearbeiten kann und eben keine default Vorgabe hat die Items freischalten. Die 'normalen' Benutzer haben dieses Recht dann nicht.

Weitere Einstellungsmöglichkeiten

Merkliste - Formulargenerator

Die Merkliste wird nicht als extra Modul erstellt, sondern in einem Formular mit dem Formulargenerator von TYPOlight.

Dazu gibt es ein neuen Feldtyp 'Merkliste' der zum Beispiel am Anfang positioniert werden kann. Der Besucher kann später das Formular ausfüllen und so die Liste an den Emailempfänger versenden, um sich so zum Beispiel ein Angebot für die Items einzuholen.

Einstellungen:

  • Feldname (der Feldname für diesen Feldtyp)
  • Feldbezeichnung (diese wird normalerweise für Felder als Label angezeigt und sollte daher hier leer gelassen werden)
  • Text (Hier kann ein Text angegeben werden, der über der Liste der Items angezeigt wird)
  • Katalog (Den Katalog angeben, der die Items enthält)
  • Sichtbare Felder (Die anzuzeigenden Felder von den Items, die Liste ist auch hier wieder über die Pfeile sortierbar)

Templates für die Merkliste

  • form_catalognotelist.tpl (Template für die Liste im Formular)
  • form_catalognotelist_mail.tpl (Template für die Email, welche die Items vom Merkzettel enthält. Hier kann genau festgelegt werden, welche Felder in der Email von einem Item angezeigt werden.)

Tipps und Tricks zur Umsetzung

Welche Variablen hat man in einem Template zur Verfügung?

<?php print_r($this->entries); ?>

Damit bekommt man das komplette Array ausgegeben.

Wie kann man in der Detail Ansicht den meta-title so beeinflussen, das dieser den Namen von dem Item nimmt?

  • Einfach das Feld für den Namen mit title benennen (das ist die Fallback Methode, wenn die andere -> Page title field nicht benutzt wird). Der catalog wird dann automatisch dieses Feld benutzen um den meta-title zu generieren.
  • Page title field beim Katalog sezten. Zu finden unter 'Search' in den Einstellungen vom Katalog.

Wie bekommt man ein Auge bei den Items? / on- offline Schalten von Items

Zuerst muss man sich in Feld vom Typ 'Checkbox' anlegen. Zum Beispiel mit dem Namen 'online'. Jetzt kann man den Katalog konfigurieren und bei Feld veröffentlichen (publish Field) das Checkbox-Feld auswählen. Ab jetzt ist im Backend bei den Items eines Katalogs ein graues oder grünes Auge (je nach Zustand) sichtbar.

Detail Seiten in die sitemap.xml und ins Modul Sitemap bringen

  • sitemap.xml -> Den Katalog einfach für die Indexierung der Suche freigeben -> Searchable
  • Modul Sitemap -> Hier werden die Detailseiten nicht integriert, da es bei einem normalen Katalog schon zu viele Einträge wären, um diese dort sinnvoll darzustellen.

Alias bei Links benutzen (anstelle der ID)

Dazu brauchst man nur ein Pflichtfeld (Namen von dem Item) und erstellt dann noch ein Feld vom Typ Alias. Das Alias-Titel-Feld ist dann der Name des Items. Bei dem Katalog selber muss noch ausgewählt werden, welches das Alias Feld ist. Das Alias Feld ist genau so wie das Alias Feld von Seiten etc., man kann selbst etwas eintragen oder den Inhalt automatisch generieren lassen, wenn man das leer lässt. Nachdem die Suche und die Seiten neu generiert wurden (Systemwartung) sollte der Alias bei der Suche und auch bei der Detailansicht (URL) genutzt werden. Im Moment muss in der Liste das Alias Feld als 'Sichtbar' ausgewählt werden. Sonst funktioniert die Verlinkung nicht! (Sollte in der Endversion behoben sein)

Folder-URL und der catalog wollen nicht so recht

Unter Einstellungen kann unter Sicherheitseinstellungen eine Liste von Variablennamen angeben werden, welche von der Erweiterung Folder-URL als Parameter erkannt werden sollen. Hier muss "orderby,sort" angegeben werden. Dadurch 'ignoriert' Folderurl diese Parameter und der catalog ist wie immer nutzbar.

Bedingung bei Strings

Um eine Bedingung anzugeben, die innerhalb eines Strings vorhanden ist, reicht es ja nicht einfach nur einen Vergleich per SQL vorzunehmen. Beispiel: Über den Feldtyp Tag sind Taxonomieen einem Produkt zugeordnet. Da das mehrere sein können muss man die Bedingung in der Liste wie folgt abfragen ->

FIND_IN_SET(7, kategorie)

D.h.: es soll innerhlab von kategorie nach der ID 7 gesucht werden.

Formatierung von Zahlen in den Backend Einstellungen

Um Zahleneingaben zu formatieren, wird mit php gearbeitet.

Hier finden sich Anleitungen dazu -> [1]

Beispiel:

  • Zahleneingabe -> 1023934
  • Formatierung -> 2, ',', ' '
  • Ausgabe -> 10.239,34

Filtern nach Datum

Aufgabenstellung: Das Datumsfeld ist in dem Format 'dd.mm.yyyy' vorhanden. Es soll nun für das aktuelle Jahr eine Ausgabe erfolgen und für die vergangenen Jahre ein Archiv erstellt werden.

Das Problem: Die Datum Angaben werden als timestamp gespeichert und sind in einem char Feld.

Lösungsansatz:

meinedatumsvariable BETWEEN UNIX_TIMESTAMP('{{date::Y}}-01-01') AND UNIX_TIMESTAMP('{{date::Y}}-12-31')

So kommt man an die Daten des aktuellen Jahres, um die Daten von 2009 auszugeben:

meinedatumsvariable BETWEEN UNIX_TIMESTAMP('2009-01-01') AND UNIX_TIMESTAMP('2009-12-31')

Video Tutorials aus dem Internet

Ein paar Videos zu dem Catalog:




Tutorials


--Toflar 15:12, 15. Mai 2010 (UTC+1)

--MacKP 13:02, 5. Apr. 2010 (UTC)

Ansichten
Meine Werkzeuge

Contao Community Documentation

Chuck Norris programmiert kein PHP, er diktiert das Ergebnis. Den Rest macht der Editor aus Angst.

Stefan Lindecke
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge