Format du sitemap

Consultez la formation au REFERENCEMENT naturel Google de WebRankInfo / Ranking Metrics


varioflux
WRInaute discret
WRInaute discret
 
Messages: 103
Inscription: 6 Aoû 2004

Format du sitemap

Message le Mer Juin 15, 2005 8:11

Bonjour,

Malgré 4 ou 5 tentatives, sitemap continue à me dire son laconique "parsing error" quand il charge mon fichier...

J'ai beau filtrer les entrées suspectes, les caractères bizarres, etc, je n'arrive pas à comprendre ce qui lui déplait dans ce fichier.

Existe-t-il un validateur ?

Merci


Mumuri
WRInaute passionné
WRInaute passionné
 
Messages: 1800
Inscription: 3 Nov 2004

Message le Mer Juin 15, 2005 8:12

a tu 'essayer les scripts du topics principale ?


varioflux
WRInaute discret
WRInaute discret
 
Messages: 103
Inscription: 6 Aoû 2004

Message le Mer Juin 15, 2005 8:17

Oui, et je m'en suis inspiré pour pondre mon fichier en l'adaptant à mon cas d'espèces, c'est à dire que j'ai un script de tracking qui me met déjà en bdd les infos sur les url donc je pompe dedans...

Sur le site de mon profil, à la racine, le fichier se nomme educador.xml, mais je n'arrive même pas à l'afficher avec explorer qui me dit erreur...


srappaille
WRInaute discret
WRInaute discret
 
Messages: 207
Inscription: 19 Jan 2004

Message le Mer Juin 15, 2005 8:25

Bonjour,

Avez vous bien remplacé le caracère
Code: Tout sélectionner
&
par la chaîne
Code: Tout sélectionner
&
? Dans la négative, essayez :wink:

Bien à vous,

Serge


varioflux
WRInaute discret
WRInaute discret
 
Messages: 103
Inscription: 6 Aoû 2004

Message le Mer Juin 15, 2005 8:30

Voici le bout de mon code qui génère le fichier :
Code: Tout sélectionner
$f_xml  = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
$f_xml .= "<urlset xmlns=\"http://www.google.com/schemas/sitemap/0.84\">\n";

$liste = mysql_query("SELECT url,date FROM sitemap order by url");
while(list($a,$b) = mysql_fetch_array($liste)) {
   $chaine = $a;
   if (ereg("prev=",$a)) {$a = "none";}
     if (ereg("slideshow",$a)) {$a = "none";}
     if (ereg("about",$a)) {$a = "none";}
     if (ereg("id_srv=",$a)) {$a = "none";}
     if (ereg("search",$a)) {$a = "none";}
     if (ereg("fichier",$a)) {$a = "none";}
     if (ereg("register",$a)) {$a = "none";}
     if (ereg("%3D",$enr[1])) {$enr[1] = "none";}
     if (ereg("#",$a)) {$a = "none";}
     if (ereg("pg=",$a)) {$a = "none";}
     if (ereg("id=",$a)) {if (!ereg("image_id=",$a)) {$a = "none";}}
     if (ereg("expand=",$a)) {if (!ereg("expand=all",$a)) {$a = "none";}}
   if ($a <> "none") {
      if (ereg(".html",$a)) {
           $chaine = $a;
         $chaine2 = strstr($chaine,".html");
         $chaine2 = ereg_replace(".html","",$chaine2);
         $chaine2 = trim($chaine2);
         if ($chaine2 == '') {
            $chaine = ereg_replace(".html","",$chaine);
            $chaine = ereg_replace("gallery/","",$chaine);
            $chaine2 = substr($chaine,strlen($chaine)-1,1);
            if ($chaine2 <> "-") {
               $chaine = ereg_replace("-"," ",$chaine);
               $chaine = trim($chaine);
            } else {
                 $a = "none";
            }
         }
      }
      if (ereg(".php",$a)) {
           $chaine = $a;
           if (ereg("slideshow",$chaine)) {$a = "none";}
      }
   }
   if ($a <> "none") {
      $f_xml .= "<url>\n";
      $f_xml .= "<loc>$a</loc>\n";
      $f_xml .= "<lastmod>$b</lastmod>\n";
      $f_xml .= "<changefreq>daily</changefreq>\n";
      $f_xml .= "<priority>0.5</priority>\n";
      $f_xml .= "</url>\n";
      $i++;
   }
   $j++;
}

$f_xml .= "</urlset>\n";

$h = fopen ("educador.xml","w+");
fwrite($h, $f_xml);
fclose($h);
echo "terminér> $i url sur $j";


par rapport à la proposition de "jouer.org" je n'ai fais qu'ajouter des tests pour filtrer les lignes à évacuer, et j'ai ajouter des \n afin de pouvoir l'éditer...


varioflux
WRInaute discret
WRInaute discret
 
Messages: 103
Inscription: 6 Aoû 2004

Message le Mer Juin 15, 2005 8:54

J'ai essayé de remplacer les & par &amp; et il semble que du coup explorer le digère mieux ...

Je resubmit et je vous tiens au courant, ça pourra servir à d'autres !
Merci
:)


WebRankInfo
Administrateur du site
Administrateur du site
 
Messages: 18956
Inscription: 19 Avr 2002

Message le Mer Juin 15, 2005 9:25



varioflux
WRInaute discret
WRInaute discret
 
Messages: 103
Inscription: 6 Aoû 2004

Message le Mer Juin 15, 2005 9:32

Merci de l'info, il semble passer à ce validateur, sauf que la ligne "No declaration for document root found, validation was lax" ne me cause pas vraiment !

D'autre part, suffit-il d'ajouter à la fin :
Code: Tout sélectionner
$f_xml = utf8_encode($f_xml);

pour que le fichier soit directement codé en UTF8 ?


srappaille
WRInaute discret
WRInaute discret
 
Messages: 207
Inscription: 19 Jan 2004

Message le Mer Juin 15, 2005 9:50

Bonjour,

A mon sens, ce ne sera même pas nécessaire dans la mesure où vos liens n'offrent pas de caractères étendus (avec accents etc.). Ce cas de figure se présentant lorsque vous ajoutez des descriptions en utilisant des arguments de type &desc=titre_de_la_page (un espace = _).

Dans ce cas, votre fonction utf8_encode sera de la partie :wink:

Pour le reste, Google ne devrait avoir aucun mal à lire votre fichier.

Bien à vous.


srappaille
WRInaute discret
WRInaute discret
 
Messages: 207
Inscription: 19 Jan 2004

Message le Mer Juin 15, 2005 10:00

Rebonjour,

Avant que votre fichier ne soit vérifié par Google, vérifiez et corrigez rapidement le dernier noeud de votre fichier XML, la variable LOC présente un erreur (lien doublé).

Bien à vous.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation REFERENCEMENT naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités