Sitemap: Unterschied zwischen den Versionen

Aus DynPG-Wiki
Wechseln zu: Navigation, Suche
K
(Infobox-Templates eingefügt)
 
(6 dazwischenliegende Versionen des gleichen Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 
[[Kategorie:Integration in eine Webseite]]
 
[[Kategorie:Integration in eine Webseite]]
 +
Eine Sitemap gibt Besuchern Ihrer Webseite einen Überblick über den gesamten Inhalt. Alle Gruppen und Artikel werden dabei in strukturierter und zumeist hierarchischer Form angezeigt. Eine Sitemap ist neben den [[Meta-Daten und dynamische Seitentitel|Meta-Daten]] ein weiteres Werkzeug zur Suchmaschinenoptimierung.
 +
 
== Einrichten der Sitemap ==
 
== Einrichten der Sitemap ==
Eine Sitemap gibt Besuchern Ihrer Webseite einen Überblick über den gesamten Inhalt, d.h. die enthaltenen Gruppen und Artikel. In DynPG wird eine Sitemap basierend auf dem Navigationsmenü erstellt. Für die Generierung der Übersicht müssen folgende Schritte durchgeführt werden:
+
In DynPG wird eine Sitemap basierend auf dem Navigationsmenü erstellt. Für die Generierung der Übersicht müssen folgende Schritte durchgeführt werden:
# es muss ein [[Implementation eines kompletten Hauptmenüs|dynamisches Menü]] samt zugehörigem Artikel erstellt werden
+
# es muss ein [[Dynamische Navigation|dynamisches Navigationsmenü]] samt zugehörigem Artikel erstellt werden
 
# anschließend wird eine Seite erstellt, welche die Sitemap ausgibt
 
# anschließend wird eine Seite erstellt, welche die Sitemap ausgibt
 
# und zuletzt muss dieser Artikel in die Webseite integriert werden.
 
# und zuletzt muss dieser Artikel in die Webseite integriert werden.
Zeile 8: Zeile 10:
 
Im Folgenden werden wir uns mit diesen drei Schritten befassen und anschließend noch darauf eingehen, wie wir bestimmte Artikel in der Sitemap ausblenden können. Danach können Sie auch das [[Tutorial - Einbau einer Sitemap]] lesen, welches diese Schritte nocheinmal beispielhaft durchgeht und einen alternativen Weg für die Einbindung der Sitemap in die Webseite zeigt.
 
Im Folgenden werden wir uns mit diesen drei Schritten befassen und anschließend noch darauf eingehen, wie wir bestimmte Artikel in der Sitemap ausblenden können. Danach können Sie auch das [[Tutorial - Einbau einer Sitemap]] lesen, welches diese Schritte nocheinmal beispielhaft durchgeht und einen alternativen Weg für die Einbindung der Sitemap in die Webseite zeigt.
  
=== Artikel mit "Dynamisches Menü" erstellen ===
+
=== Erstellen des dynamischen Menüs ===
[[Bild:sitemap1.png|600px]]
+
Sofern Sie noch kein dynamisches Menü erstelt haben, finden Sie hierzu eine ausführliche Anleitung in den folgenden Artikeln:
 +
* [[Implementation eines kompletten Hauptmenüs#Erstellen des Navigationsmenüs|Implementation eines kompletten Hauptmenüs > Erstellen des Navigationsmenüs]]
 +
* [[DynPG Module einbinden]]
 +
* [[Dynamische Navigation#Einrichten|Dynamische Navigation einrichten]]
  
# Falls noch kein Dynamisches Menü in DynPG erstellt wurde: zu den Texten wechseln.
+
=== Sitemap erstellen ===
# Ein Dynamisches Menü über das untere rechte Bild in den Text einfügen. ''„Dynamisches Menü einfügen“'' wird angezeigt, sobald man mit der Maus darüber fährt.
+
Um eine Sitemap zu erstellen, können wir das folgende Snippet verwenden:
# Im Text erscheint nun diese Grafik ''„Dynamisches Menü“''
+
# Den „Menü“-Artikel nun in den Ordner ''„Diverse Artikel“'' (verschieben)
+
# Nun nur noch auf den Knopf ''„Text & zugehörigen Artikel erstellen“'' klicken.
+
  
=== Artikel mit Sitemap erstellen ===
+
'''Sitemap-Snippet'''
[[Bild:sitemap2.png|600px]]
+
<code>[php,N]
 +
<?php
 +
// Sitemap Template für die dynamische Navigation setzen
 +
$DynPG->SetParam_PlugIn_Template('DPGdynmenu', 'sitemap');
 +
// Versteckte Gruppen ausblenden
 +
$DynPG->SetParam_PlugIn_Param('DPGdynmenu', 'hide_not_public_groups', TRUE);
 +
// Gruppenbaum expandieren
 +
$DynPG->SetParam_PlugIn_Param('DPGdynmenu', 'full_load', TRUE);
  
Nun auf ''„+ Artikel Formular anzeigen“'' klicken
+
$DynPG->SetParam_A_Anytime(true);            // Sitemap immer anzeigen
 +
$DynPG->SetParam_A_CategoryNavigation(false); // Kategorienavigation nicht anzeigen
 +
$DynPG->SetParam_A_PrintNavigation(false);    // Drucken-Button nicht anzeigen
 +
$DynPG->SetParam_A_ArticleHeader(false);      // Artikelkopf nicht anzeigen
 +
$DynPG->SetParam_A_Article(<ID>);            // ID des Artikels setzen, der das dynamische Menü enthält
  
[[Bild:sitemap3.png|600px]]
+
$DynPG->Write_Article();                      // Sitemap ausgeben
 +
?>
 +
</code>
  
# Den Titel ''„Sitemap“'' eingeben
+
{{Caution
# Auf den Knopf ''„Erstellen“'' klicken
+
|Sie müssen in diesem Snippet noch den Platzhalter <tt><ID></tt> durch die ID des Artikels ersetzen, der die dynamische Navigation enthält.}}
  
[[Bild:sitemap4.png|600px]]
+
Hier wird zuerst das Template für die dynamische Navigation auf <tt>sitemap</tt> gesetzt, was die Ausgabe des Navigationsmenüs als Sitemap bewirkt. Danach werden die versteckten Gruppen ausgeblendet und das Anzeigen aller Gruppen festgelegt.
  
Der Sitemap-Artikel ist nun im Ordner ''„Diverse Artikel“'' mit der Nummer 46 zu sehen.
+
=== Sitemap in die Webseite einbinden ===
 +
Um die Sitemap in Ihre Webseite einzubinden, gibt es verschiedene mögliche Wege. Einer ist die Erstellung einer neuen Webseite. Erstellen Sie dazu eine Kopie der Datei, welche das Layout der Seite festlegt und das dynamische Menü sowie die Inhaltsanzeige einbindet (in der Regel <tt>index.php</tt>). Benennen Sie die Kopie in <tt>sitemap.php</tt> um. Erstellen Sie nun im Backend auf der obersten Gruppenebene eine neue Gruppe mit dem Namen ''Sitemap''. Wir müssen nun das dynamische Navigationsmenü so anpassen, das bei einem Klick auf den Menüpunkt ''Sitemap'' die Datei <tt>sitemap.php</tt> aufgerufen wird. In der Datei <tt>sitemap.php</tt> möchten wir wiederum für alle Menüpunkte außer ''Sitemap'' auf die Datei <tt>index.php</tt> verlinken.
  
 +
{{Note
 +
|Einen anderen Weg zum Einbinden einer Sitemap, der auf das Erstellen einer Kopie verzichtet, finden Sie im [[Tutorial - Einbau einer Sitemap]].}}
  
=== Sitemap-Artikel in Website einbinden ===
+
==== Anpassen der Datei index.php ====
[[Bild:sitemap5.jpg|600px]]
+
Um nun für den Menüpunkt ''Sitemap'' auf die Datei <tt>sitemap.php</tt> zu verlinken, müssen wir in dieser Datei folgende Anweisung vor die Ausgabe des Navigationsmenüs schreiben:
  
# Wenn die Webseite über ein dynamisches Menü von DynPG verfügt, eine Kopie von der index.php mit dem Namen sitemap.php erstellen.
+
'''<tt>index.php</tt> - Navigationsmenü'''
# Anstelle vom ''„Einzelnen Artikel“'' Code, nun den Sitemapcode einfügen. Ganz wichtig ist auch hier, dass der Headercode und der CSS-Code drin sind!
+
<code>[php,N]
 +
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_subpages', array(<ID> => '../<Pfad zu ihrer Webseite>/sitemap.php{query}'));
 +
</code>
  
[[Bild:sitemap6.png|600px]]
+
{{Caution
 +
|Sie müssen in dieser Anweisung noch den Platzhalter <tt><ID></tt> durch die ID der Sitemap-Gruppe ersetzen, die Sie zuvor erstellt haben. <tt><Pfad zu ihrer Webseite></tt> muss durch den relativen Pfad zur Datei <tt>sitemap.php</tt> ersetzt werden, ausgehend vom DynPG Hauptverzeichnis.}}
  
Im Array sind die IDs der einzelnen Ordner (Die auch als Rubriken wirken), die in der nächsten Abbildung gut zu sehen sind.
+
==== Anpassen der Datei sitemap.php ====
 +
Ersetzen Sie die Inhaltsanzeige, d.h. die Anweisungen <tt>$DynPG->Write_AllGroups()</tt>, <tt>$DynPG->Write_AllArticles()</tt>, <tt>$DynPG->Write_Article()</tt> usw. durch das obige Sitemap-Snippet.
  
Den einzigen Wert, den wir verändern, ist hier bei
+
In der Datei <tt>sitemap.php</tt> schreiben wir nun außerdem folgende Anweisung vor die Ausgabe des Navigationsmenüs, um von dieser Datei wieder zurück auf die Datei <tt>index.php</tt> zu verlinken:
 +
 
 +
'''<tt>sitemap.php</tt> - Navigationsmenü'''
 
<code>[php,N]
 
<code>[php,N]
$GLOBALS["DynPG"]->SetParam_A_Article(1);
+
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_page_groups', '../<Pfad zu ihrer Webseite>/index.php');
 +
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_page_articles', '../<Pfad zu ihrer Webseite>/index.php');
 +
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_subpages', array(<ID> => '../<Pfad zu ihrer Webseite>/sitemap.php{query}'));
 
</code>
 
</code>
von 1 auf 46 (Den Wert haben wir auch weiter oben schon als ''Nummer'' gesehen).
 
  
=== Unerwünschte Gruppen ausblenden ===
+
{{Caution
[[Bild:sitemap7.png|600px]]
+
|Sie müssen in dieser Anweisung noch den Platzhalter <tt><ID></tt> durch die ID der Sitemap-Gruppe ersetzen, die Sie zuvor erstellt haben. <tt><Pfad zu ihrer Webseite></tt> muss durch den relativen Pfad zur Datei <tt>sitemap.php</tt> ersetzt werden, ausgehend vom DynPG Hauptverzeichnis.}}
  
Hier nochmal die Abbildung mit den Rubrik-Ordner. Die grauen Ordner wurden ausgeblendet, damit sie nicht im Menü auftauchen. Diese sollten unsichtbar bleiben. Damit die Ordner aber auch in der Sitemapansicht nicht angezeigt werden, müssen wir diese mittels CSS ausblenden. Die CSS-Datei liegt im Verzeichnis: <tt>Ihr_Installiertes_CMS/plugins/DPGdynpgmenu/styles/sitemap.css</tt>. Ganz unten ist der Code zu sehen:
+
=== CSS anpassen ===
<code>[css,N]
+
div#sm_course_categories_menu div#sm_li_group_id_1 { display: none; }
+
</code>
+
Nun einfach den Wert 1 durch den ID Wert ersetzen und ggf. den Code für weitere Ordner kopieren.
+
<code>[css,N]
+
div#sm_course_categories_menu div#sm_li_group_id_6 { display: none; }
+
div#sm_course_categories_menu div#sm_li_group_id_16 { display: none; }
+
div#sm_course_categories_menu div#sm_li_group_id_22{ display: none; }
+
</code>
+
Hier habe ich die Nummer 15 nicht ausgeblendet, weil ich den Ordner Kontakt anzeigen will.
+
  
 +
Um die einzelnen Punkte der Sitemap nun noch entsprechend der Hierarchie einzurücken, können wir die folgende CSS Anweisung zum Stylesheet hinzufügen:
  
''Ursprünglicher Autor: Marco Ris''
+
<code>[css,N]
 +
div#sm_course_categories_menu div {
 +
  margin-left:10pt;
 +
}
 +
</code>

Aktuelle Version vom 26. September 2011, 16:46 Uhr

Eine Sitemap gibt Besuchern Ihrer Webseite einen Überblick über den gesamten Inhalt. Alle Gruppen und Artikel werden dabei in strukturierter und zumeist hierarchischer Form angezeigt. Eine Sitemap ist neben den Meta-Daten ein weiteres Werkzeug zur Suchmaschinenoptimierung.

Einrichten der Sitemap

In DynPG wird eine Sitemap basierend auf dem Navigationsmenü erstellt. Für die Generierung der Übersicht müssen folgende Schritte durchgeführt werden:

  1. es muss ein dynamisches Navigationsmenü samt zugehörigem Artikel erstellt werden
  2. anschließend wird eine Seite erstellt, welche die Sitemap ausgibt
  3. und zuletzt muss dieser Artikel in die Webseite integriert werden.

Im Folgenden werden wir uns mit diesen drei Schritten befassen und anschließend noch darauf eingehen, wie wir bestimmte Artikel in der Sitemap ausblenden können. Danach können Sie auch das Tutorial - Einbau einer Sitemap lesen, welches diese Schritte nocheinmal beispielhaft durchgeht und einen alternativen Weg für die Einbindung der Sitemap in die Webseite zeigt.

Erstellen des dynamischen Menüs

Sofern Sie noch kein dynamisches Menü erstelt haben, finden Sie hierzu eine ausführliche Anleitung in den folgenden Artikeln:

Sitemap erstellen

Um eine Sitemap zu erstellen, können wir das folgende Snippet verwenden:

Sitemap-Snippet

<?php
// Sitemap Template für die dynamische Navigation setzen
$DynPG->SetParam_PlugIn_Template('DPGdynmenu', 'sitemap');
// Versteckte Gruppen ausblenden
$DynPG->SetParam_PlugIn_Param('DPGdynmenu', 'hide_not_public_groups', TRUE);
// Gruppenbaum expandieren
$DynPG->SetParam_PlugIn_Param('DPGdynmenu', 'full_load', TRUE);
 
$DynPG->SetParam_A_Anytime(true);             // Sitemap immer anzeigen
$DynPG->SetParam_A_CategoryNavigation(false); // Kategorienavigation nicht anzeigen
$DynPG->SetParam_A_PrintNavigation(false);    // Drucken-Button nicht anzeigen
$DynPG->SetParam_A_ArticleHeader(false);      // Artikelkopf nicht anzeigen
$DynPG->SetParam_A_Article(<ID>);             // ID des Artikels setzen, der das dynamische Menü enthält
 
$DynPG->Write_Article();                      // Sitemap ausgeben
?>
Caution.png Achtung: Sie müssen in diesem Snippet noch den Platzhalter <ID> durch die ID des Artikels ersetzen, der die dynamische Navigation enthält.

Hier wird zuerst das Template für die dynamische Navigation auf sitemap gesetzt, was die Ausgabe des Navigationsmenüs als Sitemap bewirkt. Danach werden die versteckten Gruppen ausgeblendet und das Anzeigen aller Gruppen festgelegt.

Sitemap in die Webseite einbinden

Um die Sitemap in Ihre Webseite einzubinden, gibt es verschiedene mögliche Wege. Einer ist die Erstellung einer neuen Webseite. Erstellen Sie dazu eine Kopie der Datei, welche das Layout der Seite festlegt und das dynamische Menü sowie die Inhaltsanzeige einbindet (in der Regel index.php). Benennen Sie die Kopie in sitemap.php um. Erstellen Sie nun im Backend auf der obersten Gruppenebene eine neue Gruppe mit dem Namen Sitemap. Wir müssen nun das dynamische Navigationsmenü so anpassen, das bei einem Klick auf den Menüpunkt Sitemap die Datei sitemap.php aufgerufen wird. In der Datei sitemap.php möchten wir wiederum für alle Menüpunkte außer Sitemap auf die Datei index.php verlinken.

Note.png Bemerkung: Einen anderen Weg zum Einbinden einer Sitemap, der auf das Erstellen einer Kopie verzichtet, finden Sie im Tutorial - Einbau einer Sitemap.

Anpassen der Datei index.php

Um nun für den Menüpunkt Sitemap auf die Datei sitemap.php zu verlinken, müssen wir in dieser Datei folgende Anweisung vor die Ausgabe des Navigationsmenüs schreiben:

index.php - Navigationsmenü

$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_subpages', array(<ID> => '../<Pfad zu ihrer Webseite>/sitemap.php{query}'));
Caution.png Achtung: Sie müssen in dieser Anweisung noch den Platzhalter <ID> durch die ID der Sitemap-Gruppe ersetzen, die Sie zuvor erstellt haben. <Pfad zu ihrer Webseite> muss durch den relativen Pfad zur Datei sitemap.php ersetzt werden, ausgehend vom DynPG Hauptverzeichnis.

Anpassen der Datei sitemap.php

Ersetzen Sie die Inhaltsanzeige, d.h. die Anweisungen $DynPG->Write_AllGroups(), $DynPG->Write_AllArticles(), $DynPG->Write_Article() usw. durch das obige Sitemap-Snippet.

In der Datei sitemap.php schreiben wir nun außerdem folgende Anweisung vor die Ausgabe des Navigationsmenüs, um von dieser Datei wieder zurück auf die Datei index.php zu verlinken:

sitemap.php - Navigationsmenü

$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_page_groups', '../<Pfad zu ihrer Webseite>/index.php');
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_page_articles', '../<Pfad zu ihrer Webseite>/index.php');
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_subpages', array(<ID> => '../<Pfad zu ihrer Webseite>/sitemap.php{query}'));
Caution.png Achtung: Sie müssen in dieser Anweisung noch den Platzhalter <ID> durch die ID der Sitemap-Gruppe ersetzen, die Sie zuvor erstellt haben. <Pfad zu ihrer Webseite> muss durch den relativen Pfad zur Datei sitemap.php ersetzt werden, ausgehend vom DynPG Hauptverzeichnis.

CSS anpassen

Um die einzelnen Punkte der Sitemap nun noch entsprechend der Hierarchie einzurücken, können wir die folgende CSS Anweisung zum Stylesheet hinzufügen:

div#sm_course_categories_menu div {
  margin-left:10pt;
}