Codebeispiele - Sitemap
Inhaltsverzeichnis
Sitemap
Beschreibung:
Eine Sitemap einbinden
Voraussetzungen:
- einen Artikel, der das Modul Dynamische Navigation einbindet
Snippet:
[php,N]
<?php
// Testen, ob die Sitemap im Menü angewählt wurde
if ((isset($_GET['read_group']) && $_GET['read_group'] == <ID der Sitemap Gruppe>)
|| (isset($_GET['read_category']) && $_GET['read_category'] == <ID der Sitemap Gruppe>)) {
$GLOBALS["DynPG"]->saveCurrentParams(); // aktuelle Parametereinstellungen speichern
$GLOBALS["DynPG"]->SetParam_PlugIn_Template('DPGdynmenu', 'sitemap'); // Sitemap-Template auswählen
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'hide_not_public_groups', true); // versteckte Gruppen ausblenden
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'full_load', true); // alle Gruppen und Artikel ausgeben
$GLOBALS["DynPG"]->SetParam_A_Anytime(true); // Sitemap muss immer angezeigt werden $GLOBALS["DynPG"]->SetParam_A_CategoryNavigation(false); // Kategorienavigation (Gruppe > Untergruppe > Artikel) ausblenden $GLOBALS["DynPG"]->SetParam_A_PrintNavigation(false); // Drucken-Link ausblenden $GLOBALS["DynPG"]->SetParam_A_ArticleHeader(false); // Artikelkopf (Titel, Lead-Bild und Lead-Text) ausblenden $GLOBALS["DynPG"]->SetParam_A_Article(1); // Artikelnummer der dynamischen Navigation $GLOBALS["DynPG"]->Write_Article(); // Sitemap ausgeben
$GLOBALS["DynPG"]->loadSavedParams(); // vorherige Parametereinstellungen wiederherstellen }
?>
<toggledisplay status="hide" showtext="▼ Quelltext anzeigen" hidetext="▼ Quelltext verbergen" linkstyle="font-size:normal;">
index.php:
[php,N]
<?php
require '../../dynpg/getcontent.php'; // DynPG-Funktionalität einbinden
$GLOBALS["DynPG"]->SetParam_PathToRoot('../../dynpg/'); // DynPG-Pfad setzen
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US"> <head>
<title>Sitemap</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="style.css" /> <link rel="stylesheet" type="text/css" href="sitemap.css" />
</head>
<body>
Sitemap
<?php $GLOBALS["DynPG"]->Write_AllGroups(); // Gruppenlisten-Ansicht ausgeben (standardmäßig abhängig vom Navigationskontext) $GLOBALS["DynPG"]->SetParam_AA_CategoryNavigation(false); // Kategorienavigation (Gruppe > Untergruppe > Artikel) ausblenden $GLOBALS["DynPG"]->Write_AllArticles(); // Artikdelliste-Ansicht ausgeben (standardmäßig abhängig vom Navigationskontext) $GLOBALS["DynPG"]->SetParam_A_Anytime(false); // Parameter wieder auf false setzen (wurde bei der Navigation auf true gesetzt) $GLOBALS["DynPG"]->Write_Article(); // Artikel-Detailansicht ausgeben
// Testen, ob die Sitemap im Menü angewählt wurde if ((isset($_GET['read_group']) && $_GET['read_group'] == 16)
</toggledisplay>
XML Sitemap
Beschreibung:
Eine XML Sitemap einbinden. Die eigentliche Sitemap wird in einer separaten Datei erzeugt. Die Einbindung kann über einen Link auf die Datei oder über das Navigationsmenü erfolgen.
Voraussetzungen:
- einen Artikel, der das Modul Dynamische Navigation einbindet
Snippet:
sitemap.xml.php: <code>[php,N] <?php
require '../../dynpg/getcontent.php'; // DynPG-Funktionalität einbinden
$GLOBALS["DynPG"]->SetParam_PathToRoot('../../dynpg/'); // DynPG-Pfad setzen
echo '<?xml version="1.0" encoding="UTF-8"?>';
$GLOBALS["DynPG"]->SetParam_PlugIn_Template('DPGdynmenu', 'xml-sitemap'); // XML-Sitemap-Template auswählen
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'hide_not_public_groups', true); // versteckte Gruppen ausblenden
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'full_load', true); // alle Gruppen und Artikel ausgeben
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_page_groups', 'index.php'); // Verweise auf die Hauptdatei der Webseite setzen
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_page_articles', 'index.php'); // Verweise auf die Hauptdatei der Webseite setzen
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'href_page_detail', 'index.php'); // Verweise auf die Hauptdatei der Webseite setzen
$GLOBALS["DynPG"]->SetupTemplate('plugin_content'); // Template setzen, welches nur die XML-Anweisungen ausgibt
$GLOBALS["DynPG"]->SetParam_A_Anytime(true); // Sitemap muss immer angezeigt werden
$GLOBALS["DynPG"]->SetParam_A_Article(1); // Artikelnummer der dynamischen Navigation
$GLOBALS["DynPG"]->Write_Article(); // Sitemap ausgeben
?> </code>
<toggledisplay status="hide" showtext="▼ Quelltext anzeigen" hidetext="▼ Quelltext verbergen" linkstyle="font-size:normal;"> index.php: <code>[php,N] <?php
require '../../dynpg/getcontent.php'; // DynPG-Funktionalität einbinden
$GLOBALS["DynPG"]->SetParam_PathToRoot('../../dynpg/'); // DynPG-Pfad setzen
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US"> <head>
<title>XML Sitemap</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
XML Sitemap
<?php $GLOBALS["DynPG"]->Write_AllGroups(); // Gruppenlisten-Ansicht ausgeben (standardmäßig abhängig vom Navigationskontext) $GLOBALS["DynPG"]->Write_AllArticles(); // Artikdelliste-Ansicht ausgeben (standardmäßig abhängig vom Navigationskontext) $GLOBALS["DynPG"]->SetParam_A_Anytime(false); // Parameter wieder auf false setzen (wurde bei der Navigation auf true gesetzt) $GLOBALS["DynPG"]->Write_Article(); // Artikel-Detailansicht ausgeben ?>
</body> </html> </code>
sitemap.xml.php: <code>[php,N] <?php
require '../../dynpg/getcontent.php'; // DynPG-Funktionalität einbinden
$GLOBALS["DynPG"]->SetParam_PathToRoot('../../dynpg/'); // DynPG-Pfad setzen
echo '<?xml version="1.0" encoding="UTF-8"?>';
$GLOBALS["DynPG"]->SetParam_PlugIn_Template('DPGdynmenu', 'xml-sitemap'); // XML-Sitemap-Template auswählen
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'hide_not_public_groups', true); // versteckte Gruppen ausblenden
$GLOBALS["DynPG"]->SetParam_PlugIn_Param('DPGdynmenu', 'full_load', true); // alle Gruppen und Artikel ausgeben
$GLOBALS["DynPG"]->SetupTemplate('plugin_content'); // Template setzen, welches nur die XML-Anweisungen ausgibt
$GLOBALS["DynPG"]->SetParam_A_Anytime(true); // Sitemap muss immer angezeigt werden
$GLOBALS["DynPG"]->SetParam_A_Article(1); // Artikelnummer der dynamischen Navigation
$GLOBALS["DynPG"]->Write_Article(); // Sitemap ausgeben
?> </code>
style.css: <code>[css,N] /* Navigation */ div#navigation{
/* Angaben für ein zweispaltiges Layout */ float:left; width:150pt; margin-left:5pt; margin-right:5pt; border:1px solid #AAA;
}
/* Inhalt */ div#inhalt {
/* Angaben für ein zweispaltiges Layout */ margin-left:165pt; margin-right:5pt;
}
/* Alle divs innerhalb des Navigationsmenüs verschieben ihren Inhalt
um 10 pt nach rechts. Durch die Verschaltelung von divs innerhalb des Menüs erhalten wir so eine Einrückung. */
div#course_categories_menu div {
padding-left:10pt;
}
/* Alle links innerhalb des Navigationsmenüs */ div#course_categories_menu a {
text-decoration:none;
} </code>
</toggledisplay>