Dokumentation Categorywalker
Aus DeDi-Help
| Version vom 08:58, 9. Dez. 2004 (bearbeiten) Kbi (Diskussion | Beiträge) K (→Software Vorraussetzungen) ← Zum vorherigen Versionsunterschied |
Aktuelle Version (10:20, 6. Okt. 2009) (bearbeiten) (Entfernen) Eppi (Diskussion | Beiträge) |
||
| (Der Versionsvergleich bezieht 8 dazwischen liegende Versionen mit ein.) | |||
| Zeile 5: | Zeile 5: | ||
| === Vorwort === | === Vorwort === | ||
| - | Der Categorywalker ist ein sehr mchtiges Werkzeug auf Ihrer DeDi Website. | + | Der Categorywalker ist ein sehr mächtiges Werkzeug auf Ihrer DeDi Website. |
| - | Ein Grundlegendes Verstndnis fr DeDi bzw. fr den Aufbau von Layouts und die Benutzung | + | Ein Grundlegendes Verständnis für DeDi bzw. für den Aufbau von Layouts und die Benutzung |
| von Content-Containern ist Voraussetzung um das Modul entsprechend zu nutzen. | von Content-Containern ist Voraussetzung um das Modul entsprechend zu nutzen. | ||
| - | Wie bei den meisten Modulen, benutz auch der Categorywalker Templates fr die Frontendausgabe. | + | Wie bei den meisten Modulen, benutz auch der Categorywalker Templates für die Frontendausgabe. |
| Hier ist es zwingend erforderlich entsprechende Html-Grundkenntnisse mitzubringen. | Hier ist es zwingend erforderlich entsprechende Html-Grundkenntnisse mitzubringen. | ||
| === Ziel des Moduls === | === Ziel des Moduls === | ||
| - | Der Categorywalker bringt zwar eine Menge an Funktionalitten mit, die auch in anderen Modulen vorhanden sind, doch ist es nicht Sinn dieses Moduls sich Spezialisiert auf eine Funktion (z.B.: NewsTeaser) zu beschrnken. | + | Der Categorywalker bringt zwar eine Menge an Funktionalitäten mit, die auch in anderen Modulen vorhanden sind, doch ist es nicht Sinn dieses Moduls sich Spezialisiert auf eine Funktion (z.B.: NewsTeaser) zu beschränken. |
| - | Vielmehr soll der Umfang und die Mglichkeiten des Categorywalker dazu dienen, Aufgaben zu bewltigen, die mit anderen Modulen nur schwer oder nicht vollstndig (weil zu spezialisiert) umgesetzt werden knnen. | + | Vielmehr soll der Umfang und die Möglichkeiten des Categorywalker dazu dienen, Aufgaben zu bewältigen, die mit anderen Modulen nur schwer oder nicht vollständig (weil zu spezialisiert) umgesetzt werden können. |
| - | === Gltigkeit dieser Dokumentation === | + | === Gültigkeit dieser Dokumentation === |
| Diese Dokumentation gilt ab Version 0.64 bis 1.03, alle anderen Versionen werden nicht Supportet! | Diese Dokumentation gilt ab Version 0.64 bis 1.03, alle anderen Versionen werden nicht Supportet! | ||
| - | Alle nderungen seit Version 0.6 sind bercksichtigt und in diese Dokumentation eingeflossen. | + | Alle Änderungen seit Version 0.6 sind berücksichtigt und in diese Dokumentation eingeflossen. |
| - | Fr die Light-Version gibt es eine kleinere angepasste Dokumentation, da dort nicht alle Features | + | Für die Light-Version gibt es eine kleinere angepasste Dokumentation, da dort nicht alle Features |
| - | Enthalten sind. In der Dokumentation verwendete Abkrzungen wie z.B.: 2.2 oder 4.2.2 beziehen sich auf | + | Enthalten sind. In der Dokumentation verwendete Abkürzungen wie z.B.: 2.2 oder 4.2.2 beziehen sich auf |
| Kapitel und Unterkapitel dieser Dokumentation. | Kapitel und Unterkapitel dieser Dokumentation. | ||
| - | == berblick Installation == | + | == Überblick Installation == |
| - | === Software Vorraussetzungen === | + | === Software Voraussetzungen === |
| - | Voraussetzung zur Nutzung/Installation ist eine funktionsfhige Installation von 'Der Dirigent', | + | Voraussetzung zur Nutzung/Installation ist eine funktionsfähige Installation von 'Der Dirigent', |
| - | und die Zustimmung zu den Lizenzbedingungen der Software 'Der Dirigent, | + | und die Zustimmung zu den Lizenzbedingungen der Software 'Der Dirigent', |
| der auch dieses Modul unterliegt. | der auch dieses Modul unterliegt. | ||
| - | === Standart Installation als XML-Modul === | + | === Standard Installation als XML-Modul === |
| - | Standart Installation als XML-Modul: | + | Standard Installation als XML-Modul: |
| - | Voraussetzung ist hierbei das Sie das Modul vom DeDi-Modul Repository heruntergeladen haben. | + | Voraussetzung ist hierbei, dass Sie das Modul vom DeDi-Modul Repository heruntergeladen haben. |
| - | Nach der Anmeldung im Backend, ffnen Sie ber '''Design->Module''' die 'Modul' bersichtsseite. | + | Nach der Anmeldung im Backend, öffnen Sie über '''Design->Module''' die 'Modul' Übersichtsseite. |
| - | Klicken Sie auf die Schaltflche '''Durchsuchen...''', in dem unteren Bereich der Seite 'Modul uploaden'. | + | Klicken Sie auf die Schaltfläche '''Durchsuchen...''', in dem unteren Bereich der Seite 'Modul uploaden'. |
| - | Whlen Sie nun in dem sich ffnenden 'Datei auswhlen' Fenster das Modul 'Categorywalker.dedimod' aus. | + | Wählen Sie nun in dem sich öffnenden 'Datei auswählen' Fenster das Modul 'Categorywalker.dedimod' aus. |
| - | Besttigen Sie die Auswahl mit Klick auf 'ffnen' und starten den Upload mit Klick auf die Schaltflche 'Modul uploaden' (Diskettensymbol, rechts). | + | Bestätigen Sie die Auswahl mit Klick auf 'öffnen' und starten den Upload mit Klick auf die Schaltfläche 'Modul uploaden' (Diskettensymbol, rechts). |
| - | Bei erfolgreichem Upload, wird das neue Modul sofort in der Modulbersicht angezeigt. | + | Bei erfolgreichem Upload, wird das neue Modul sofort in der Modulübersicht angezeigt. |
| - | + | ||
| - | Sie knnen nun in einem Template das neue Modul einstellen. | + | |
| + | Sie können nun in einem Template das neue Modul einstellen. | ||
| === Installation als Developer-Modul === | === Installation als Developer-Modul === | ||
| Zeile 57: | Zeile 56: | ||
| Voraussetzung ist wie bei 2.2, oder das Sie das Modul aus dem Entwicklerforum kopiert haben. | Voraussetzung ist wie bei 2.2, oder das Sie das Modul aus dem Entwicklerforum kopiert haben. | ||
| - | Nach der Anmeldung im Backend, ffnen Sie ber '''Design->Module''' die Modulbersichtsseite. | + | Nach der Anmeldung im Backend, öffnen Sie über '''Design->Module''' die Modulübersichtsseite. |
| - | Klicken Sie auf '''neues Modul''', es ffnet sich die 'Modul bearbeiten' Seite. | + | Klicken Sie auf '''neues Modul''', es öffnet sich die 'Modul bearbeiten' Seite. |
| - | Hier fgen Sie den Code in die entsprechenden Felder ein. Zur besseren bersicht geben Sie dem Versionsnamen eine Unterzahl (z.B.: 0.6y.x-dev) und benennen die Kategorie 'Develope'. | + | Hier fügen Sie den Code in die entsprechenden Felder ein. Zur besseren Übersicht geben Sie dem Versionsnamen eine Unterzahl (z.B.: 0.6y.x-dev) und benennen die Kategorie 'Develope'. |
| - | Speichern Sie das Modul. Das neue Modul wird sofort in der Modulbersicht angezeigt. | + | Speichern Sie das Modul. Das neue Modul wird sofort in der Modulübersicht angezeigt. |
| - | Sie knnen nun in einem Template das neue Modul einstellen. | + | Sie können nun in einem Template das neue Modul einstellen. |
| Achtung: Developer-Module erzeugen einen Warnhinweis im Backend bei der Einbindung | Achtung: Developer-Module erzeugen einen Warnhinweis im Backend bei der Einbindung | ||
| des Moduls in ein Template! | des Moduls in ein Template! | ||
| - | DIES IST EINE ENTWICKLERVERSION. SIE IST NICHT FR DEN PRODUKTIVEN EINSATZ GEEIGNET !!! | + | DIES IST EINE ENTWICKLERVERSION. SIE IST NICHT FÜR DEN PRODUKTIVEN EINSATZ GEEIGNET !!! |
| - | + | ||
| - | + | ||
| - | === nderungen am Modul === | + | |
| - | Wenn sie in dem Modul nderungen vornehmen oder das Modul als Developer-Version nutzen, | + | |
| - | sollten Sie unbedingt nderungen Dokumentieren und eine Unterversionierung einhalten. | + | |
| - | Damit bei einem Update oder Problemen/Support eine klare Aussage ber den Versionsstand gemacht werden kann! | + | |
| + | === Änderungen am Modul === | ||
| + | Wenn sie in dem Modul Änderungen vornehmen oder das Modul als Developer-Version nutzen, | ||
| + | sollten Sie unbedingt Änderungen dokumentieren und eine Unterversionierung einhalten. | ||
| + | Damit bei einem Update oder Problemen/Support eine klare Aussage über den Versionsstand gemacht werden kann! | ||
| - | == berblick Funktionsweise des Moduls == | + | == Überblick Funktionsweise des Moduls == |
| === Allgemeines === | === Allgemeines === | ||
| - | Der Categorywalker durchsucht die Datenbank. ber die Angabe von Container, Startoptionen (Startseite, On-/Offline) und Suchmuster (4.3) kann man die Suche eingrenzen und komfortabel das Suchergebnis beeinflussen. | + | Der Categorywalker durchsucht die Datenbank. Über die Angabe von Container, Startoptionen (Startseite, On-/Offline) und Suchmuster (4.3) kann man die Suche eingrenzen und komfortabel das Suchergebnis beeinflussen. |
| - | Die Ausgabe erfolgt ber 4 Templates, die einzeln definiert werden knnen. | + | Die Ausgabe erfolgt über 4 Templates, die einzeln definiert werden können. |
| - | Zustzlich generiert der Categorywalker eine zusammenhngende Navigation die es bequem macht das Ergebnis auf mehrere Seiten aufzuteilen (Galery). Die Navigation kann optional floaten das heit die Anzeige der Navigation wird auf z.B.: maximal 20 Navigationspunkte begrenzt und die Nummerierung wandert in einem Bereich Rechts und Links um die aktuelle Seite mit. | + | Zusätzlich generiert der Categorywalker eine zusammenhängende Navigation die es bequem macht das Ergebnis auf mehrere Seiten aufzuteilen (Galery). Die Navigation kann optional "floaten" das heißt die Anzeige der Navigation wird auf z.B.: maximal 20 Navigationspunkte begrenzt und die Nummerierung wandert in einem Bereich Rechts und Links um die aktuelle Seite mit. |
| Zeile 96: | Zeile 93: | ||
| Es gibt ein 'Top-Artikel' Template welches separat angesprochen werden kann um einen Artikel auf der Startseite hervorzuheben. | Es gibt ein 'Top-Artikel' Template welches separat angesprochen werden kann um einen Artikel auf der Startseite hervorzuheben. | ||
| - | Die beiden 'Content1' und 'Conten2' Templates wiederum wiederholen in einer Schleife jeweils die gegebene Anzahl von Artikel/Suchergebnissen und das vllig unabhngig voneinander. | + | Die beiden 'Content1' und 'Conten2' Templates wiederum wiederholen in einer Schleife jeweils die gegebene Anzahl von Artikel/Suchergebnissen und das völlig unabhängig voneinander. |
| - | Das letzte Template 'Merge' ist fr den Gesamtaufbau der Anzeige verantwortlich, hier werden die anderen 3 Templates zu einer Seite zusammengefgt. | + | Das letzte Template 'Merge' ist für den Gesamtaufbau der Anzeige verantwortlich, hier werden die anderen 3 Templates zu einer Seite zusammengefügt. |
| Innerhalb dieser Templates sind auch einige Scripttags erlaubt die eine genaue Positionierung und Wiederholung von Content-Variablen erlauben. | Innerhalb dieser Templates sind auch einige Scripttags erlaubt die eine genaue Positionierung und Wiederholung von Content-Variablen erlauben. | ||
| - | Die Scripttags werden in 4.2 unter 'ScriptTags' erlutert. | + | Die Scripttags werden in 4.2 unter 'ScriptTags' erläutert. |
| Zeile 120: | Zeile 117: | ||
| * Strukturpunk, der Strukturpunk bezeichnet die Kategorie oder den Ordner ab dem der Content gesucht wird. | * Strukturpunk, der Strukturpunk bezeichnet die Kategorie oder den Ordner ab dem der Content gesucht wird. | ||
| * Einstellung Recursion, hier kann die Recursion bei ausgeschaltet werden. Das Modul sucht dann nur in der vorgegeben Kategorie/Ordner und nicht in den darrunterliegenden Strukturen. | * Einstellung Recursion, hier kann die Recursion bei ausgeschaltet werden. Das Modul sucht dann nur in der vorgegeben Kategorie/Ordner und nicht in den darrunterliegenden Strukturen. | ||
| - | * CMS-Container, alle benutzten CMS-Container aus einem Layout haben ihren Inhalt in der Datenbank hinterlegt. Die Auswahl beschrnkt sich auf benutzte Container. | + | * CMS-Container, alle benutzten CMS-Container aus einem Layout haben ihren Inhalt in der Datenbank hinterlegt. Die Auswahl beschränkt sich auf benutzte Container. |
| - | * Extras/Sicherheit, die Auswahl umfasst Startseiten der Kategorien/Ordner, Offline gesetzte Seiten/Kategorien/Ordner, geschtzte Kategorien/Ordner und nicht validen Content. (Content aus externen Daten ab Version 0.8) | + | * Extras/Sicherheit, die Auswahl umfasst Startseiten der Kategorien/Ordner, Offline gesetzte Seiten/Kategorien/Ordner, geschützte Kategorien/Ordner und nicht validen Content. (Content aus externen Daten ab Version 0.8) |
| * Einstellung/Begrenzung Suchmuster, hier hinter liegt eine Intelligente SQL-Matrix die die Pseudo-Code Anfrage in SQL abbildet und somit die Datenbankabfrage verfeinert (4.3). | * Einstellung/Begrenzung Suchmuster, hier hinter liegt eine Intelligente SQL-Matrix die die Pseudo-Code Anfrage in SQL abbildet und somit die Datenbankabfrage verfeinert (4.3). | ||
| * Suchmuster einschalten/ausschalten, die Funktion kann frei dazugeschaltet werden. | * Suchmuster einschalten/ausschalten, die Funktion kann frei dazugeschaltet werden. | ||
| - | * Suchtiefe begrenzen, hiermit knnen Sie die Suchtiefe auf eine bestimmte Anzahl von Treffern begrenzen. | + | * Suchtiefe begrenzen, hiermit können Sie die Suchtiefe auf eine bestimmte Anzahl von Treffern begrenzen. |
| - | * Seiten Sortierung, hier wird die Ausgaben Sortierung eingestellt. Mglich sind: Id der Seite, Erstellungsdatum, nderungsdatum, Autor und Seitentitel. Sowie absteigende und aufsteigende Sortierung. | + | * Seiten Sortierung, hier wird die Ausgaben Sortierung eingestellt. Möglich sind: Id der Seite, Erstellungsdatum, Änderungsdatum, Autor und Seitentitel. Sowie absteigende und aufsteigende Sortierung. |
| * Einstellungen Navigation, die Navigation kann ganz ausgeschaltet werden und auch immer angezeigt werden (kein Ergebnis). | * Einstellungen Navigation, die Navigation kann ganz ausgeschaltet werden und auch immer angezeigt werden (kein Ergebnis). | ||
| - | * Navigation flooting, die Navigationsbreite kann begrenzt werden auf eine Anzahl von Pnkten. Die Navigation umluft dann immer die aktuelle Seite mit maximal x Punkten. | + | * Navigation "flooting", die Navigationsbreite kann begrenzt werden auf eine Anzahl von Pnkten. Die Navigation umläuft dann immer die aktuelle Seite mit maximal x Punkten. |
| - | * Navigation Prfix, der Prfix steht vor der kompletten Navigation und kann frei konfiguriert werden. | + | * Navigation Präfix, der Präfix steht vor der kompletten Navigation und kann frei konfiguriert werden. |
| * Navigation Suffix, der Suffix steht hinter der kompletten Navigation und kann frei konfiguriert werden. | * Navigation Suffix, der Suffix steht hinter der kompletten Navigation und kann frei konfiguriert werden. | ||
| - | * Navigation Buttons, die Schaltflchen fr vorwrts und rckwrts knnen im aktiven und deaktivierten Zustand frei definiert werden. | + | * Navigation Buttons, die Schaltflächen für vorwärts und rückwärts können im aktiven und deaktivierten Zustand frei definiert werden. |
| * Navigations Punkte, hier werden die Seitenlinks definiert (aktiv/deaktiviert). | * Navigations Punkte, hier werden die Seitenlinks definiert (aktiv/deaktiviert). | ||
| - | * Topartikel Template, der Topartikel stellt eine Funktion da die den 1. Artikel der ersten Seite extra darstellen kann. Dabei knnen die den Top-Artikel auch ganz aus den folgenden Templates herausnehmen. | + | * Topartikel Template, der Topartikel stellt eine Funktion da die den 1. Artikel der ersten Seite extra darstellen kann. Dabei können die den Top-Artikel auch ganz aus den folgenden Templates herausnehmen. |
| - | * Content1/Content2 Template, in diesen Templates knnen zwei unterschiedliche Ausgaben des einen Artikels oder verschiedene Artikel ausgegeben werden. | + | * Content1/Content2 Template, in diesen Templates können zwei unterschiedliche Ausgaben des einen Artikels oder verschiedene Artikel ausgegeben werden. |
| * Content1/Content2 Schleife, hier stellen Sie die Anzahl von Artikeln eine die auf einer Seite dargestellt werden. | * Content1/Content2 Schleife, hier stellen Sie die Anzahl von Artikeln eine die auf einer Seite dargestellt werden. | ||
| * Verbindungs Template, das Verbindungs Template (Merge) verbindet die anderen Templates zu einer einheitlichen Ausgabe. | * Verbindungs Template, das Verbindungs Template (Merge) verbindet die anderen Templates zu einer einheitlichen Ausgabe. | ||
| Zeile 140: | Zeile 137: | ||
| === Templates === | === Templates === | ||
| - | Templates knnen nur einzelne Variablen oder auch ganze Html-Seiten (Vorlagen) enthalten. | + | Templates können nur einzelne Variablen oder auch ganze Html-Seiten (Vorlagen) enthalten. |
| - | Die Ausgabe von Variablen wird ber die Scripttags gesteuert. Dabei lassen diese Tags Verschachtelung und Abhngigkeiten zu, um auch die verschiedensten Inhalte Korrekt darzustellen. | + | Die Ausgabe von Variablen wird über die Scripttags gesteuert. Dabei lassen diese Tags Verschachtelung und Abhängigkeiten zu, um auch die verschiedensten Inhalte Korrekt darzustellen. |
| '''ScriptTags''' | '''ScriptTags''' | ||
| - | Die Script-Tags sind dafr da bestimmte Ausgabetypen zu selektieren und zu ordnen. | + | Die Script-Tags sind dafür da bestimmte Ausgabetypen zu selektieren und zu ordnen. |
| - | Untersttzt werden nur die Offiziellen DeDi-Typen: | + | Unterstützt werden nur die Offiziellen DeDi-Typen: |
| Zeile 196: | Zeile 193: | ||
| * {file_target:x}, -> siehe {img_desc:x} | * {file_target:x}, -> siehe {img_desc:x} | ||
| * {url_to_articel}, ist der interne Link zu dem gefundenen Content/Artikel | * {url_to_articel}, ist der interne Link zu dem gefundenen Content/Artikel | ||
| - | * {exist yyy[:x]}/{/exist}, ein Konstrukt das ein Variabelenabfrage fr yyy:x (wobei :x optional ist!) ausfhrt und nur bei Vorhandensein der innere Code (Html/Script) ausgefhrt wird. Man kann somit im Template sicherstellen das ein Layout wie im Beispiel: <br /><nowiki>{exist text:3}<b>{text:3}</b><br>{/exist} </nowiki><br />nicht ausgefhrt wird, wenn die Variable nicht existiert oder leer ist. | + | * {exist yyy[:x]}/{/exist}, ein Konstrukt das ein Variabelenabfrage für yyy:x (wobei :x optional ist!) ausführt und nur bei Vorhandensein der innere Code (Html/Script) ausgeführt wird. Man kann somit im Template sicherstellen das ein Layout wie im Beispiel: <br /><nowiki>{exist text:3}<b>{text:3}</b><br>{/exist} </nowiki><br />nicht ausgeführt wird, wenn die Variable nicht existiert oder leer ist. |
| - | * {loop yyy}/{/loop}, ein Konstrukt das eine Schleife um den Contenttype yyy (ohne :x) ausfhrt, man kann somit im Template ein Layout wie im Beispiel: <br /><nowiki><ul>{loop text}<li><b>{text}</b></li>{/loop}</ul> </nowiki><br />mehrfach durchlaufen und alle Inhalte von z.B.: {text} (text:1, text:2, text:3 usw.) werden wiedergeben. | + | * {loop yyy}/{/loop}, ein Konstrukt das eine Schleife um den Contenttype yyy (ohne :x) ausführt, man kann somit im Template ein Layout wie im Beispiel: <br /><nowiki><ul>{loop text}<li><b>{text}</b></li>{/loop}</ul> </nowiki><br />mehrfach durchlaufen und alle Inhalte von z.B.: {text} (text:1, text:2, text:3 usw.) werden wiedergeben. |
| * {each xxx}, ist eine vereinfachte Form von {loop xxx}{xxx}{/loop} | * {each xxx}, ist eine vereinfachte Form von {loop xxx}{xxx}{/loop} | ||
| - | * Cuttexte, das Attribut [cut:xy] ist eine optionale Einstellung (ohne die eckigen [...] Klammern) um den Text auf xy Zeichen zu krzen! z.B.: {text:1 cut:100} - Damit kann man Teaser erzeugen die 100 Zeichen lang sind Minus das Letzte (berhngige) Wort aus dem erstem Textfeld einer Seite. | + | * Cuttexte, das Attribut [cut:xy] ist eine optionale Einstellung (ohne die eckigen [...] Klammern) um den Text auf xy Zeichen zu kürzen! z.B.: {text:1 cut:100} - Damit kann man Teaser erzeugen die 100 Zeichen lang sind Minus das Letzte (überhängige) Wort aus dem erstem Textfeld einer Seite. |
| - | * Extra Attribute fr {img} & {file}, [ thumb]/[ url]/[ name]: {img thumb} - zeigt nur das Thumbnail an (ausser .gif), {img url} - bergibt den Pfad, {img name} - bergibt den Namen. | + | * Extra Attribute für {img} & {file}, [ thumb]/[ url]/[ name]: {img thumb} - zeigt nur das Thumbnail an (ausser .gif), {img url} - übergibt den Pfad, {img name} - übergibt den Namen. |
| - | * Cuttexte & Attribute knnen auch mit {each} kombiniert werden. | + | * Cuttexte & Attribute können auch mit {each} kombiniert werden. |
| Zeile 207: | Zeile 204: | ||
| '''Beispiele''' | '''Beispiele''' | ||
| - | Die Script-Tags drfen variabel kombiniert werden, um eine saubere Anzeige des gefundenen Contents bei hchstmglicher Variabilitt zu leisten! | + | Die Script-Tags dürfen variabel kombiniert werden, um eine saubere Anzeige des gefundenen Contents bei höchstmöglicher Variabilität zu leisten! |
| Zeile 243: | Zeile 240: | ||
| Der Categorywalker kann als Newsgrabber, DokuWeb, Redaktionstool oder Galery eingesetzt werden. | Der Categorywalker kann als Newsgrabber, DokuWeb, Redaktionstool oder Galery eingesetzt werden. | ||
| - | Sicherlich gibt es noch viele andere Mglichkeiten, das auszuprobieren ist ja Ihr Job ;) | + | Sicherlich gibt es noch viele andere Möglichkeiten, das auszuprobieren ist ja Ihr Job ;) |
| - | Weitere, ausfhrliche Beispiele siehe Anhang A. | + | Weitere, ausführliche Beispiele siehe Anhang A. |
| Zeile 251: | Zeile 248: | ||
| - | Der Categorywalker wird noch einige Updates erfahren, welcher Art knnen Sie der Doku entnehmen. | + | Der Categorywalker wird noch einige Updates erfahren, welcher Art können Sie der Doku entnehmen. |
| - | Die v0.64.4 ist die aktuelle Stabel-Version, bis zur v0.7 werden zumindest einige Code Optimierungen durchgefhrt. Bis zur DeDi 1.0 wird die Version 0.8 released. | + | Die v0.64.4 ist die aktuelle Stabel-Version, bis zur v0.7 werden zumindest einige Code Optimierungen durchgeführt. Bis zur DeDi 1.0 wird die Version 0.8 released. |
| - | == Gruwort == | + | == Grußwort == |
| Dank an alle DeDi-Entwickler, die Cores, die Modulentwickler und die netten Testuser :) | Dank an alle DeDi-Entwickler, die Cores, die Modulentwickler und die netten Testuser :) | ||
| - | Gru STam | + | Gruß STam |
| + | |||
| + | [[Category:Moduldokumentationen|C]] | ||
Aktuelle Version
Inhaltsverzeichnis |
[bearbeiten] Beschreibung des Moduls
[bearbeiten] Vorwort
Der Categorywalker ist ein sehr mächtiges Werkzeug auf Ihrer DeDi Website.
Ein Grundlegendes Verständnis für DeDi bzw. für den Aufbau von Layouts und die Benutzung von Content-Containern ist Voraussetzung um das Modul entsprechend zu nutzen. Wie bei den meisten Modulen, benutz auch der Categorywalker Templates für die Frontendausgabe. Hier ist es zwingend erforderlich entsprechende Html-Grundkenntnisse mitzubringen.
[bearbeiten] Ziel des Moduls
Der Categorywalker bringt zwar eine Menge an Funktionalitäten mit, die auch in anderen Modulen vorhanden sind, doch ist es nicht Sinn dieses Moduls sich Spezialisiert auf eine Funktion (z.B.: NewsTeaser) zu beschränken.
Vielmehr soll der Umfang und die Möglichkeiten des Categorywalker dazu dienen, Aufgaben zu bewältigen, die mit anderen Modulen nur schwer oder nicht vollständig (weil zu spezialisiert) umgesetzt werden können.
[bearbeiten] Gültigkeit dieser Dokumentation
Diese Dokumentation gilt ab Version 0.64 bis 1.03, alle anderen Versionen werden nicht Supportet!
Alle Änderungen seit Version 0.6 sind berücksichtigt und in diese Dokumentation eingeflossen.
Für die Light-Version gibt es eine kleinere angepasste Dokumentation, da dort nicht alle Features Enthalten sind. In der Dokumentation verwendete Abkürzungen wie z.B.: 2.2 oder 4.2.2 beziehen sich auf Kapitel und Unterkapitel dieser Dokumentation.
[bearbeiten] Überblick Installation
[bearbeiten] Software Voraussetzungen
Voraussetzung zur Nutzung/Installation ist eine funktionsfähige Installation von 'Der Dirigent', und die Zustimmung zu den Lizenzbedingungen der Software 'Der Dirigent', der auch dieses Modul unterliegt.
[bearbeiten] Standard Installation als XML-Modul
Standard Installation als XML-Modul:
Voraussetzung ist hierbei, dass Sie das Modul vom DeDi-Modul Repository heruntergeladen haben.
Nach der Anmeldung im Backend, öffnen Sie über Design->Module die 'Modul' Übersichtsseite.
Klicken Sie auf die Schaltfläche Durchsuchen..., in dem unteren Bereich der Seite 'Modul uploaden'.
Wählen Sie nun in dem sich öffnenden 'Datei auswählen' Fenster das Modul 'Categorywalker.dedimod' aus.
Bestätigen Sie die Auswahl mit Klick auf 'öffnen' und starten den Upload mit Klick auf die Schaltfläche 'Modul uploaden' (Diskettensymbol, rechts).
Bei erfolgreichem Upload, wird das neue Modul sofort in der Modulübersicht angezeigt.
Sie können nun in einem Template das neue Modul einstellen.
[bearbeiten] Installation als Developer-Modul
Installation als Developer-Modul:
Voraussetzung ist wie bei 2.2, oder das Sie das Modul aus dem Entwicklerforum kopiert haben.
Nach der Anmeldung im Backend, öffnen Sie über Design->Module die Modulübersichtsseite.
Klicken Sie auf neues Modul, es öffnet sich die 'Modul bearbeiten' Seite.
Hier fügen Sie den Code in die entsprechenden Felder ein. Zur besseren Übersicht geben Sie dem Versionsnamen eine Unterzahl (z.B.: 0.6y.x-dev) und benennen die Kategorie 'Develope'.
Speichern Sie das Modul. Das neue Modul wird sofort in der Modulübersicht angezeigt.
Sie können nun in einem Template das neue Modul einstellen.
Achtung: Developer-Module erzeugen einen Warnhinweis im Backend bei der Einbindung des Moduls in ein Template!
DIES IST EINE ENTWICKLERVERSION. SIE IST NICHT FÜR DEN PRODUKTIVEN EINSATZ GEEIGNET !!!
[bearbeiten] Änderungen am Modul
Wenn sie in dem Modul Änderungen vornehmen oder das Modul als Developer-Version nutzen, sollten Sie unbedingt Änderungen dokumentieren und eine Unterversionierung einhalten. Damit bei einem Update oder Problemen/Support eine klare Aussage über den Versionsstand gemacht werden kann!
[bearbeiten] Überblick Funktionsweise des Moduls
[bearbeiten] Allgemeines
Der Categorywalker durchsucht die Datenbank. Über die Angabe von Container, Startoptionen (Startseite, On-/Offline) und Suchmuster (4.3) kann man die Suche eingrenzen und komfortabel das Suchergebnis beeinflussen.
Die Ausgabe erfolgt über 4 Templates, die einzeln definiert werden können.
Zusätzlich generiert der Categorywalker eine zusammenhängende Navigation die es bequem macht das Ergebnis auf mehrere Seiten aufzuteilen (Galery). Die Navigation kann optional "floaten" das heißt die Anzeige der Navigation wird auf z.B.: maximal 20 Navigationspunkte begrenzt und die Nummerierung wandert in einem Bereich Rechts und Links um die aktuelle Seite mit.
[bearbeiten] Templates
Die Templates werden wie normales Html behandelt (also sind Html-Tags erlaubt).
Es gibt ein 'Top-Artikel' Template welches separat angesprochen werden kann um einen Artikel auf der Startseite hervorzuheben.
Die beiden 'Content1' und 'Conten2' Templates wiederum wiederholen in einer Schleife jeweils die gegebene Anzahl von Artikel/Suchergebnissen und das völlig unabhängig voneinander. Das letzte Template 'Merge' ist für den Gesamtaufbau der Anzeige verantwortlich, hier werden die anderen 3 Templates zu einer Seite zusammengefügt. Innerhalb dieser Templates sind auch einige Scripttags erlaubt die eine genaue Positionierung und Wiederholung von Content-Variablen erlauben. Die Scripttags werden in 4.2 unter 'ScriptTags' erläutert.
[bearbeiten] Optionen
Optionen zu der Auswahl der Artikel/Suchergebnisse sind folgende:
- Strukturpunkt, hier wird die Tiefe der Suche rekursiv begrenzt. Autom. werden alle vorhandenen Strukturpunkte angezeigt.
- CMS-Container, hier werden die Layout-Container definiert die durchsucht werden sollen. Autom. werden alle vorhandenen Container in dem Textfeld angezeigt
- Extras/Sicherheit, hier kann man die Startseiten mit einbeziehen und auch Offline Seiten freigeben. (ab v0.65 werden auch externe Content-Container durchsucht!)
- Sortierung, hier wird die Ausgabe-Sortierung festgelegt, z.B.: nach Erstellungsdatum (News).
- Suchmuster, hier kann ein begrenzendes Suchmuster eingegeben werden (siehe 4.3).
[bearbeiten] Modul Frontend
[bearbeiten] Einstellung und Parameter
Das Modulfrontend beinhaltet die zur Konfiguration notwendigen Einstellungen und Vorlagen.
- Strukturpunk, der Strukturpunk bezeichnet die Kategorie oder den Ordner ab dem der Content gesucht wird.
- Einstellung Recursion, hier kann die Recursion bei ausgeschaltet werden. Das Modul sucht dann nur in der vorgegeben Kategorie/Ordner und nicht in den darrunterliegenden Strukturen.
- CMS-Container, alle benutzten CMS-Container aus einem Layout haben ihren Inhalt in der Datenbank hinterlegt. Die Auswahl beschränkt sich auf benutzte Container.
- Extras/Sicherheit, die Auswahl umfasst Startseiten der Kategorien/Ordner, Offline gesetzte Seiten/Kategorien/Ordner, geschützte Kategorien/Ordner und nicht validen Content. (Content aus externen Daten ab Version 0.8)
- Einstellung/Begrenzung Suchmuster, hier hinter liegt eine Intelligente SQL-Matrix die die Pseudo-Code Anfrage in SQL abbildet und somit die Datenbankabfrage verfeinert (4.3).
- Suchmuster einschalten/ausschalten, die Funktion kann frei dazugeschaltet werden.
- Suchtiefe begrenzen, hiermit können Sie die Suchtiefe auf eine bestimmte Anzahl von Treffern begrenzen.
- Seiten Sortierung, hier wird die Ausgaben Sortierung eingestellt. Möglich sind: Id der Seite, Erstellungsdatum, Änderungsdatum, Autor und Seitentitel. Sowie absteigende und aufsteigende Sortierung.
- Einstellungen Navigation, die Navigation kann ganz ausgeschaltet werden und auch immer angezeigt werden (kein Ergebnis).
- Navigation "flooting", die Navigationsbreite kann begrenzt werden auf eine Anzahl von Pnkten. Die Navigation umläuft dann immer die aktuelle Seite mit maximal x Punkten.
- Navigation Präfix, der Präfix steht vor der kompletten Navigation und kann frei konfiguriert werden.
- Navigation Suffix, der Suffix steht hinter der kompletten Navigation und kann frei konfiguriert werden.
- Navigation Buttons, die Schaltflächen für vorwärts und rückwärts können im aktiven und deaktivierten Zustand frei definiert werden.
- Navigations Punkte, hier werden die Seitenlinks definiert (aktiv/deaktiviert).
- Topartikel Template, der Topartikel stellt eine Funktion da die den 1. Artikel der ersten Seite extra darstellen kann. Dabei können die den Top-Artikel auch ganz aus den folgenden Templates herausnehmen.
- Content1/Content2 Template, in diesen Templates können zwei unterschiedliche Ausgaben des einen Artikels oder verschiedene Artikel ausgegeben werden.
- Content1/Content2 Schleife, hier stellen Sie die Anzahl von Artikeln eine die auf einer Seite dargestellt werden.
- Verbindungs Template, das Verbindungs Template (Merge) verbindet die anderen Templates zu einer einheitlichen Ausgabe.
- Anchors, das sind Anker im Html-Code.
[bearbeiten] Templates
Templates können nur einzelne Variablen oder auch ganze Html-Seiten (Vorlagen) enthalten.
Die Ausgabe von Variablen wird über die Scripttags gesteuert. Dabei lassen diese Tags Verschachtelung und Abhängigkeiten zu, um auch die verschiedensten Inhalte Korrekt darzustellen.
ScriptTags
Die Script-Tags sind dafür da bestimmte Ausgabetypen zu selektieren und zu ordnen. Unterstützt werden nur die Offiziellen DeDi-Typen:
Typen und ihre Id aus der dedi:type
- 1 text
- 2 wysiwyg
- 3 textarea
- 4 img
- 5 imgdescr
- 6 link
- 7 linkdescr
- 8 linktarget
- 9 sourcecode
- 10 file
- 11 filedescr
- 12 filetarget
- 101 wysiwyg:spaw
Die Scripttags Legende:
- {text}, ist der 1. text-Typ in einem Content
- {text:x}, das x (void:integer) bezeichnet den x-ten text-Typ in einem Container (Achtung: die Nummerierung ist relativ zu der Anzahl der gefundenen Inhalte!)
- {textarea}, ist der 1. textarea-Typ in einem Content
- {textarea:x}, das x (void:integer) bezeichnet den x-ten textarea-Typ in einem Container
- {wysiwyg}, ist der 1. wysiwyg-Typ in einem Content
- {wysiwyg:x}, das x (void:integer) bezeichnet den x-ten wysiwyg-Typ in einem Container
- {wysiwyg_spaw}, ist der 1. wysiwyg:spaw-Typ in einem Content
- {wysiwyg_spaw:x}, das x (void:integer) bezeichnet den x-ten wysiwyg:spaw-Typ in einem Container
- {img}, zeigt das 1. Image in einem Content
- {img:x}, das x (void:integer) bezeichnet die Location des x-ten Images in einem Content
- {img_desc}, ist die Bezeichnung/Name des 1. Images in einem Content
- {img_desc:x}, das x (void:integer) bezeichnet den Bezeichnung/Name des x-ten Images in einemContent
- {link_url}, -> siehe {img_url}
- {link_url:x}, -> siehe {img_url:x}
- {link_desc}, -> siehe {img_desc}
- {link_desc:x}, -> siehe {img_desc:x}
- {link_target}, -> siehe {img_desc}
- {link_target:x}, -> siehe {img_desc:x}
- {file}, -> siehe {img}
- {file:x}, -> siehe {img:x}
- {file_desc}, -> siehe {img_desc}
- {file_desc:x}, -> siehe {img_desc:x}
- {file_target}, -> siehe {img_desc}
- {file_target:x}, -> siehe {img_desc:x}
- {url_to_articel}, ist der interne Link zu dem gefundenen Content/Artikel
- {exist yyy[:x]}/{/exist}, ein Konstrukt das ein Variabelenabfrage für yyy:x (wobei :x optional ist!) ausführt und nur bei Vorhandensein der innere Code (Html/Script) ausgeführt wird. Man kann somit im Template sicherstellen das ein Layout wie im Beispiel:
{exist text:3}<b>{text:3}</b><br>{/exist}
nicht ausgeführt wird, wenn die Variable nicht existiert oder leer ist. - {loop yyy}/{/loop}, ein Konstrukt das eine Schleife um den Contenttype yyy (ohne :x) ausführt, man kann somit im Template ein Layout wie im Beispiel:
<ul>{loop text}<li><b>{text}</b></li>{/loop}</ul>
mehrfach durchlaufen und alle Inhalte von z.B.: {text} (text:1, text:2, text:3 usw.) werden wiedergeben. - {each xxx}, ist eine vereinfachte Form von {loop xxx}{xxx}{/loop}
- Cuttexte, das Attribut [cut:xy] ist eine optionale Einstellung (ohne die eckigen [...] Klammern) um den Text auf xy Zeichen zu kürzen! z.B.: {text:1 cut:100} - Damit kann man Teaser erzeugen die 100 Zeichen lang sind Minus das Letzte (überhängige) Wort aus dem erstem Textfeld einer Seite.
- Extra Attribute für {img} & {file}, [ thumb]/[ url]/[ name]: {img thumb} - zeigt nur das Thumbnail an (ausser .gif), {img url} - übergibt den Pfad, {img name} - übergibt den Namen.
- Cuttexte & Attribute können auch mit {each} kombiniert werden.
Beispiele
Die Script-Tags dürfen variabel kombiniert werden, um eine saubere Anzeige des gefundenen Contents bei höchstmöglicher Variabilität zu leisten!
Beispiel1:
das Beispiel gibt immer den ersten gefundenen text-Typ + textarea:1 aus, und nur wenn vorhanden auch text:2 + textarea:1 und text:3 + textarea:1 inklusive der umfassenden <b>...</b><br> Tags
<b>{text}{textarea:1}</b><br>
{exist text:2}
<b>{text:2}{textarea:1}</b><br>
{/exist}
{exist text:3}
<b>{text:3}{textarea:1}</b><br>
{/exist}
Beispiel2:
das Beispiel zeigt den Aufbau einer Liste mit Artikel-Teasern + Bild
<ul>
{loop text}
<li><b>{img}{text}</b></li>
{/loop}
</ul>
[bearbeiten] Suchmuster
[bearbeiten] Einsatzbeispiele
Der Categorywalker kann als Newsgrabber, DokuWeb, Redaktionstool oder Galery eingesetzt werden.
Sicherlich gibt es noch viele andere Möglichkeiten, das auszuprobieren ist ja Ihr Job ;)
Weitere, ausführliche Beispiele siehe Anhang A.
[bearbeiten] Ausblick/Weiterentwicklung
Der Categorywalker wird noch einige Updates erfahren, welcher Art können Sie der Doku entnehmen.
Die v0.64.4 ist die aktuelle Stabel-Version, bis zur v0.7 werden zumindest einige Code Optimierungen durchgeführt. Bis zur DeDi 1.0 wird die Version 0.8 released.
[bearbeiten] Grußwort
Dank an alle DeDi-Entwickler, die Cores, die Modulentwickler und die netten Testuser :)
Gruß STam

