Google Sitemap XML für 4.8x mit und ohne MR
-
- Beiträge: 486
- Registriert: Do 23. Feb 2006, 19:42
- Wohnort: Tirschenreuth / Oberpfalz / Bayern
- Kontaktdaten:
Re: Google Sitemap XML für 4.8x mit und ohne MR
Servus Andreas,onda88 hat geschrieben:Code: Alles auswählen
"Fatal error: Error: Can't include /home/wusr30072/www/cms/includes/functions.input.helper.php in /home/wusr30072/www/contenido/includes/api/functions.api.general.php on line 181"!
ist die Datei functions.input.helper.php den da wo sie hin soll und ist sie für php lesbar?
Sie müsste wie di Fehlermeldung schon sagt in cms/includes/ liegen
Gruß Holger
Träumer haben vielleicht keinen Plan, aber Realisten haben keine Vision.
Handgewickelte Glasperlen Facebook Google+
Träumer haben vielleicht keinen Plan, aber Realisten haben keine Vision.
Handgewickelte Glasperlen Facebook Google+
-
- Beiträge: 77
- Registriert: Sa 30. Mai 2009, 09:11
- Kontaktdaten:
Re: Google Sitemap XML für 4.8x mit und ohne MR
eigentlich ist die googlesitemap hier ja sehr gut und funktioniert auch sehr gut ... das einzige was mich derzeit ein wenig wurmt ist, dass sie sehr global arbeitet und jede einzele Seite rausgeschmissen werden muss ...
gibt es die möglichkeit das skript irgendwie so anzupassen, dass analog zur artikelliste advanced ein seitenbaum ausgewählt werden kann, die die sitemap dann bedient ... also sozusagen die erstellung mehrerer einzelner sitemaps möglich macht.
wäre nämlich teilweise bei der google-verfolgung hilfreich
gibt es die möglichkeit das skript irgendwie so anzupassen, dass analog zur artikelliste advanced ein seitenbaum ausgewählt werden kann, die die sitemap dann bedient ... also sozusagen die erstellung mehrerer einzelner sitemaps möglich macht.
wäre nämlich teilweise bei der google-verfolgung hilfreich
Re: Google Sitemap XML für 4.8x mit und ohne MR
Hallo!
Funktioniert bei euch die Sitemap, wenn sie HTML-Kommentare beinhaltet (wo der Seitentitel drin steht)?
Bsp.:
Ich muss nämlich immer den Teil im Modul rauslöschen, der dafür zuständig ist diese HTML-Kommentare auszugeben, sonst erhalte ich von Google folgende Fehlermeldung:
Grüße, onda
Funktioniert bei euch die Sitemap, wenn sie HTML-Kommentare beinhaltet (wo der Seitentitel drin steht)?
Bsp.:
Code: Alles auswählen
<!-- SEITENTITEL -->
<url>
<loc>http://www.url.com/</loc>
<lastmod>2009-09-30T20:00:00+02:00</lastmod>
<changefreq>weekly</changefreq>
</url>
<!-- SEITENTITEL -->
<url>
<loc>http://www.url.com/unterseite.html</loc>
<lastmod>2009-09-30T20:00:00+02:00</lastmod>
<changefreq>weekly</changefreq>
</url>
...
Sobald in der Sitemap keine Kommentare mehr vorkommen, wird sie von Google sofort akzeptiert...Wir konnten Ihre XML-Sitemap nicht lesen. Sie dürfte einen Eintrag enthalten, den wir nicht verarbeiten konnten. Bitte validieren Sie Ihre XML-Sitemap, bevor Sie sie neu einreichen.
Grüße, onda
Re: Google Sitemap XML für 4.8x mit und ohne MR
Hi, ich nehme an, so kannst Du aber nichts in der zweiten Sprache konfigurieren, oder?Polardrache hat geschrieben:Ich hab bei mir eine zusätzliche Schleife für die Sprachen direkt nach der Header-Ausgabe eingebaut. Allerdings musst Du den Output-Code von Hand anpassen, wenn Du mehr Sprachen hast.
Ich habe eine viersprachige Seite, und will gerne für jede Sprache die Konfigurationsmöglichkeiten haben (Prio, Change-freq, Ausschluß ...)
Um alles in einer einzelnen sitempa.xml zu haben, werde ich wohl alle vier mergen müssen, oder gibt es eine besser Möglichkeit?
Re: Neue Version der XML Sitemaps für Contenido >= 4.8.9
Hey xmurrix,xmurrix hat geschrieben: Download:
- Contenido_module_XML_Sitemaps_20090126.zip
Tausend Dank dafür. Find ich sehr hilfreich. Einzig die Option, nicht nur auf Kategorien, sondern auch auf Artikel bezogen Ausnahmen zu definieren, würde ich mir noch wünschen
Für mehrsprachige Sites mit AMR habe ich mir was einfallen lassen:
Datei sitemap.php im Ordner /cms/ anlegen. Folgende Zeilen reinkopieren:
Code: Alles auswählen
<?php
$arr_langs = explode(',', $lang);
# debug:
# header("Content-type: text/plain");
$dir = preg_replace("/\w+\.php\d?/", "", $_SERVER['SCRIPT_NAME']);
$url = 'http://' .$_SERVER['SERVER_NAME'] .$dir .'front_content.php?idart=' .$_GET['idart'] .'&lang='; # language parameter is set in for loop!
$data=false;
for($i=0; $i<count($arr_langs); $i++) {
$urlsinlang = '';
$file = fopen($url .$arr_langs[$i], "r");
while(!feof($file))
$urlsinlang .=fgets($file, 4096);
fclose($file);
# extract urlset and wrapping stuff
preg_match("/^(<\?xml[^>]+\?>\s*<urlset[^>]+>\s*)(.+)(<\/urlset>\s*)$/ms", $urlsinlang, $matches);
# opening tag
if($i==0) {
header("Content-type: text/xml");
echo $matches[1];
}
# urls for this language
echo "\n" .'<!-- :::::::::::: urlset for lang ID ' .$arr_langs[$i] .': :::::::::::: -->' ."\n";
echo $matches[2];
# closing tag
if($i==count($arr_langs)-1) {
echo $matches[3];
}
}
?>
.htaccess anpassen:
Code: Alles auswählen
(...)
# One RewriteRule to rule them all
# --------------------------------
(...?)
RewriteCond %{REQUEST_URI} !sitemap\.
RewriteRule !\.(js|ico|gif|jpg|jpeg|png|css|pdf|txt|xml)$ front_content.php [NC,QSA,L]
# SITEMAP
RewriteRule ^sitemap\.xml$ sitemap.php?idart=94&lang=1,2,3,4 [NC,QSA,L]
Nun ist es noch zu empfehlen, die Sitemap in der robots.txt zu propagieren;
Code: Alles auswählen
User-agent: *
Sitemap: http://example.com/sitemap.xml
-
- Beiträge: 270
- Registriert: Do 27. Apr 2006, 02:38
- Wohnort: Tief im Westen
- Kontaktdaten:
Re: Google Sitemap XML für 4.8x mit und ohne MR
Liebe Leute,
ich nutze noch C 4.8.8 und möchte gern eine XML-Sitemap erzeugen.
Nun habe ich diverse Threads gelesen, zuletzt http://forum.contenido.org/viewtopic.ph ... ap#p144707
und danach m.E. nach verfahren.
Leider läuft da soviel schief, dass ich es garnicht aufschreiben kann. Ich habe den Überblick verloren und wohl nichts verstanden!
Ist da jemand, der mir eine komprimierte Anleitung gibt, wie ich dieses Ding denn installiere.
Oder habe ich nicht alles gegoogled, oder?
Danke schon einmal vorab.
Gruß, Ho
ich nutze noch C 4.8.8 und möchte gern eine XML-Sitemap erzeugen.
Nun habe ich diverse Threads gelesen, zuletzt http://forum.contenido.org/viewtopic.ph ... ap#p144707
und danach m.E. nach verfahren.
Leider läuft da soviel schief, dass ich es garnicht aufschreiben kann. Ich habe den Überblick verloren und wohl nichts verstanden!
Ist da jemand, der mir eine komprimierte Anleitung gibt, wie ich dieses Ding denn installiere.
Oder habe ich nicht alles gegoogled, oder?
Danke schon einmal vorab.
Gruß, Ho
Re: Google Sitemap XML für 4.8x mit und ohne MR
Eine Einleitung für die Installation und Einrichtung des Sitemap-Moduls, das für alle Contenido und Modulversionen gilt, gibt es leider nicht.hohorstmann hat geschrieben:...
ich nutze noch C 4.8.8 und möchte gern eine XML-Sitemap erzeugen.
...
Leider läuft da soviel schief, dass ich es garnicht aufschreiben kann. Ich habe den Überblick verloren und wohl nichts verstanden!
...
Ist da jemand, der mir eine komprimierte Anleitung gibt, wie ich dieses Ding denn installiere.
...
Du schreibst, dass du Contenido 4.8.8 hast, welche XML-Sitemap Modulversion und AMR Plugin Version verwendest du denn?
Wenn es dermaßen viele Fehler gibt, liegt es sehr wahrscheinlich daran, dass die verwendeten Versionen vom XML-Sitemap Modul und des AMR Plugins sich miteinander oder gar mit der Contenido-Version nicht vertragen.
Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
-
- Beiträge: 270
- Registriert: Do 27. Apr 2006, 02:38
- Wohnort: Tief im Westen
- Kontaktdaten:
Re: Google Sitemap XML für 4.8x mit und ohne MR
Hallo xmurrix,
so ich habe das mal grundsätzlich nochmal angepackt:
Jetzt werde ich nochmal die Google-XML-Sitemap versuchen zu installieren. Wenn ich dann nicht klarkomme, ...
Vorab danke für Deine Hilfe...
Grüße aus Tief-im-Westen, Ho
so ich habe das mal grundsätzlich nochmal angepackt:
- upgrade von 4.8.8 auf 4.8.14
AMR laut Deiner Vorgabe auf Deiner Website installiert (geiles Sahneschnittchen übrigens!)
Jetzt werde ich nochmal die Google-XML-Sitemap versuchen zu installieren. Wenn ich dann nicht klarkomme, ...
Vorab danke für Deine Hilfe...
Grüße aus Tief-im-Westen, Ho
-
- Beiträge: 270
- Registriert: Do 27. Apr 2006, 02:38
- Wohnort: Tief im Westen
- Kontaktdaten:
Re: Google Sitemap XML für 4.8x mit und ohne MR
Guten Morgen allerseits,
done!
Nach dem o.a.
Ich bin dabei den Anweisungen aus
Danke Xmurrix für Deine Hinweise, Ho
done!
Nach dem o.a.
habe ich jetzt auch die gewünschte Google-XML-Sitemap installiert.upgrade von 4.8.8 auf 4.8.14
AMR laut Deiner Vorgabe auf Deiner Website installiert (geiles Sahneschnittchen übrigens!)
Ich bin dabei den Anweisungen aus
(siehe unten) gefolgt und siehe da ...
Danke Xmurrix für Deine Hinweise, Ho
-
- Beiträge: 847
- Registriert: Mi 14. Dez 2005, 16:15
- Wohnort: Königs Wusterhausen bei Berlin
- Kontaktdaten:
Re: Google Sitemap XML für 4.8x mit und ohne MR
Hallo,
ich habe mal ne Frage. Die Einträge werden in der XML doch so angelegt (sortiert) wie im Menü. Ist es möglich die Sortierung so zu gestalten, dass die neusten Einträge oben stehen (also die last-modified-Einträge)
Vielen Dank
MfG Steffen
ich habe mal ne Frage. Die Einträge werden in der XML doch so angelegt (sortiert) wie im Menü. Ist es möglich die Sortierung so zu gestalten, dass die neusten Einträge oben stehen (also die last-modified-Einträge)
Vielen Dank
MfG Steffen
-
- Beiträge: 847
- Registriert: Mi 14. Dez 2005, 16:15
- Wohnort: Königs Wusterhausen bei Berlin
- Kontaktdaten:
Re: Google Sitemap XML für 4.8x mit und ohne MR
Die Antwort auf meine Frage!
Einfach die Zeile im Output in ändern.
MfG Steffen
Einfach die Zeile im Output
Code: Alles auswählen
A . idtree, E . idart";
Code: Alles auswählen
D . lastmodified desc";
MfG Steffen
-
- Beiträge: 847
- Registriert: Mi 14. Dez 2005, 16:15
- Wohnort: Königs Wusterhausen bei Berlin
- Kontaktdaten:
Google Sitemap XML mit Kategorie und Sortierung
Hallo,
ich habe das Modul um zwei Sachen erweitert.
1. Man kann jetzt auszuschließende Kategorien angeben, dann werden alle Artikel innerhalb der Kategorie nicht angezeigt. Untergeordnete Kategorien sind davon nicht betroffen.
2. Die Auflistung der Artikel in der XML kann sortiert werden nach "Baumstruktur" (also wie angelegt) oder nach "letzte Änderung zuerst".
Hier der COde
INPUT
OUTPUT
MfG Steffen
ich habe das Modul um zwei Sachen erweitert.
1. Man kann jetzt auszuschließende Kategorien angeben, dann werden alle Artikel innerhalb der Kategorie nicht angezeigt. Untergeordnete Kategorien sind davon nicht betroffen.
2. Die Auflistung der Artikel in der XML kann sortiert werden nach "Baumstruktur" (also wie angelegt) oder nach "letzte Änderung zuerst".
Hier der COde
INPUT
Code: Alles auswählen
?><?php
/**
* XML Sitemaps - Ausgabe als XML - Version vom 26.01.2009
* Modul Input
*/
cInclude("frontend", "includes/functions.input.helper.php");
$sSubmitLink = '<a href="javascript:if (document.tplcfgform.send) {document.tplcfgform.send.value = 0}; document.tplcfgform.submit();"><img src="images/submit.gif" /></a>';
/* CONFIG -------------------------------------------------------------------- */
/* Hier koennen Elemente in den DropDown-Felder geaendert */
/* oder ergaenzt werden ohne unten in den Script zu gehen */
/* --------------------------------------------------------------------------- */
// In welchem Rythmus wird die Seite aktualisiert?
$aktualisierung_auswahl = array();
$aktualisierung_auswahl[0]["wert"] = "0";
$aktualisierung_auswahl[0]["beschr"] = mi18n("Nicht setzten");
$aktualisierung_auswahl[1]["wert"] = "always";
$aktualisierung_auswahl[1]["beschr"] = mi18n("Immer");
$aktualisierung_auswahl[2]["wert"] = "hourly";
$aktualisierung_auswahl[2]["beschr"] = mi18n("Stündlich");
$aktualisierung_auswahl[3]["wert"] = "daily";
$aktualisierung_auswahl[3]["beschr"] = mi18n("Täglich");
$aktualisierung_auswahl[4]["wert"] = "weekly";
$aktualisierung_auswahl[4]["beschr"] = mi18n("Wöchentlich");
$aktualisierung_auswahl[5]["wert"] = "monthly";
$aktualisierung_auswahl[5]["beschr"] = mi18n("Monatlich");
$aktualisierung_auswahl[6]["wert"] = "yearly";
$aktualisierung_auswahl[6]["beschr"] = mi18n("Jährlich");
$aktualisierung_auswahl[7]["wert"] = "never";
$aktualisierung_auswahl[7]["beschr"] = mi18n("Niemals");
// Welche Prioritaet soll den Seiten zugeordnet werden?
$prioritaet_auswahl = array();
$prioritaet_auswahl[0]["wert"] = "0";
$prioritaet_auswahl[0]["beschr"] = mi18n("Nicht setzten");
$prioritaet_auswahl[1]["wert"] = "0.0";
$prioritaet_auswahl[1]["beschr"] = "0.0";
$prioritaet_auswahl[2]["wert"] = "0.1";
$prioritaet_auswahl[2]["beschr"] = "0.1";
$prioritaet_auswahl[3]["wert"] = "0.2";
$prioritaet_auswahl[3]["beschr"] = "0.2";
$prioritaet_auswahl[4]["wert"] = "0.3";
$prioritaet_auswahl[4]["beschr"] = "0.3";
$prioritaet_auswahl[5]["wert"] = "0.4";
$prioritaet_auswahl[5]["beschr"] = "0.4";
$prioritaet_auswahl[6]["wert"] = "0.5";
$prioritaet_auswahl[6]["beschr"] = "0.5";
$prioritaet_auswahl[7]["wert"] = "0.6";
$prioritaet_auswahl[7]["beschr"] = "0.6";
$prioritaet_auswahl[8]["wert"] = "0.7";
$prioritaet_auswahl[8]["beschr"] = "0.7";
$prioritaet_auswahl[9]["wert"] = "0.8";
$prioritaet_auswahl[9]["beschr"] = "0.8";
$prioritaet_auswahl[10]["wert"] = "0.9";
$prioritaet_auswahl[10]["beschr"] = "0.9";
$prioritaet_auswahl[11]["wert"] = "1.0";
$prioritaet_auswahl[11]["beschr"] = "1.0";
/* DEFINITION DER CMS-VARIABLEN ---------------------------------------------- */
$letzteAenderung = "CMS_VALUE[1]";
$aktualisierung = "CMS_VALUE[2]";
$prioritaet = "CMS_VALUE[3]";
$sortierung = "CMS_VALUE[8]";
$anzAusnahmen = "CMS_VALUE[4]";
$dontshow = "CMS_VALUE[5]";
$dontshowCat = "CMS_VALUE[6]";
$utf8use = "CMS_VALUE[7]";
// Weiterleitungsartikel
$weiterleitungen = "CMS_VALUE[13]";
// Ausnahmen
$iDataStart = 30;
if ($anzAusnahmen > 0) {
for ($i = 0; $i < $anzAusnahmen; $i++) {
$iElementType = $iDataStart + ($i * 5);
$iElementKat = $iElementType + 1;
$iElementWert_aktu = $iElementType + 2;
$iElementWert_prio = $iElementType + 3;
$aSettings["k".$i] = array();
$aSettings["k".$i]["ElementType"] = "CMS_VALUE[$iElementType]"; // changefreq, priority
$aSettings["k".$i]["ElementKat"] = "CMS_VALUE[$iElementKat]"; // Kategorien, die geaendert werden sollen
$aSettings["k".$i]["ElementWert_aktu"] = "CMS_VALUE[$iElementWert_aktu]"; // Wert Aktualisierung
$aSettings["k".$i]["ElementWert_prio"] = "CMS_VALUE[$iElementWert_prio]"; // Wert Prioritaet
if ($aSettings["k".$i]["ElementType"] == "") {
$aSettings["k".$i]["ElementType"] == "0";
}
}
}
/* DEFAULT-WERTE ------------------------------------------------------------- */
if ($letzteAenderung == "") {
$letzteAenderung = "0";
}
if ($aktualisierung == "") {
$aktualisierung = $aktualisierung_auswahl[0]["wert"];
}
if ($prioritaet == "") {
$prioritaet = $prioritaet_auswahl[0]["wert"];
}
if ($sortierung == "") {
$sortierung = "A . idtree, E . idart";
}
if ($dontshow == "") {
$dontshow = "";
}
if ($dontshowCat == "") {
$dontshowCat = "";
}
// Weiterleitungsartikel
if ($weiterleitungen == "") {
$weiterleitungenCheck = "";
}else{
$weiterleitungenCheck = " checked=\"checked\"";
}
if ($utf8use == "") {
$utf8useCheck = "";
}else{
$utf8useCheck = " checked=\"checked\"";
}
/* BEGINN -------------------------------------------------------------------- */
// Weitere Infos
echo "\n\n\n".'<SCRIPT LANGUAGE="JavaScript">'."\n";
echo ' <!--'."\n";
echo ' function sitemapErklaerung() {'."\n";
echo ' erklaerungSitemap = window.open("","Erklaerung","width=700,height=450");'."\n";
echo ' sitemapErklaerung01();'."\n";
echo ' }'."\n";
echo ' function sitemapErklaerung01() {'."\n";
echo ' var sitemapErklaerungInhalt = \''.mi18n("<p><strong>INSTALLATION:<\/strong><\/p><ol><li>Anmelden beim Google Sitemaps Service unter: <a href=\"https:\/\/www.google.com\/webmasters\/sitemaps\/login\" target=\"_blank\">https:\/\/www.google.com\/webmasters\/sitemaps\/login<\/a><\/li><li>XMLSitemap-Modul anlegen\/installieren<\/li><li>Die Datei \"functions.input.helper.php\" von HerrB muss im includes-Ordner des Mandanten liegen.<br>Sie ist z.B. Bestandteil von diesem Modul:<br><a href=\"http:\/\/contenido.org\/forum\/viewtopic.php?t=10957\" target=\"_blank\">http:\/\/contenido.org\/forum\/viewtopic.php?t=10957<\/a><\/li><li>Neues Layout mit folgendem Inhalt anlegen: CMS_CONTAINER[1]<br \/>Im Layout dürfen keine weiteren HTML-Tags oder Leerzeichen enthalten sein.<\/li><li>Neues Template erstellen mit dem neuen Layout und dem XMLSitemap-Modul<\/li><li>Neue Kategorie erstellen und eine neue Seite mit dem neuen Template zuweisen<br \/><\/li><li>Jetzt den Link dieser neuen Seite im Browser aufrufen und testen<\/li><li>Den Link Google mitteilen<\/li><\/ol><p><strong>WEITERE INFOS: <\/strong><\/p><ul><li><a href=\"https:\/\/www.google.com\/webmasters\/sitemaps\/docs\/de\/protocol.html\" target=\"_blank\">https:\/\/www.google.com\/webmasters\/sitemaps\/docs\/de\/protocol.html<\/a><\/li><\/ul>").'\';'."\n";
echo ' erklaerungSitemap.document.write(sitemapErklaerungInhalt);'."\n";
echo ' }'."\n";
echo ' // -->'."\n";
echo '</SCRIPT>'."\n\n";
echo '<table cellspacing="0" cellpadding="10" border="0">'."\n";
echo ' <tr>'."\n";
echo ' <td colspan="2"><a href="#" onClick="sitemapErklaerung()">'.mi18n("Mehr Infos über dieses Modul").'</a></td>'."\n";
echo ' </tr>'."\n";
// Soll die letzte Aenderung mit aufgenommen werden?
echo ' <tr>'."\n";
echo ' <td>'.mi18n("Änderungsdatum verwenden:").'</td>'."\n";
echo ' <td>'."\n";
echo ' <select name="CMS_VAR[1]">'."\n";
echo ' <option value="0"';
if ($letzteAenderung == "0") { echo ' selected'; }
echo '>'.mi18n("Nicht setzen").'</option>'."\n";
echo ' <option value="1"';
if ($letzteAenderung == "1") { echo ' selected'; }
echo '>'.mi18n("Ja").'</option>'."\n";
echo ' </select>'."\n";
echo ' </td>'."\n";
echo ' </tr>'."\n";
// In welchem Rythmus wird die Seite aktualisiert?
echo ' <tr>'."\n";
echo ' <td>'.mi18n("Änderungshäufigkeit aller Seiten:").'</td>'."\n";
echo ' <td>'."\n";
echo ' <select name="CMS_VAR[2]">'."\n";
foreach ($aktualisierung_auswahl AS $mein) {
echo ' <option value="'.$mein["wert"].'"';
if ($aktualisierung == $mein["wert"]) { echo ' selected'; }
echo '>'.$mein["beschr"].'</option>'."\n";
}
echo ' </select>'."\n";
echo ' </td>'."\n";
echo ' </tr>'."\n";
// Welche Prioritaet soll den Seiten zugeordnet werden?
echo ' <tr>'."\n";
echo ' <td>'.mi18n("Priorität aller Seiten:").'</td>'."\n";
echo ' <td>'."\n";
echo ' <select name="CMS_VAR[3]">'."\n";
foreach ($prioritaet_auswahl AS $mein) {
echo ' <option value="'.$mein["wert"].'"';
if ($prioritaet == $mein["wert"]) { echo ' selected'; }
echo '>'.$mein["beschr"].'</option>'."\n";
}
echo ' </select>'."\n";
echo ' </td>'."\n";
echo ' </tr>'."\n";
// Sortierung?
echo ' <tr>'."\n";
echo ' <td>'.mi18n("Sortierung nach:").'</td>'."\n";
echo ' <td>'."\n";
echo ' <select name="CMS_VAR[8]">'."\n";
echo ' <option value="A . idtree, E . idart"';
if ($sortierung == "A . idtree, E . idart") { echo ' selected'; }
echo '>'.mi18n("Baumstruktur wie angelegt").'</option>'."\n";
echo ' <option value="D . lastmodified desc"';
if ($sortierung == "D . lastmodified desc") { echo ' selected'; }
echo '>'.mi18n("Letzte Änderung zuerst").'</option>'."\n";
echo ' </select>'."\n";
echo ' </td>'."\n";
echo ' </tr>'."\n";
// Welche Artikel sollen ausgelassen werden?
echo ' <tr>'."\n";
echo ' <td>'.mi18n("Auszuschliessende Artikel:").'<br></td>'."\n";
echo ' <td>'."\n";
echo ' <input type="text" name="CMS_VAR[5]" value="'.$dontshow.'" size="50"><br>'."\n";
echo ' '.mi18n("Artikel-Id (idart) mit Komma getrennt (z.B. 5,23,89)")."\n";
echo ' </td>'."\n";
echo ' </tr>'."\n";
// Welch Kategorie sollen ausgelassen werden?
echo ' <tr>'."\n";
echo ' <td>'.mi18n("Auszuschliessende Kategorien:").'<br>(untergeordnete Kategorien <br>werden nicht mit eingeschlossen)</td>'."\n";
echo ' <td>'."\n";
echo ' <input type="text" name="CMS_VAR[6]" value="'.$dontshowCat.'" size="50"><br>'."\n";
echo ' '.mi18n("Kategorie-Id (idcat) mit Komma getrennt (z.B. 3,4,12)")."\n";
echo ' <br></td>'."\n";
echo ' </tr>'."\n";
/* AUSNAHMEN ----------------------------------------------------------------- */
// Wieviele Ausnahmen
echo ' <tr>'."\n";
echo ' <td>'.mi18n("Wieviele Ausnahmen:").'</td>'."\n";
echo ' <td>'."\n";
echo ' <input type="text" name="CMS_VAR[4]" value="'.$anzAusnahmen.'" size="3"> '.$sSubmitLink."\n";
echo ' </td>'."\n";
echo ' </tr>'."\n";
if ($anzAusnahmen > 0) {
echo fncAddMultiSelJS();
// Strich
echo ' <tr><td colspan="2"><hr></td></tr>'."\n";
for ($i = 0; $i < $anzAusnahmen; $i++) {
echo "\n"." <!-- Durchlauf ".$i." -->"."\n";
$iElementType = $iDataStart + ($i * 5);
$iElementKat = $iElementType + 1;
$iElementWert_aktu = $iElementType + 2;
$iElementWert_prio = $iElementType + 3;
echo ' <tr>'."\n";
echo ' <td valign="top">'.($i+1).'. '.mi18n("Ausnahme:").'</td>'."\n";
echo ' <td>'."\n";
// Typ der Ausnahme auswaehlen:
echo ' '.mi18n("Typ:").'<br>'."\n";
echo ' <select name="CMS_VAR['.$iElementType.']">'."\n";
echo ' <option value="0"';
if ($aSettings["k".$i]["ElementType"] == "0") { echo ' selected'; }
echo '>'.mi18n("Bitte auswählen...").'</option>'."\n";
echo ' <option value="changefreq"';
if ($aSettings["k".$i]["ElementType"] == "changefreq") { echo ' selected'; }
echo '>'.mi18n("Änderungshäufigkeit").'</option>'."\n";
echo ' <option value="priority"';
if ($aSettings["k".$i]["ElementType"] == "priority") { echo ' selected'; }
echo '>'.mi18n("Priorität").'</option>'."\n";
echo ' </select>'."\n";
echo ' '.$sSubmitLink.' '."\n";
if ($aSettings["k".$i]["ElementType"] != "0") {
echo ' <br><br>'."\n";
// Kategorie auswaehlen
echo ' '.mi18n("Kategorien auswählen:").'<br>'."\n";
// edit by funomat TG
echo fncBuildCategorySelect("c".$i."cbxAddCatSel", $aSettings["k".$i]["ElementKat"], 0, "fncUpdateSel('c".$i."cbxAddCatSel','"."CMS_VAR[$iElementKat]"."');", "6", "multiple", false, 0, "");
# echo fncBuildCategorySelect("c".$i."cbxAddCatSel", $aSettings["k".$i]["ElementKat"], 0, "ArtAdv_fncUpdateSel('c".$i."cbxAddCatSel'.'"."CMS_VAR[$iElementKat]"."');", "6", "multiple", false, 0, "");
// end edit
echo '<input type="hidden" name="CMS_VAR['.$iElementKat.']" value="'.$aSettings["k".$i]["ElementKat"].'">'."\n";
echo ' <br>'."\n";
// Aktualisierung
if ($aSettings["k".$i]["ElementType"] == "changefreq") {
echo ' <select name="CMS_VAR['.$iElementWert_aktu.']">'."\n";
foreach ($aktualisierung_auswahl AS $mein) {
echo ' <option value="'.$mein["wert"].'"';
if ($aSettings["k".$i]["ElementWert_aktu"] == $mein["wert"]) { echo ' selected'; }
echo '>'.$mein["beschr"].'</option>'."\n";
}
echo ' </select>'."\n";
}
// Prioritaet
if ($aSettings["k".$i]["ElementType"] == "priority") {
echo ' <select name="CMS_VAR['.$iElementWert_prio.']">'."\n";
foreach ($prioritaet_auswahl AS $mein) {
echo ' <option value="'.$mein["wert"].'"';
if ($aSettings["k".$i]["ElementWert_prio"] == $mein["wert"]) { echo ' selected'; }
echo '>'.$mein["beschr"].'</option>'."\n";
}
echo ' </select>'."\n";
}
} // if ($aSettings["k".$i]["ElementType"] != "0") {
echo ' </td>'."\n";
echo ' </tr>'."\n";
// Strich
echo ' <tr><td colspan="2"><hr></td></tr>'."\n";
} // End: for ($i = 0; $i < $aSettings["Elements"]; $i++) {
} // End: if ($aSettings["Elements"] > 0) {
// Sollen nur Artikel ohne Weiterleitung verwendet werden?
echo ' <tr>'."\n";
echo ' <td>'.mi18n("Nur Artikel ohne Weiterleitungen verwenden:").'</td>'."\n";
echo ' <td>'."\n";
echo ' <input type="checkbox" name="CMS_VAR[13]" value="1"'.$weiterleitungenCheck.'>'."\n";
echo ' </td>'."\n";
echo ' </tr>'."\n";
// Soll UTF-8-Codierung verwendet werden?
echo ' <tr>'."\n";
echo ' <td>'.mi18n("UTF-8-Codierung verwenden:").'</td>'."\n";
echo ' <td>'."\n";
echo ' <input type="checkbox" name="CMS_VAR[7]" value="false"'.$utf8useCheck.'>'."\n";
echo ' '.mi18n("(Sollte der Mandant schon mit UTF-8 Codiert sein benötigt man keine UTF-8-Codierung!)")."\n";
echo ' </td>'."\n";
echo ' </tr>'."\n";
echo '</table>'."\n";
?><?php
Code: Alles auswählen
<?php
/**
* XML Sitemaps - Ausgabe als XML - Version vom 26.01.2009
* Modul Output
*/
/* DEFINITION DER CMS-VARIABLEN ---------------------------------------------- */
$letzteAenderung = "CMS_VALUE[1]";
$aktualisierung = "CMS_VALUE[2]";
$prioritaet = "CMS_VALUE[3]";
$sortierung = "CMS_VALUE[8]";
$anzAusnahmen = "CMS_VALUE[4]";
$dontshow = "CMS_VALUE[5]";
$dontshowCat = "CMS_VALUE[6]";
$utf8encode = "CMS_VALUE[7]";
$weiterleitungen = "CMS_VALUE[13]";
// Ausnahmen
$iDataStart = 30;
if ($anzAusnahmen > 0) {
for ($i = 0; $i < $anzAusnahmen; $i++) {
$iElementType = $iDataStart + ($i * 5);
$iElementKat = $iElementType + 1;
$iElementWert_aktu = $iElementType + 2;
$iElementWert_prio = $iElementType + 3;
$aSettings["k".$i] = array();
$aSettings["k".$i]["ElementType"] = "CMS_VALUE[$iElementType]"; // changefreq, priority
$aSettings["k".$i]["ElementKat"] = explode(",", "CMS_VALUE[$iElementKat]"); // Kategorien, die geändert werden sollen
$aSettings["k".$i]["ElementWert_aktu"] = "CMS_VALUE[$iElementWert_aktu]"; // Wert Aktualisierung
$aSettings["k".$i]["ElementWert_prio"] = "CMS_VALUE[$iElementWert_prio]"; // Wert Priorität
if ($aSettings["k".$i]["ElementType"] == "") {
$aSettings["k".$i]["ElementType"] == "0";
}
}
}
/* DEFAULT-WERTE ------------------------------------------------------------- */
if ($letzteAenderung == "") {
$letzteAenderung = "0";
}
if ($aktualisierung == "") {
$aktualisierung = "0";
}
if ($prioritaet == "") {
$prioritaet = "0";
}
if ($sortierung == "") {
$sortierung = "A . idtree, E . idart";
}
// Weiterleitungsartikel
if ($weiterleitungen == "") {
$weiterleitungen == "";
} else {
$weiterleitungen = 'AND D . redirect = 0';
}
if ($dontshow == "") {
$dontshow == "";
} else {
$dontshow = 'AND E . idart NOT IN ('.$dontshow.')';
}
if ($dontshowCat == "") {
$dontshowCat == "";
} else {
$dontshowCat = 'AND E . idcat NOT IN ('.$dontshowCat.')';
}
/* FUNKTIONEN ---------------------------------------------------------------- */
function iso8601_date($time) {
$tzd = date('O',$time);
$tzd = substr(chunk_split($tzd, 3, ':'),0,6);
$date = date('Y-m-d\TH:i:s', $time) . $tzd;
return $date;
}
/* BEGINN AUSGABE ------------------------------------------------------------ */
// Header ausgeben
header("Content-type: text/xml");
$xmlOutput = '<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9
http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">'. "\n\n";
$query = "SELECT
E . idcat ,
E . idart ,
D . pagetitle ,
C . name ,
UNIX_TIMESTAMP( D . lastmodified ) AS lastmodified
FROM
".$cfg["tab"]["cat_tree"]." AS A ,
".$cfg["tab"]["cat_lang"]." AS C ,
".$cfg["tab"]["cat"]." AS B ,
".$cfg["tab"]["cat_art"]." AS E
INNER JOIN ".$cfg["tab"]["art_lang"]." AS D ON ( E . idart = D . idart )
WHERE
A . idcat = B . idcat
AND B . idcat = C . idcat
AND C . idcat = E . idcat
AND B . idclient = '".$client."'
AND C . idlang = '".$lang."'
AND D . idlang = '".$lang."'
AND C . visible = '1'
AND E . idcatart IS NOT NULL
AND D . online = '1'
".$weiterleitungen."
".$dontshow."
".$dontshowCat."
ORDER BY
$sortierung";
// execute query
$db->query($query);
$oUrl = Contenido_Url::getInstance();
// get id's of sub articles
while ($db->next_record()) {
$linkid = $db->f("idart");
$linkcat = $db->f("idcat");
$lastmodified = iso8601_date( $db->f("lastmodified") );
// link ohne ModRewrite
$link = $oUrl->build(array('idart' => $linkid, 'lang' => $lang), true);
// Bemerkung zum Seitentitel
$xmlOutput .= '<!-- '.$db->f("pagetitle").' -->'."\n";
$xmlOutput .= '<url>'."\n";
$xmlOutput .= ' <loc>'.htmlspecialchars($link).'</loc>'."\n";
// Letzte Aenderung
if($letzteAenderung != "0") {
$xmlOutput .= ' <lastmod>'.$lastmodified.'</lastmod>'."\n";
}
// Aktualisierung
if($aktualisierung != "0") {
$aktualisierung_eintrag = $aktualisierung;
for ($i = 0; $i < $anzAusnahmen; $i++) {
if (in_array($linkcat, $aSettings["k".$i]["ElementKat"]) == TRUE) {
if ($aSettings["k".$i]["ElementType"] == "changefreq") {
$aktualisierung_eintrag = $aSettings["k".$i]["ElementWert_aktu"];
break;
}
}
}
$xmlOutput .= ' <changefreq>'.$aktualisierung_eintrag.'</changefreq>'."\n";
} // if($aktualisierung != "0") {
// Prioritaet
if($prioritaet != "0") {
$prioritaet_eintrag = $prioritaet;
for ($i = 0; $i < $anzAusnahmen; $i++) {
if (in_array($linkcat, $aSettings["k".$i]["ElementKat"]) == TRUE) {
if ($aSettings["k".$i]["ElementType"] == "priority") {
$prioritaet_eintrag = $aSettings["k".$i]["ElementWert_prio"];
break;
}
}
}
$xmlOutput .= ' <priority>'.$prioritaet_eintrag.'</priority>'."\n";
} // if($prioritaet != "0") {
$xmlOutput .= '</url>'."\n\n";
} // end while
$xmlOutput .= '</urlset>';
// Hier wird der ganze String in UTF8 kodiert und ausgegeben
if($utf8encode)
echo utf8_encode($xmlOutput);
else
echo $xmlOutput;
?>