Google Sitemap XML für 4.8x mit und ohne MR

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Google Sitemap XML für 4.8x mit und ohne MR

Beitrag von yodatortenboxer » So 15. Jun 2008, 14:47

Hiho,

dies ist eine Weiterentwicklung der Sitemap von Luxmedia Österreich, micattack@gmx.net und derSteffen http://forum.contenido.org/viewtopic.php?p=65521#65521
Zu diesem Modul und zu meiner Person! Ich habe keine Ahnung von Programmieren und bin letztendlich durch Behaarlichkeit und vielen Probieren zu dieser Lösung gekommen.

Installation wie hier beschrieben http://www.contenido.org/forum/viewtopic.php?t=8503

Originalmodul von Luxmedia Österreich überarbeitet von micattack@gmx.net und nun von mir!

Änderungen:
Neuer Header (<urlset xmlns="http://www.google.com/schemas/sitemap/0.84" usw...)
Neu: Man kann jetzt auch die priority angeben
Bug (Speichern der Werte der Selektfelder cms php skript [durch HerrB] Änderungsdatum und Änderungshäufigkeit) behoben
Ich habe nun die angepasste Google Sitemap dieser Version von Ratze http://forum.contenido.org/viewtopic.ph ... 064#105064
Hallo zusammen,

ich lese nun schon einige Zeit in diesem Forum. Nun ist es auch mal an der Zeit ein Modul bzw. eine Überarbeitung zu posten. Ich habe mich mal dem XML-Sitemap-Modul angenommen. Mich hat gestört, das man Artikeln keine verschiedene Prioritäten zuweisen kann... womit sich diese Funktion ja fast erledigt hätte.

Ich habe also den Script von Luxmedia Österreich mit den Änderungen von derSteffen genommen, alles aufgeräumt und dann noch alle weiteren Verbesserungen eingebaut, die ich im Forum finden konnte. Ausserdem habe ich die Möglichkeit eingebaut einzelne Kategorien mit eigenen Prioritäten und Änderungshäufigkeiten zu versehen.

WICHTIG: für die Verwendung bitte unbedingt die Anleitung in der Beschreibung durchlesen, da ihr ein include von HerrB benötigt.
Das Modul ist nicht für ModRewrite entwickelt worden.

Ich hoffe ich habe nicht allzuviele Fehler drin und ich muss leider gestehen, das ich die Sitemap noch nicht mit Google getestet habe.

Gruß
Ratze
und von funomat http://forum.contenido.org/viewtopic.ph ... 148#114148
Hallo zusammen,

erstmal vielen Dank an alle die hier mitgearbeitet haben. Tolles Modul.

Da ich gerne die Version von Ratze einsetzen wollte aber nicht auf ModRewrite verzichten wollte, habe ich ein paar kleine Änderungen am Modul vorgenommen.

Neu:
1. Auswahlmöglichkeit für die Benutzung von ModRewrite
2. Auswahlmöglichkeit für die Benutzung der UTF-8 Codierung für den Fall das der Mandant schon mit UTF-8 eingestellt ist
3. Neuer Header (<urlset xmlns="http://www.google.com/schemas/sitemap/0.9" usw...) - siehe https://www.google.com/webmasters/tools ... tocol.html

Behoben:
Fehler beim Anlegen von Ausnahmen behoben (JS-Funktion - siehe PROBLEME UND ANMERKUNGEN)

Die xml-Datei findet ihr hier: XMLSitemaps.zip

Gruß,
funomat
noch ein wenig erweitert und an das MR- Plugin der 4.8.x angepasst.

Die Installation erfolgt wie hier http://forum.contenido.org/viewtopic.ph ... 064#105064 beschrieben und man benötigt die Datei "functions.input.helper.php" von HerrB aus dem Modul http://contenido.org/forum/viewtopic.php?t=10957. Die Datei einfach in das includes Verzeichnis vom Mandanten kopieren.

NEU in dieser Version:
- Auswahl im Template für das > V4.6.15 MR oder das 4.8.x MR-Plugin von http://forum.contenido.org/viewtopic.ph ... 914#117914
- hinzufügen der Mandanten-ID oder des Mandantennamen und die Sprach-ID oder den Sprachnamen in die URL-Ausgabe

Auf meiner Seite benutze ich nähmlich die URL in der Form von

Code: Alles auswählen

http://www.domain.de/mandant/sprache/kategorie/artikel.html
und da passt es nicht wenn die Google-XML Datei nur

Code: Alles auswählen

http://www.domain.de/kategorie/artikel.html
ausgibt.

BESCHREIBUNG:

Code: Alles auswählen

MODUL-NAME:
XMLSitemaps

BESCHREIBUNG
Diese Modul erzeugt ein Sitemap-Protocol im
XML-Format. Diese Format unterstuetzen z.B.:
Google, Yahoo!, und Microsoft. Es vereinfacht
den Suchmaschinen das Durchsuchen der URLs
einer Site.

INSTALLATION:
1. Anmelden beim Google Sitemaps Service unter: https://www.google.com/webmasters/sitemaps/login
2. XMLSitemap-Modul anlegen/installieren
3. Die Datei "functions.input.helper.php" von HerrB muss im includes-Ordner des Mandanten liegen.
   Sie ist z.B. Bestandteil von diesem Modul:
   http://contenido.org/forum/viewtopic.php?t=10957
4. Neues Layout mit folgendem Inhalt anlegen: CMS_CONTAINER[1]
   Im Layout duerfen keine weiteren HTML-Tags oder Leerzeichen enthalten sein.
5. Neues Template erstellen mit dem neuen Layout und dem XMLSitemap-Modul
6. Neue Kategorie erstellen und eine neue Seite mit dem neuen Template zuweisen
7. Jetzt den Link dieser neuen Seite im Browser aufrufen und testen
8. Den Link Google mitteilen

PROBLEME UND ANMERKUNGEN:
- Bei dem Modul wird ein Fehler im Eingabe Bereich angezeigt.
  Dieser liegt im Script im Bereich "Kategorien auswaehlen".
  Beim Aufruf der JavaScript-Funktion ArtAdv_fncUpdateSel kommt
  er beim dynamischen CMS_VAR[".$iElementKat."] nicht klar...
  das Modul laeuft aber ohne Probleme... zumindestens bei mir...
- Die Ausnahmen beziehen sich nur auf die Artikel in der Kategorie,
  nicht auf die Artikel in Unterkategorien.

WEITERE INFOS:
https://www.google.com/webmasters/sitemaps/docs/de/protocol.html

--------------------------------------------------------

Author Luxmedia Oesterreich
Copyright www.luxmedia.at

  2005-06-09
- INPUT: Abfrage des Skriptnames
- INPUT: Einbindung von lastmod je nach Wunsch
- INPUT: changefreq
- OUTPUT: Nur Artikel die Online sind
- OUTPUT: lastmod, changefreq, Skriptname aus INPUT
- OUTPUT: lastmod Datumsformat iso8601

  Angepasst durch derSteffen
  2005-12-21
- OUTPUT: Neu: priority
- OUTPUT: Neuer Header (<urlset xmlns="http://www.google.com/schemas/sitemap/0.84" usw...)

  Angepasst durch derSteffen und HerrB
  2006-01-03
- INPUT: Bugfix (Speichern der Werte der Selektfelder cms php skript
  [durch HrBee] Aenderungsdatum und Aenderungshaeufigkeit)
- INPUT: Neues Feld: priority

  Ueberarbeitet durch Ratze
  2007-08-11
- INPUT: Ueberarbeitung und Saeuberung des Codes
- INPUT: Neu: Mehrsprachfaehig im Backend
- INPUT/OUPUT: Neu: Ausnahmen. Die Moeglichkeit einzelnen Kategorien
  andere Prioritaeten und Aenderungshaeufigkeiten zuzuweisen
  (Scriptelemente bei den "Ausnahmen" aus dem Modul "Article List
  Advanced" von HerrB entnommen. Danke :-)
- INPUT/OUTPU: Auszuschliessende Artikel von windowlicker vom 2006-08-06 eingebaut
- OUTPUT: SQL-Abfrage von MyAccount aus dem Modul "myGoogleSitemap"
  vom 2006-08-02 eingebaut
- OUTPUT: Wenn eine Seite ein Seitentitel hat, wird dieser als Kommentar
  in die XML-Datei geschrieben, damit wird die Kontrolle der Seiten einfacher.

  Ueberarbeitet durch funomat
  2008-02-21
- INPUT: Fehler beim Anlegen von Ausnahmen behoben
- INPUT/OUTPUT: Neu: Auswahlmoeglichkeit ModRewrite
- INPUT/OUTPUT: Neu: Auswahlmoeglichkeit UTF-8 Codierung
- OUTPUT: Neuer Header (<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" usw...)
  siehe https://www.google.com/webmasters/tools/docs/en/protocol.html
  
  Ueberarbeitet durch yodatortenboxer (http://www.xtended-cooperation.de)
  2008-06-15
- INPUT/OUTPUT: Neu: Auswahlmoeglichkeit ModRewrite ab 4.6.15 oder Plugin ab 4.8.x 
- INPUT/OUTPUT: Neu: Auswahlmoeglichkeit ModRewrite Mandanten-ID oder Name in URL hinzufügen (wie bei MR-Version)
- INPUT/OUTPUT: Neu: Auswahlmoeglichkeit ModRewrite Sprach-ID oder Sprachnamen in URL hinzufügen (wie bei MR-Plugin)

--------------------------------------------------------
EINGABE:

Code: Alles auswählen

?><?php
/* --------------------------------------------------------------------------- */
/*                                                                             */
/*   XML Sitemaps - Ausgabe als XML - Version vom 21.02.2008                   */
/*   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                       */
/* --------------------------------------------------------------------------- */

// Welche CMS-PHP-Datei wird angesprochen
$cmsPhpSkript_auswahl   = array();
$cmsPhpSkript_auswahl[] = "front_content.php";
$cmsPhpSkript_auswahl[] = "index.php";

// 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&uuml;ndlich");
$aktualisierung_auswahl[3]["wert"]    = "daily";
$aktualisierung_auswahl[3]["beschr"]  = mi18n("T&auml;glich");
$aktualisierung_auswahl[4]["wert"]    = "weekly";
$aktualisierung_auswahl[4]["beschr"]  = mi18n("W&ouml;chentlich");
$aktualisierung_auswahl[5]["wert"]    = "monthly";
$aktualisierung_auswahl[5]["beschr"]  = mi18n("Monatlich");
$aktualisierung_auswahl[6]["wert"]    = "yearly";
$aktualisierung_auswahl[6]["beschr"]  = mi18n("J&auml;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 ---------------------------------------------- */
$cmsPhpSkript     = "CMS_VALUE[0]";
$letzteAenderung  = "CMS_VALUE[1]";
$aktualisierung   = "CMS_VALUE[2]";
$prioritaet       = "CMS_VALUE[3]";
$anzAusnahmen     = "CMS_VALUE[4]";
$dontshow         = "CMS_VALUE[5]";
$mruse            = "CMS_VALUE[6]";
$utf8use          = "CMS_VALUE[7]";
$CVersion         = "CMS_VALUE[8]";
$mrClientUse      = "CMS_VALUE[9]";
$mrClientUseName  = "CMS_VALUE[10]";
$mrLangUse        = "CMS_VALUE[11]";
$mrLangUseName    = "CMS_VALUE[12]";

// 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 ($cmsPhpSkript == "") { 
  $cmsPhpSkript = $cmsPhpSkript_auswahl[0];
}

if ($letzteAenderung == "") {
  $letzteAenderung = "0";
}

if ($aktualisierung == "") {
  $aktualisierung = $aktualisierung_auswahl[0]["wert"];
}

if ($prioritaet == "") {
  $prioritaet = $prioritaet_auswahl[0]["wert"];
}

if ($dontshow == "") {
  $dontshow = "";
}

if ($mruse == "") {
  $mruseCheck = "";
}else{
  $mruseCheck = " checked=\"checked\"";
}

if ($utf8use == "") {
  $utf8useCheck = "";
}else{
  $utf8useCheck = " checked=\"checked\"";
}

if($CVersion=="46x"){$CV46="checked";$CV48="";}else{$CV46="";$CV48="checked";}

if ($mrClientUse == "") {
  $mrClientUseCheck = "";
}else{
  $mrClientUseCheck = " checked=\"checked\"";
}

if ($mrClientUseName == "") {
  $mrClientUseNameCheck = "";
}else{
  $mrClientUseNameCheck = " checked=\"checked\"";
}

if ($mrLangUse == "") {
  $mrLangUseCheck = "";
}else{
  $mrLangUseCheck = " checked=\"checked\"";
}

if ($mrLangUseName == "") {
  $mrLangUseNameCheck = "";
}else{
  $mrLangUseNameCheck = " 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&uuml;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 &uuml;ber dieses Modul").'</a></td>'."\n";
echo '  </tr>'."\n";

// Welche CMS-PHP-Datei wird angesprochen?
echo '  <tr>'."\n";
echo '    <td>'.mi18n("CMS-PHP-Skript:").'</td>'."\n";
echo '    <td>'."\n";
echo '      <select name="CMS_VAR[0]">'."\n";

foreach ($cmsPhpSkript_auswahl AS $mein) {
  echo '        <option value="'.$mein.'"';
                if ($cmsPhpSkript == $mein) { echo ' selected'; }
                echo '>'.$mein.'</option>'."\n";
}

echo '      </select>'."\n";
echo '    </td>'."\n";
echo '  </tr>'."\n";


// Soll die letzte Aenderung mit aufgenommen werden?
echo '  <tr>'."\n";
echo '    <td>'.mi18n("&Auml;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("&Auml;nderungsh&auml;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&auml;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";


// Welch Artikel sollen ausgelassen werden?
echo '  <tr>'."\n";
echo '    <td>'.mi18n("Auszuschliessende Artikel:").'</td>'."\n";
echo '    <td>'."\n";
echo '      <input type="text" name="CMS_VAR[5]" value="'.$dontshow.'" size="20">'."\n";
echo '      '.mi18n("Artikel-Id mit Komma getrennt (z.B. 5,23,89)")."\n";
echo '    </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">&nbsp'.$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&auml;hlen...").'</option>'."\n";      
     echo '        <option value="changefreq"';
                   if ($aSettings["k".$i]["ElementType"] == "changefreq") { echo ' selected'; }
                   echo '>'.mi18n("&Auml;nderungsh&auml;ufigkeit").'</option>'."\n";
     echo '        <option value="priority"';
                   if ($aSettings["k".$i]["ElementType"] == "priority") { echo ' selected'; }
                   echo '>'.mi18n("Priorit&auml;t").'</option>'."\n";      
   echo '      </select>'."\n";
   echo '      &nbsp;'.$sSubmitLink.'&nbsp;'."\n";


   if ($aSettings["k".$i]["ElementType"] != "0") {
     echo '      <br><br>'."\n";   
    
     // Kategorie auswaehlen
     echo '      '.mi18n("Kategorien ausw&auml;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) {

// Soll ModRewrite verwendet werden?
echo '  <tr>'."\n";
echo '    <td>'.mi18n("ModRewrite verwenden:").'</td>'."\n";
echo '    <td>'."\n";
echo '      <input type="checkbox" name="CMS_VAR[6]" value="true"'.$mruseCheck.'>'."\n";
echo '    </td>'."\n";
echo '  </tr>'."\n";

// Soll Mandant bei ModRewrite verwendet werden?
echo '  <tr>'."\n";
echo '    <td>'.mi18n("Mandant bei ModRewrite verwenden:").'</td>'."\n";
echo '    <td>'."\n";
echo '      <input type="checkbox" name="CMS_VAR[9]" value="true"'.$mrClientUseCheck.'>'."\n";
echo '    </td>'."\n";
echo '  </tr>'."\n";

// Soll Name des Mandanten bei ModRewrite verwendet werden?
echo '  <tr>'."\n";
echo '    <td>'.mi18n("Mandantenname bei ModRewrite verwenden:").'</td>'."\n";
echo '    <td>'."\n";
echo '      <input type="checkbox" name="CMS_VAR[10]" value="true"'.$mrClientUseNameCheck.'>'."\n";
echo '      '.mi18n("(Mandant bei Modrewrite verwenden muss aktiviert sein!)")."\n";
echo '    </td>'."\n";
echo '  </tr>'."\n";

// Soll Sprache bei ModRewrite verwendet werden?
echo '  <tr>'."\n";
echo '    <td>'.mi18n("Sprache bei ModRewrite verwenden:").'</td>'."\n";
echo '    <td>'."\n";
echo '      <input type="checkbox" name="CMS_VAR[11]" value="true"'.$mrLangUseCheck.'>'."\n";
echo '    </td>'."\n";
echo '  </tr>'."\n";

// Soll Name der Sprache bei ModRewrite verwendet werden?
echo '  <tr>'."\n";
echo '    <td>'.mi18n("Sprachename bei ModRewrite verwenden:").'</td>'."\n";
echo '    <td>'."\n";
echo '      <input type="checkbox" name="CMS_VAR[12]" value="true"'.$mrLangUseNameCheck.'>'."\n";
echo '      '.mi18n("(Sprache bei Modrewrite verwenden muss aktiviert sein!)")."\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&ouml;tigt man keine UTF-8-Codierung!)")."\n";
echo '    </td>'."\n";
echo '  </tr>'."\n";

// Contenido Version 4.6.x oder 4.8x
echo '  <tr>'."\n";
echo '    <td>'.mi18n("Contenido MR-Version:").'</td>'."\n";
echo '    <td>'."\n";
echo '      <input type="radio" name="CMS_VAR[8]" value="46x" '.$CV46.' />&nbsp;'.mi18n("ab V4.6.15(stese)").'&nbsp;'."\n";
echo '      <input type="radio" name="CMS_VAR[8]" value="48x" '.$CV48.' />&nbsp;'.mi18n("ab V4.8.x(plugin)").'&nbsp;'."\n";
echo '    </td>'."\n";
echo '  </tr>'."\n";

echo '</table>'."\n";
?><?php
AUSGABE:

Code: Alles auswählen

<?php
/* --------------------------------------------------------------------------- */
/*                                                                             */
/*   XML Sitemaps - Ausgabe als XML - Version vom 21.02.2008                   */
/*   OUTPUT                                                                    */
/*                                                                             */
/* --------------------------------------------------------------------------- */


/* DEFINITION DER CMS-VARIABLEN ---------------------------------------------- */
$cmsPhpSkript     = "CMS_VALUE[0]";
$letzteAenderung  = "CMS_VALUE[1]";
$aktualisierung   = "CMS_VALUE[2]";
$prioritaet       = "CMS_VALUE[3]";
$anzAusnahmen     = "CMS_VALUE[4]";
$dontshow         = "CMS_VALUE[5]";
$modRewrite       = "CMS_VALUE[6]";
$utf8encode       = "CMS_VALUE[7]";
$CVersion         = "CMS_VALUE[8]";
$mrClientUse      = "CMS_VALUE[9]";
$mrClientUseName  = "CMS_VALUE[10]";
$mrLangUse        = "CMS_VALUE[11]";
$mrLangUseName    = "CMS_VALUE[12]";

// 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&auml;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&auml;t


      if ($aSettings["k".$i]["ElementType"] == "") {
         $aSettings["k".$i]["ElementType"] == "0";
      }
   }
}



/* DEFAULT-WERTE ------------------------------------------------------------- */
if ($cmsPhpSkript == "") {
  $cmsPhpSkript = "front_content.php";
}

if ($letzteAenderung == "") {
  $letzteAenderung = "0";
}

if ($aktualisierung == "") {
  $aktualisierung = "0";
}

if ($prioritaet == "") {
  $prioritaet = "0";
}

if ($dontshow == "") {
   $dontshow == "";
} else {   
   $dontshow =  'AND E . idart NOT IN ('.$dontshow.')';
}


/* 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 ------------------------------------------------------------ */
$xml_titel = $cfgClient[$client]["path"]["htmlpath"].$cmsPhpSkript."?idcat=".$idcat;
$xml_link  = $cfgClient[$client]["path"]["htmlpath"];

// Header ausgeben
header("Content-type: text/xml");
$xmlOutput = '<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 * FROM `".$cfg["tab"]["clients"]."` WHERE idclient =".$client;
$db->query($query);
$db->next_record();
$MrClientName = str_replace(" ","+",$db->f(name));

$sql="SELECT * FROM `".$cfg["tab"]["lang"]."`, `".$cfg["tab"]["clients_lang"]."` WHERE `".$cfg["tab"]["lang"]."`.idlang = `".$cfg["tab"]["clients_lang"]."`.idlang AND idclient = ".$client." AND `".$cfg["tab"]["lang"]."`.idlang =".$lang;
$db->query($sql);
$db->next_record();
$MrLanguageName = $db->f(name);


$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'
            ".$dontshow."
          ORDER BY
            A . idtree, E . idart";


// execute query
$db->query($query);


// 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
  if (!$modRewrite){
    $link = $xml_link.$cmsPhpSkript."?idart=".$linkid;
  }else{
     if($CVersion=="46x"){
          // link mit ModRewrite 4.6.x
          // cInclude("classes", "class.modrewrite.php");
      }else{
          // link mit ModRewrite 4.8.x
          cInclude("plugins", "mod_rewrite/classes/class.modrewrite.php");
      }
    $link = ModRewrite::build_new_url("?idart=$linkid");
    if(!$mrClientUse){
        $mrClientLink="";
    }else{
        if(!$mrClientUseName){
            $mrClientLink="/".$client;  
        }else{
            $mrClientLink="/".$MrClientName;
        }
    }
    if(!$mrLangUse){
        $mrClientLangLink="";
    }else{
        if(!$mrLangUseName){
            $mrClientLangLink="/".$lang;    
        }else{
            $mrClientLangLink="/".$MrLanguageName;
        }
    }    
    $link = 'http://'.$_SERVER['HTTP_HOST'].$mrClientLink.$mrClientLangLink.$link; 
  }
  
  // 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;
?>
Viel Spass damit :)
Zuletzt geändert von yodatortenboxer am Fr 27. Jun 2008, 16:07, insgesamt 4-mal geändert.

Leo
Beiträge: 308
Registriert: Mi 19. Apr 2006, 19:26
Kontaktdaten:

anderes Sitemap Modul

Beitrag von Leo » Fr 27. Jun 2008, 14:35

Hallo Contenido-Gemeinde,

habe ebenfalls das Google Sitemap Modul von Luxmedia überarbeitet. Mehrsprachigkeit ist bei dieser Version noch nicht berücksichtigt. Mir war es wichtiger, dass alle Artikel in der XML-Datei erscheinen. Bei der alten Version wurden immer nur die Kategorie ausgespielt. Also, ein Teil der Artikel erschien einfach nicht. Das fand ich schade. :( Außerdem ist die Modrewrite-Class noch nicht eingebunden. Es gibt bei meiner Version auch eine Möglichkeit Modrewrite zunutzen, aber die .htaccess-Datei muss dann so aussehen:

Code: Alles auswählen

RewriteEngine on 
RewriteRule ^(.*)_(.*)_(.*).html$  /.../cms/front_content.php?idcat=$2&idart=$3

Beschreibung

Code: Alles auswählen

Google Sitemap

Autor: Luxmedia Oesterreich, derSteffen, HrBee, Leo
Version: Version 1.0.3
Eingabe

Code: Alles auswählen

/**
* Google Sitemaps Ausgabe als XML - 05.06.2005
*
* INPUT
*
* Author Luxmedia Oesterreich
* Copyright www.luxmedia.at
*
* 2005-06-09
* - Abfrage des Skriptnames
* - Einbindung von lastmod je nach Wunsch
* - changefreq
*
* Angepasst durch derSteffen und HrBee
* 2006-01-03
* - Bugfix (Speichern der Werte der Selektfelder cms php skript [durch HrBee] &Auml;nderungsdatum und &Auml;nderungsh&auml;ufigkeit)
* - Neues Feld: priority
*
* Angepasst durch Leo www.bolschakow.de
* 2008-06-17
* - alle Artikel werden ausgespielt
* - ModRewrite kann zugeschaltet werden
* - Quellcode aufgeraeumt ;-)
*/


#Selected category
$selected = "CMS_VALUE[10]";

echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">\n";
echo "<tr valign=\"top\">\n";
echo "<td>Kategorie w&auml;hlen:</td>\n";
echo "<td>\n";
echo "<select name=\"CMS_VAR[10]\">\n";
echo "<option value='0'>---Alle---</option>";

#Fetch all categorys
$query = "SELECT A.idcat, A.level, C.name FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C WHERE A.idcat=B.idcat "."AND B.idcat=C.idcat AND C.idlang='$lang' AND B.idclient='$client' "."AND C.visible=1 ORDER BY A.idtree";

#Execute query
$db->query($query);

#Loop result and build the options
while ($db->next_record()) {
	#Indent spacer
	$spaces = "";

	#How many levels
	$levels = $db->f("level");

	for ($i = 0; $i > $levels; $i ++) {
		#Add 2 spaces for every level
		$spaces = $spaces."  ";
	}

	if ($selected == $db->f("idcat")) {
		#Selected category
		echo "<option selected=\"selected\" value=\"".$db->f("idcat")."\">".$spaces.$db->f("name")."</option>\n";
	} else {
		#Unselected Category
		echo "<option value=\"".$db->f("idcat")."\">".$spaces.$db->f("name")."</option>\n";
	}

}

echo "</select>\n";
echo "</td>\n";
echo "</tr>\n";
echo "</table>\n";

echo "Mehr Info &uuml;ber Google Sitemaps <a href=\"https://www.google.com/webmasters/sitemaps/docs/de/protocol.html\">hier</a>\n";

// selected category
$selected = "CMS_VALUE[0]";
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">\n";
echo "<tr>\n";
echo "<td width=\"200\">cms php skript:</td><td>\n";
echo "<select name=\"CMS_VAR[0]\">\n";
if ($selected == "" || $selected == "front_content.php") {
echo '<option value="front_content.php" selected>front_content.php</option>\n';
echo '<option value="index.php">index.php</option>\n';
}
else {
echo '<option value="front_content.php">front_content.php</option>\n';
echo '<option value="index.php" selected>index.php</option>\n';
}
echo "</td></tr>\n";
echo "</table>\n";

$selected = "CMS_VALUE[1]";
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">\n";
echo "<tr>\n";
echo "<td width=\"200\">Letztes &Auml;nderungsdatum verwenden:</td><td>\n";
echo "<select name=\"CMS_VAR[1]\">\n";

if ($selected == "" || $selected == "0") {
     echo '<option value="0" selected>Nicht setzen</option>\n';
     echo '<option value="1">Ja</option>\n';
}
else {
     echo '<option value="0">Nicht setzen</option>\n';
     echo '<option value="1" selected>Ja</option>\n';
}
echo "</td></tr>\n";
echo "</table>\n";

$selected = "CMS_VALUE[2]";
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">\n";
echo "<tr>\n";
echo "<td width=\"200\">&Auml;nderungsh&auml;ufigkeit aller Seiten:</td><td>\n";
echo "<select name=\"CMS_VAR[2]\">\n";
if ($selected == "always") {
     echo '<option value="always" selected>Immer</option>\n';
} else {
     echo '<option value="always">Immer</option>\n';
}
if ($selected == "hourly") {
     echo '<option value="hourly" selected>St&uuml;ndlich</option>\n';
} else {
     echo '<option value="hourly">St&uuml;ndlich</option>\n';
}
if ($selected == "daily") {
    echo '<option value="daily" selected>T&auml;glich</option>\n';
} else {
    echo '<option value="daily">T&auml;glich</option>\n';
}
if ($selected == "weekly") {
    echo '<option value="weekly" selected>W&ouml;chentlich</option>\n';
} else {
    echo '<option value="weekly">W&ouml;chentlich</option>\n';
}
if ($selected == "monthly") {
    echo '<option value="monthly" selected>Monatlich</option>\n';
} else {
    echo '<option value="monthly">Monatlich</option>\n';
}
if ($selected == "yearly") {
    echo '<option value="yearly" selected>J&auml;hrlich</option>\n';
} else {
    echo '<option value="yearly">J&auml;hrlich</option>\n';
}
if ($selected == "never") {
    echo '<option value="never" selected>Niemals</option>\n';
} else {
   echo '<option value="never">Niemals</option>\n';
}
if ($selected == "" || $selected == "0") {
   echo '<option value="0" selected>Nicht setzen</option>\n';
} else {
   echo '<option value="0">Nicht setzen</option>\n';
}

echo "</td></tr>\n";
echo "</table>\n";

$selected = "CMS_VALUE[3]";
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">\n";
echo "<tr>\n";
echo "<td width=\"200\">Priorit&auml;t aller Seiten:</td><td>\n";
echo "<select name=\"CMS_VAR[3]\">\n";

if ($selected == "0.0") {
    echo '<option value="0.0" selected>0.0</option>\n';
} else {
    echo '<option value="0.0">0.0</option>\n';
}
if ($selected == "0.1") {
    echo '<option value="0.1" selected>0.1</option>\n';
} else {
    echo '<option value="0.1">0.1</option>\n';
}
if ($selected == "0.2") {
    echo '<option value="0.2" selected>0.2</option>\n';
} else {
    echo '<option value="0.2">0.2</option>\n';
}
if ($selected == "0.3") {
    echo '<option value="0.3" selected>0.3</option>\n';
} else {
    echo '<option value="0.3">0.3</option>\n';
}
if ($selected == "0.4") {
    echo '<option value="0.4" selected>0.4</option>\n';
} else {
    echo '<option value="0.4">0.4</option>\n';
}
if ($selected == "0.5") {
    echo '<option value="0.5" selected>0.5</option>\n';
} else {
    echo '<option value="0.5">0.5</option>\n';
}
if ($selected == "0.6") {
    echo '<option value="0.6" selected>0.6</option>\n';
} else {
    echo '<option value="0.6">0.6</option>\n';
}
if ($selected == "0.7") {
    echo '<option value="0.7" selected>0.7</option>\n';
} else {
    echo '<option value="0.7">0.7</option>\n';
}
if ($selected == "0.8") {
    echo '<option value="0.8" selected>0.8</option>\n';
} else {
    echo '<option value="0.8">0.8</option>\n';
}
if ($selected == "0.9") {
    echo '<option value="0.9" selected>0.9</option>\n';
} else {
    echo '<option value="0.9">0.9</option>\n';
}
if ($selected == "1.0") {
    echo '<option value="1.0" selected>1.0</option>\n';
} else {
    echo '<option value="1.0">1.0</option>\n';
}
if ($selected == "" || $selected == "0") {
    echo '<option value="0" selected>Nicht setzen</option>\n';
} else {
    echo '<option value="0">Nicht setzen</option>\n';
}
echo "</td></tr>\n";
echo "</table>\n";


$urlRewrite = "CMS_VALUE[4]";
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">\n";
echo "<tr>\n";
echo "<td width=\"200\">ModRewrite f&uuml;r Google Sitemap Modul verwenden:</td>\n";
echo "<td>\n";
echo "<select name=\"CMS_VAR[4]\">\n";

if("CMS_VALUE[4]" == ""){
    echo '<option value="">- - - Bitte w&auml;hlen! - - -</option>\n';
    echo '<option value="1">Ja</option>\n';
    echo '<option value="0">Nein</option>\n';
}

if("CMS_VALUE[4]" == "1"){
    echo '<option value="1">Ja</option>\n';
    echo '<option value="0">Nein</option>\n';
}

if("CMS_VALUE[4]" == "0"){
    echo '<option value="0">Nein</option>\n';
    echo '<option value="1">Ja</option>\n';
}

echo "</select>";
echo "</td>\n";
echo "</tr>\n";
echo "</table>\n";
Ausgabe

Code: Alles auswählen

<?php

/**
* Google Sitemaps Ausgabe als XML - 05.06.2005
*
* OUTPUT
*
* Author Luxmedia Oesterreich
* Copyright www.luxmedia.at
*
* 2005-06-09
* - Nur Artikel die Online sind
* - lastmod, changefreq, Skriptname aus INPUT
* - lastmod Datumsformat iso8601
*
* Angepasst durch derSteffen
* 2005-12-21
* - Neu: priority
* - Neuer Header (<urlset xmlns="http://www.google.com/schemas/sitemap/0.84" usw...)
*
* Angepasst durch Leo www.bolschakow.de
* 2008-06-17
* - alle Artikel werden ausgespielt
* - ModRewrite kann zugeschaltet werden
* - Quellcode aufgeraeumt ;-)
*/

$urlRewrite = "CMS_VALUE[4]";


function urlRewrite($pfad){

        $pfad = htmlentities($pfad);

        $sonderzeichen = array("&ouml;","&auml;","&uuml;","&Ouml;","&Auml;","&Uuml;","&szlig;","-","&"," ","__");
        $sonderzeichenAlt = array("oe","ae","ue","oe","ae","ue","ss","_","_und_","_","_");

        $pfad = urldecode($pfad);
        $pfad = strtolower($pfad);
        $pfad = str_replace("<br>", "_", $pfad);
        $pfad = strip_tags($pfad);

        for($r=0;$r<count($sonderzeichen);$r++){
                $pfad = str_replace($sonderzeichen, $sonderzeichenAlt, $pfad);
        }
        return $pfad;
}

#System properties in use:
#Type: navigation, Name: idcat_homepage
#Contains idcat of tree to be displayed in sitemap

#Includes
cInclude("frontend", "includes/functions.navigation.php");
cInclude("classes", "class.frontend.permissions.php");
cInclude("classes", "class.frontend.groups.php");
cInclude("classes", "class.frontend.users.php");
// cInclude("classes", "class.template.php");

cInclude('classes', 'class.article.php');
cInclude('includes', 'functions.api.string.php');

#If no tree is selected, use client setting
$newcat = "CMS_VALUE[10]";

if ($newcat=='') {
    $cApiClient = new cApiClient($client);
    $newcat = $cApiClient->getProperty('navigation', 'idcat_homepage');
}

#Get cat tree
$sql = "SELECT level FROM ".$cfg["tab"]["cat_tree"]." WHERE idcat='$newcat'";
$db->query($sql);
$db->next_record();


// Absoluter Pfad
$xml_link = $cfgClient[$client]["path"]["htmlpath"];

// Header ausgeben
header("Content-type: text/xml");
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<urlset xmlns="http://www.google.com/schemas/sitemap/0.84" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.google.com/schemas/sitemap/0.84 http://www.google.com/schemas/sitemap/0.84/sitemap.xsd">'. "\n\n";

$linkGoogleSitemap = "";

$cmsValue1 = "CMS_VALUE[1]";
$cmsValue2 = "CMS_VALUE[2]";
$cmsValue3 = "CMS_VALUE[3]";

$db = new DB_Contenido;
$db2 = new DB_Contenido;
$db3 = new DB_Contenido;
$db4 = new DB_Contenido;
$db5 = new DB_Contenido;

	$sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C "."WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND "."C.idlang='$lang' AND B.idclient='$client' AND "."B.parentid =$newcat AND C.visible=1 "."ORDER by A.idtree";
	$db->query($sql);

	#Build level 1

	while ($db->next_record()) {
		#Check permissions, determine visibility
		$visible = checkCatPermission($db->f("idcatlang"),$db->f("public"));

		if ($visible) {

                        $idcatForGoogle = $db->f("idcat");
                        $title = $db->f("name");
                        $lastmod = iso8601_date($db->f("lastmodified"));

                        if($urlRewrite == 1){
	                        $link = $xml_link . urlRewrite($db->f("name"))."_".$db->f("idcat")."_".$changelang."_.html";
			}else{
				$link = $xml_link . "front_content.php?idcat=".$db->f("idcat");			
			}

                        $linkGoogleSitemap .= "<url>\n";
                        $linkGoogleSitemap .=  "<loc>".htmlspecialchars($link)."</loc>\n";

                        if("CMS_VALUE[1]"){ 
                                $linkGoogleSitemap .= " <lastmod>". $lastmod."</lastmod>\n"; 
                        }
                        if("CMS_VALUE[2]"){ 
                                $linkGoogleSitemap .= " <changefreq>CMS_VALUE[2]</changefreq>\n"; 
                        }
                        if("CMS_VALUE[3]"){ 
                                $linkGoogleSitemap .= " <priority>CMS_VALUE[3]</priority>\n"; 
                        }

                       $linkGoogleSitemap .= "</url>\n\n";

                        $sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C "."WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND "."C.idlang='$lang' AND B.idclient='$client' AND "."B.parentid =".$db->f("idcat")." AND C.visible=1 "."ORDER by A.idtree";
			$db2->query($sql);

			#Build level 2
			$level2 = '';
			$j = 0;

             		allArticleRead($idcatForGoogle);              

			while ($db2->next_record()) {
				$visible = checkCatPermission($db2->f("idcatlang"),$db2->f("public"));

				if ($visible) {
                     		       $idcatForGoogle = $db2->f("idcat");
                        	       $title = $db2->f("name");
                        	       $lastmod = iso8601_date($db2->f("lastmodified"));

		                        if($urlRewrite == 1){
			                        $link = $xml_link . urlRewrite($db2->f("name"))."_".$db2->f("idcat")."_".$changelang."_.html";
					}else{
						$link = $xml_link . "front_content.php?idcat=".$db2->f("idcat");			
				        }

                        	       $linkGoogleSitemap .= "<url>\n";
                        	       $linkGoogleSitemap .=  "<loc>".htmlspecialchars($link)."</loc>\n";
                        	       if("CMS_VALUE[1]"){ 
                                	       $linkGoogleSitemap .= " <lastmod>". $lastmod."</lastmod>\n"; 
                        	       }
                        	       if("CMS_VALUE[2]"){ 
                                	       $linkGoogleSitemap .= " <changefreq>CMS_VALUE[2]</changefreq>\n"; 
                        	       }
                        	       if("CMS_VALUE[3]"){ 
                                	       $linkGoogleSitemap .= " <priority>CMS_VALUE[3]</priority>\n"; 
                        	       }

                        	       $linkGoogleSitemap .= "</url>\n\n";


					$sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C "."WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND "."C.idlang='$lang' AND B.idclient='$client' AND "."B.parentid =".$db2->f("idcat")." AND C.visible=1 "."ORDER by A.idtree";
					$db3->query($sql);

					#Build level 3
					$level3 = '';
					$k = 0;
					
             		                allArticleRead($idcatForGoogle);     

					while ($db3->next_record()) {
						$visible = checkCatPermission($db3->f("idcatlang"),$db3->f("public"));
						if ($visible) {

                     		                      $idcatForGoogle = $db3->f("idcat");
                        	                      $title = $db3->f("name");
                        	                      $lastmod = iso8601_date($db3->f("lastmodified"));

						      if($urlRewrite == 1){
							   $link = $xml_link . urlRewrite($db3->f("name"))."_".$db3->f("idcat")."_".$changelang."_.html";
						      }else{
							   $link = $xml_link . "front_content.php?idcat=".$db3->f("idcat");			
						      }

                        	                      $linkGoogleSitemap .= "<url>\n";
                        	                      $linkGoogleSitemap .=  "<loc>".htmlspecialchars($link)."</loc>\n";
                        	                      if("CMS_VALUE[1]"){ 
                                	                      $linkGoogleSitemap .= " <lastmod>". $lastmod."</lastmod>\n"; 
                        	                      }
                        	                      if("CMS_VALUE[2]"){ 
                                	                      $linkGoogleSitemap .= " <changefreq>CMS_VALUE[2]</changefreq>\n"; 
                        	                      }
                        	                      if("CMS_VALUE[3]"){ 
                                	                      $linkGoogleSitemap .= " <priority>CMS_VALUE[3]</priority>\n"; 
                        	                      }
                        	                      $linkGoogleSitemap .= "</url>\n\n";

				                        $sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C "."WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND "."C.idlang='$lang' AND B.idclient='$client' AND "."B.parentid =".$db3->f("idcat")." AND C.visible=1 "."ORDER by A.idtree";
					                $db4->query($sql);

					                #Build level 4
					                $level4 = '';
					                $o = 0;

							allArticleRead($idcatForGoogle);     

					                while ($db4->next_record()) {
						                $visible = checkCatPermission($db4->f("idcatlang"),$db4->f("public"));
						
                                                                // echo $visible;
                                                                if ($visible) {

                     		                                     $idcatForGoogle = $db4->f("idcat");
                        	                                     $title = $db4->f("name");
                        	                                     $lastmod = iso8601_date($db4->f("lastmodified"));

								     if($urlRewrite == 1){
									$link = $xml_link . urlRewrite($db4->f("name"))."_".$db4->f("idcat")."_".$changelang."_.html";
								     }else{
                                                                        $link = $xml_link . "front_content.php?idcat=".$db4->f("idcat");			
								     }

                        	                                     $linkGoogleSitemap .= "<url>\n";
                        	                                     $linkGoogleSitemap .=  "<loc>".htmlspecialchars($link)."</loc>\n";
                        	                                     if("CMS_VALUE[1]"){ 
                                	                                     $linkGoogleSitemap .= " <lastmod>". $lastmod."</lastmod>\n"; 
                        	                                     }
                        	                                     if("CMS_VALUE[2]"){ 
                                	                                     $linkGoogleSitemap .= " <changefreq>CMS_VALUE[2]</changefreq>\n"; 
                        	                                     }
                        	                                     if("CMS_VALUE[3]"){ 
                                	                                     $linkGoogleSitemap .= " <priority>CMS_VALUE[3]</priority>\n"; 
                        	                                     }
                        	                                     $linkGoogleSitemap .= "</url>\n\n";


                                                                     $sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C "."WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND "."C.idlang='$lang' AND B.idclient='$client' AND "."B.parentid =".$db4->f("idcat")." AND C.visible=1 "."ORDER by A.idtree";
                                                                     $db5->query($sql);

                                                                     #Build level 4
                                                                     $level5 = '';
                                                                     $q = 0;

          							     allArticleRead($idcatForGoogle);  
                                         
                                                                     while ($db5->next_record()) {
                                                                              $visible = checkCatPermission($db5->f("idcatlang"),$db5->f("public"));

						                              	if ($visible) {

                     		                                                     $idcatForGoogle = $db5->f("idcat");
                        	                                                     $title = $db5->f("name");
                        	                                                     $lastmod = iso8601_date($db5->f("lastmodified"));

										     if($urlRewrite == 1){
											$link = $xml_link . urlRewrite($db5->f("name"))."_".$db5->f("idcat")."_".$changelang."_.html";
										     }else{
											$link = $xml_link . "front_content.php?idcat=".$db5->f("idcat");			
										     }

                        	                                                     $linkGoogleSitemap .= "<url>\n";
                        	                                                     $linkGoogleSitemap .=  "<loc>".htmlspecialchars($link)."</loc>\n";
                        	                                                     if("CMS_VALUE[1]"){ 
                                	                                                     $linkGoogleSitemap .= " <lastmod>". $lastmod."</lastmod>\n"; 
                        	                                                     }
                        	                                                     if("CMS_VALUE[2]"){ 
                                	                                                     $linkGoogleSitemap .= " <changefreq>CMS_VALUE[2]</changefreq>\n"; 
                        	                                                     }
                        	                                                     if("CMS_VALUE[3]"){ 
                                	                                                     $linkGoogleSitemap .= " <priority>CMS_VALUE[3]</priority>\n"; 
                        	                                                     }
                        	                                                     $linkGoogleSitemap .= "</url>\n\n";
																				
																				allArticleRead($idcatForGoogle);  

                                                                              }
                                                                     } // end while Level 5

                                                              }

                                                      }	// end while Level 4		

                                             }


                               			}	// end while Level 3


							}

					}	// end while Level 2
        	}
	}	// end while Level 1

	
echo $linkGoogleSitemap;


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;
} 

function allArticleRead($idcat){
	
		global $linkGoogleSitemap, $cmsValue1, $cmsValue2, $cmsValue3, $xml_link, $urlRewrite, $lastmod;

		// selected category
       		$selcat = $idcat;

       		// anzahl der zeichen text
       		$mxtext = 200;

       		$limit = "";

       		$cms_sort_direction = 'desc';
       		$order = 'artsort';

       		$with_start = true;

       		if (strlen($selcat) > 0 AND $selcat != '0') {
          		$options = array ('idcat' => $selcat, "start" => $with_start, "order" => $order, "direction" => $cms_sort_direction);

          		$list = new ArticleCollection($options);

          		$count = $list->count;

          		if ($count > 0) {
             		if (is_numeric($limit) AND strlen($limit) > 0) {
              			if ($limit < $list->count) {
               				$limit_art = $limit;
              			} else {
               				$limit_art = $list->count;
              			}
             		} else {
              			$limit_art = $list->count;
             		}

             		for ($i = 0; $i < $limit_art; $i ++) {

				if($limit_art > 1){

              				$article = $list->nextArticle();
              				$article_id = $article->getField('idart');

              				$title = $article->getField('title');
              				$title = $article->getField('title');

              				$lastmod = $article->getField('lastmodified');

                                if($urlRewrite == 1){
                      		     $href = urlRewrite($title)."_".$selcat."_".$changelang."_".$article_id.".html";
                                }else{
                          	     $href = "front_content.php?idcat=".$selcat."&idart=".$article_id;
                                }

    	              		$link = $xml_link . $href;

    	              		$linkGoogleSitemap .= "<url>\n";
    	              		$linkGoogleSitemap .=  "<loc>".htmlspecialchars($link)."</loc>\n";

    	               		if($cmsValue1){ 
            	                $linkGoogleSitemap .= " <lastmod>". $lastmod."</lastmod>\n"; 
    	              		}

    	               		if($cmsValue2){ 
            	                $linkGoogleSitemap .= " <changefreq>".$cmsValue2."</changefreq>\n"; 
    	              		}

    	              		if($cmsValue3){ 
            	               $linkGoogleSitemap .= " <priority>".$cmsValue3."</priority>\n"; 
    	              		}
    	                    
							$linkGoogleSitemap .= "</url>\n\n";
							

						} // end for

					}
				}

                    // ***** Ende: alle Artikel der Kategorie auslesen *****
				}
				
			// return $linkGoogleSitemap;
}

print '</urlset>';


?>
Hoffe, es hilft einigen.

Viele Grüße

Leonhard

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Beitrag von yodatortenboxer » Fr 27. Jun 2008, 15:12

Außerdem ist die Modrewrite-Class noch nicht eingebunden
bei obenstenhender Version ist die mr der 4.6.x und der 4.8.x eingebunden und man kann im Template die Version auswählen oder auch MR ausschalten.
Mehrsprachigkeit ist bei dieser Version noch nicht berücksichtigt
bei obenstehender Version kann man den Mandanten und die Sprache wie bei den Mr--Versionen mit ausgeben.
Bei der alten Version wurden immer nur die Kategorie ausgespielt. Also, ein Teil der Artikel erschien einfach nicht.
bei oben stehender Version werden alle Kategorien und alle Artikel einer Kategorie ausgegeben die online geschaltet sind. Sind also in einer Kategorie mehrere Artikel werden die auch angezeigt siehe Beispiel:

Code: Alles auswählen

<url>
−
<loc>
http://www.xtended-cooperation.de/werbeagentur/deutsch/downloads/contenido/contenido-downloads.html
</loc>
<lastmod>2008-06-05T17:42:32+02:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<!--  -->
−
<url>
−
<loc>
http://www.xtended-cooperation.de/werbeagentur/deutsch/downloads/contenido/xtcsprydhtmlnavi.html
</loc>
<lastmod>2008-06-08T18:29:01+02:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<!--  -->
−
<url>
−
<loc>
http://www.xtended-cooperation.de/werbeagentur/deutsch/downloads/contenido/xtcsprycontactform.html
</loc>
<lastmod>2008-06-08T16:06:58+02:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<!--  -->
−
<url>
−
<loc>
http://www.xtended-cooperation.de/werbeagentur/deutsch/downloads/contenido/mrplugin486.html
</loc>
<lastmod>2008-06-22T16:04:49+02:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
werbeagentur ist hier der Name des Mandanten
deutsch ist hier der Name der Sprache
downloads und contenido sind hier die Kategorie und contenido-downloads.html ist der Startartikel mit der Artikelübersicht der Kategorie contenido und
xtcsprydhtmlnavi.html xtcsprycontactform.html und mrplugin486.html sind die Artikel in der Kategorie contenido.
Die Seite selbst aus diesem Beispiel ist
http://www.xtended-cooperation.de/werbe ... loads.html

Gruß yodatortenboxer

Leo
Beiträge: 308
Registriert: Mi 19. Apr 2006, 19:26
Kontaktdaten:

Ups...

Beitrag von Leo » Fr 27. Jun 2008, 15:46

Ohhh... wollte niemanden zu Nahe treten. :wink: Es stand bloß in der Beschreibung nicht drin. Dann ist es natürlich besser.

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Beitrag von yodatortenboxer » Fr 27. Jun 2008, 15:51

Ohhh... wollte niemanden zu Nahe treten.
null Panik 8)
Es stand bloß in der Beschreibung nicht drin.
daher oben die Links und die kurzinfo in der Modulbeschreibung. Ich wollte nicht noch die Post von den anderen hier eintragen. Beispiel http://forum.contenido.org/viewtopic.ph ... 148#114148

Ich werd nun aber oben den Beitrag einmal erweitern damit es besser rüber kommt :wink:

josh
Beiträge: 156
Registriert: Do 24. Jun 2004, 09:25
Wohnort: Ahlen
Kontaktdaten:

class.input.helper.php

Beitrag von josh » Do 3. Jul 2008, 12:12

Es gibt wohl unterschiedliche Versionen der Datei class.input.helper.php

Die class.input.helper.php aus contenido 4.8.6 funktioniert nicht mit diesem Modul. Es funktioniert die o. a. Datei von HerrB.

Kann es an anderer Stelle Probleme geben wenn ich
die Datei einfach austausche?

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Beitrag von yodatortenboxer » Do 3. Jul 2008, 14:04

Die class.input.helper.php aus contenido 4.8.6 funktioniert nicht mit diesem Modul
mhhh....also ich hatte die 4.8.4 als Neuinstallation, dann die 4.8.6 darüber gebügelt, dann noch das mr-Plugin drauf und darauf läuft bei mir die GoogleSitmap in dieser Version wunderbar.
Es funktioniert die o. a. Datei von HerrB
Welche meinst du da? Bei dem Paket von HerrB ist keine class.input.helper.php sondern nur eine functions.input.helper.php dabei.

josh
Beiträge: 156
Registriert: Do 24. Jun 2004, 09:25
Wohnort: Ahlen
Kontaktdaten:

Beitrag von josh » Do 3. Jul 2008, 16:20

Welche meinst du da? Bei dem Paket von HerrB ist keine class.input.helper.php sondern nur eine functions.input.helper.php dabei
Sorry, man sollte die Dateinamen richtig lesen. Es funktioniert alles.
Das Problem lag bei mir.

Bei der Gelegenheit noch einen Dank an Dich für die Überarbeitung des Moduls.

Josh

hohorstmann
Beiträge: 270
Registriert: Do 27. Apr 2006, 02:38
Wohnort: Tief im Westen
Kontaktdaten:

Beitrag von hohorstmann » Mo 28. Jul 2008, 15:31

4.8.6 mit MR:

Ich habe eine neue Kategorie mit einem Artikel erstellt.
Das Modul GoogleSitemap für 4.8.6 ist installiert. Beim Abruf sehe ich die folgende Fehlermeldung:
Die XML-Seite kann nicht angezeigt werden
Die XML-Eingabe kann nicht angezeigt werden, wenn Stylesheet XSL verwendet wird. Beheben Sie den Fehler und klicken Sie dann auf Aktualisieren, oder wiederholen Sie den Vorgang später.
--------------------------------------------------------------------------------
Das Endtag 'head' stimmt nicht mit dem Starttag 'meta' überein. Fehler beim Bearbeiten der Ressource 'http://minerva-it.biz...

</head>
--^
Keine Ahnung was oder wo ich Stylesheet XLS verwende ...
Was habe ich falsch gemacht? www.minerva-it.biz

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Beitrag von yodatortenboxer » Mo 28. Jul 2008, 17:46

Wie hast du das Modul installiert?

Du musst als erstes ein komplett leeres Layout anlegen in dem nur CMS_CONTAINER[1] reinschreiben, ohne irgenden Leerzeichen davor oder dahinter. Auch kein HTML HEAD BODY usw. Wirklich NUR CMS_CONTAINER[1].

Dann legst du ein neues Template an und wählst als Layout das Layout aus in dem nur das CMS_CONTAINER[1] steht. Das Template musst du dann dem Artikel zuweisen. Dann müsste es gehen.

Laut deiner Fehlerbeschreibung
Das Endtag 'head' stimmt nicht mit dem Starttag 'meta' überein. Fehler beim Bearbeiten der Ressource 'http://minerva-it.biz...

</head>
sieht es so aus als ob da ein Layout mit HTML-Formatierung zugrunde liegt. Da dürfte nähmlich keinerlei </head> oder so vorkommen.

Der Quelltest der Seite müsste ungefair so aussehen:

Code: Alles auswählen

<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">

<!--  -->
<url>
 <loc>http://www.xtended-cooperation.de/werbeagentur/deutsch/werbeagentur/deutsch/werbeagentur.html</loc>
 <lastmod>2008-06-28T09:06:08+02:00</lastmod>
 <changefreq>weekly</changefreq>
 <priority>0.5</priority>
</url>

<!--  -->
<url>
 <loc>http://www.xtended-cooperation.de/werbeagentur/deutsch/werbeagentur/deutsch/angebote/angebote.html</loc>
 <lastmod>2008-06-29T10:41:17+02:00</lastmod>
 <changefreq>weekly</changefreq>
 <priority>0.5</priority>
</url>
.
.
.
.
usw....
.
.
.
<!--  -->
<url>
 <loc>http://www.xtended-cooperation.de/werbeagentur/deutsch/werbeagentur/deutsch/fewomayer/fotos24.06.2008/fotos.html</loc>
 <lastmod>2008-07-02T20:05:03+02:00</lastmod>
 <changefreq>weekly</changefreq>
 <priority>0.5</priority>
</url>

</urlset>
gruß yodatortenboxer

hohorstmann
Beiträge: 270
Registriert: Do 27. Apr 2006, 02:38
Wohnort: Tief im Westen
Kontaktdaten:

Beitrag von hohorstmann » Di 29. Jul 2008, 05:19

Ich habe die XML-Sitemap bei Google eingereicht:
Fehler, XML entspricht nicht dem Format.
Danach habe ich versucht meine XML-Datei im Browser aufzurufen. Es erscheint die Startseite meiner Website.
Ok, verstanden, XML lag in einem ungünstigen Verzeichnis.
XML in ein anderes Verzeichnis verschoben, erneut bei Google eingereicht. Jetzt warten wir mal.

/Nachtrag:/
Google meldet nach der o.a. Einreichung:
Nicht unterstütztes Dateiformat
Anscheinend hat Ihre XML-Sitemap ein Format, das nicht unterstützt wird. Stellen Sie sicher, dass Ihre XML-Sitemap unseren XML-Sitemap-Richtlinien entspricht, und reichen Sie sie erneut ein.
/Ende Nachtrag:/

Vorher jedoch XML-Sitemap aus dem neuen Verzeichnis im Browser aufgerufen. http://www.minerva-it.biz/GoogleSitemapXML.xml Jetzt erfolgt die Fehlermeldung:
Die XML-Seite kann nicht angezeigt werden
Die XML-Eingabe kann nicht angezeigt werden, wenn Stylesheet verwendet wird. Beheben Sie den Fehler und klicken Sie dann auf Aktualisieren, oder wiederholen Sie den Vorgang später.
--------------------------------------------------------------------------------
Ungültig auf der obersten Ebene im Dokument. Fehler beim Bearbeiten der Ressource 'http://www.minerva-it.biz/GoogleSitemapX...

- <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:s...
Ist mein Weg zur Fehleranalyse sinnvoll? Wenn ja, gibt´s noch einen morgendlichen Tip?

Meine XML sieht so aus:

Code: Alles auswählen

- <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">
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Startseite_2008_05_30.html</loc> 
  <lastmod>2008-07-25T15:08:34+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Open-Source/Open-Source.html</loc> 
  <lastmod>2008-05-27T18:41:54+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Open-Source/OSS-Beratung/OSS-Beratung.html</loc> 
  <lastmod>2008-07-26T11:06:05+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Open-Source/OSS-Katalog/OSS-Katalog.html</loc> 
  <lastmod>2008-03-01T14:22:02+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/CMS---Webloesungen/CMS-Webloesungen.html</loc> 
  <lastmod>2008-03-01T14:26:23+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/CMS---Webloesungen/Dienstleistungen/CMS-Dienstleistungen.html</loc> 
  <lastmod>2008-01-22T17:15:32+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/CMS---Webloesungen/Contenido/Contenido.html</loc> 
  <lastmod>2008-03-01T14:31:12+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/CMS---Webloesungen/Diese-Website/Diese-Website.html</loc> 
  <lastmod>2008-03-01T14:35:50+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/CMS-Shop/Worldsoft.html</loc> 
  <lastmod>2008-03-01T14:38:47+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/CMS-Shop/Preisliste.html</loc> 
  <lastmod>2008-02-01T17:21:00+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/IT---Integration/IT-Integration.html</loc> 
  <lastmod>2008-01-27T18:09:39+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Seminare/Seminare-.html</loc> 
  <lastmod>2008-03-01T14:39:55+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Seminare/Migration/OSS-Migration.html</loc> 
  <lastmod>2008-05-13T12:07:20+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Seminare/Business-Intelligence/OSS-Business-Intelligence.html</loc> 
  <lastmod>2008-05-13T12:09:34+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Seminare/OpenOffice/OSS-OpenOffice.org.html</loc> 
  <lastmod>2008-05-13T12:10:43+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Ghostwriting/Ghostwriting.html</loc> 
  <lastmod>2008-03-01T14:49:29+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Services.html</loc> 
  <lastmod>2008-02-02T08:25:26+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Computer-Bild.html</loc> 
  <lastmod>2008-01-24T16:48:54+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Microsoft.html</loc> 
  <lastmod>2008-01-24T18:14:30+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Computerbild-Wichtige-Downloads.html</loc> 
  <lastmod>2008-02-02T07:12:44+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Spiegel.html</loc> 
  <lastmod>2008-02-02T07:27:29+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Focus.html</loc> 
  <lastmod>2008-02-02T07:28:19+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Stern.html</loc> 
  <lastmod>2008-02-02T07:32:00+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Zeit.html</loc> 
  <lastmod>2008-02-02T07:37:58+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Frankfurter.html</loc> 
  <lastmod>2008-02-02T07:47:18+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Sueddeutsche.html</loc> 
  <lastmod>2008-02-02T07:48:14+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/Welt.html</loc> 
  <lastmod>2008-02-02T07:51:33+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/ARD.html</loc> 
  <lastmod>2008-02-02T08:21:39+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Services/ZDF.html</loc> 
  <lastmod>2008-02-02T08:23:42+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/e-shop/eShop.html</loc> 
  <lastmod>2008-03-19T14:17:04+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/GoogleSitemap/XMLSitemap.html</loc> 
  <lastmod>2008-07-28T16:20:05+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Sitemap/Sitemap.html</loc> 
  <lastmod>2008-01-20T18:27:09+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--  Impressum 
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Impressum/Impressum.html</loc> 
  <lastmod>2008-03-01T14:55:34+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Home/Go-Home.html</loc> 
  <lastmod>2008-01-19T11:53:18+01:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/RSS-test.html</loc> 
  <lastmod>2005-08-11T15:45:47+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/RSS-Creator-test.html</loc> 
  <lastmod>2005-08-17T14:41:04+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Newsletter-Handler.html</loc> 
  <lastmod>2005-10-24T17:25:51+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Fehlerseite/Fehlerseite.html</loc> 
  <lastmod>2005-07-26T16:53:10+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/Suchergebnisse/Suchergebnisse.html</loc> 
  <lastmod>2005-09-28T17:04:36+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
- <!--   
  --> 
- <url>
  <loc>http://minerva-it.biz/00_MIT/HTML-Newsletter-Templates/Standard.html</loc> 
  <lastmod>2007-07-26T22:35:45+02:00</lastmod> 
  <changefreq>weekly</changefreq> 
  </url>
  </urlset>

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Beitrag von yodatortenboxer » Di 29. Jul 2008, 07:17

Moin moin...

diese - vor dem <url> und dem <!-- kommen die von einem Editor oder sind die auch so im Quelltext?

Code: Alles auswählen

- <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">
- <!--   
  -->
- <url>
  <loc>http://minerva-it.biz/00_MIT/Startseite_2008_05_30.html</loc>
  <lastmod>2008-07-25T15:08:34+02:00</lastmod>
  <changefreq>weekly</changefreq>
  </url>
- <!--   
  -->
- <url> 
Nachtrag:

Ah...das ist die Ansicht aus dem Browser...
Ich habe es eben einmal in eine Datei eingefügt und diese sieht für mich in Ordnung aus siehe hier
Die von mir sieht so aus siehe hier
Die einzigen Unterschiede die ich hier erkennen kann sind einmal bei mir

Code: Alles auswählen

<!--  -->
und bei dir

Code: Alles auswählen

<!--   
  -->
und bei mir ist noch das

Code: Alles auswählen

<priority>0.5</priority>
drin, aber diese Unterschiede dürten nix bewirken.

Welches Modul benutzt du?
Die aus dem ersten Beitrag oder die aus dem zweiten von Leo? Das sind zwei unterschiedliche Module.

gruß yodatortenboxer

hohorstmann
Beiträge: 270
Registriert: Do 27. Apr 2006, 02:38
Wohnort: Tief im Westen
Kontaktdaten:

Beitrag von hohorstmann » Di 29. Jul 2008, 09:16

So, vorab, es läuft.
Richtig, yodatortenboxer, die Zeichen kamen aus einem Editor.

Kurz: Was war mein Fehler?
Ich habe mir die XML-Sitemap im Browser anzeigen lassen, markiert und dann kopiert (aber dabei vergessen, dass es sich um eine Browseranzeige handelt). Diese Kopie habe ich dann in die existierende XML-Sitemap eingefügt.

Nach Deinem Einwand habe ich jetzt mit "speichern unter" eine neue XML-Datei erzeugt und diese dann bei Herrn Google eingereicht. ... und siehe da, er ist zufrieden mit mir.
Ist mein Vorgehen für die Zukunft dann entsprechend? Anzeigen, speichern unter und dann erneut einreichen?

Danke für Deine Geduld und Deine Mühen, Ho

PS: Ich benutze das Modul aus dem ersten Beitrag

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Beitrag von yodatortenboxer » Di 29. Jul 2008, 09:46

Nach Deinem Einwand habe ich jetzt mit "speichern unter" eine neue XML-Datei erzeugt und diese dann bei Herrn Google eingereicht.
Wenn ich das richtig verstanden habe hast du nun eine Kopie der erzeugten Seite angelegt, diese auf deinen Server kopiert und diese Kopie dann bei Google angegeben?

Falls ja...das brauchst du so nicht. Dann müsstest du ja bei jeder Änderung an den Links usw. das ganze noch einmal machen.

Die GoogleXMLSitemap.html ist bei mir auch keine richtige .html sondern nur eine durch Mod_Rewrite erzeugte ".html" Seite.
Die richtige Adresse ist da:
http://www.xtended-cooperation.de/cms/f ... p?idart=41
Dadurch wird bei Änderungen diese Seite immer automatisch angepasst. Ich hätte also auch diese Seite bei Google einbinden können.
Danke für Deine Geduld und Deine Mühen, Ho
np

Gruß yodatortenboxer

hohorstmann
Beiträge: 270
Registriert: Do 27. Apr 2006, 02:38
Wohnort: Tief im Westen
Kontaktdaten:

Beitrag von hohorstmann » Di 29. Jul 2008, 11:25

Nochmals Dank yodatortenboxer, ich werde das heute Nachmittag auch so installieren.
Gruß, Ho

Gesperrt