2010-06-13 11 views
0

J'ai créé sitemap pour mon site en utilisant un code de référence dans le lien ci-dessouscréer dynamiquement xml sitemap en utilisant php

Creating an XML sitemap with PHP

mais je reçois erreur

XML Parsing Error: entité non définie Lieu:

que mon contenu est comme suit

< < alt >> attribut et il dit quelque chose comme

< loc>http://www.example.com/700- & laquo; alt & raquo; -attributes en images.php </loc>

Quelqu'un peut-il me dire comment se débarrasser de cette erreur.

+1

est pas vraiment un bon nom de la balise. Il n'ajoute vraiment aucune valeur à la publication. – Travis

+0

Salut, Encore je n'ai pas résolu cela .. N'importe qui m'aider à résoudre ce problème. – Rekha

+1

Veuillez indiquer le code que vous utilisez pour générer le fragment qui déclenche l'erreur. – Gordon

Répondre

2

Je pense que vous suffit d'utiliser la fonction urlencode() sur la valeur de lien et les entités retransformer avant d'utiliser html_entity_decode():

echo '<loc>'.urlencode(html_entity_decode($link)).'<loc>'; 

ou quelque chose de similaire dans votre code.

0

La meilleure solution est d'avoir accès à vous dossier racine et ajouter à votre fichier Apache .htaccess les lignes suivantes

RewriteEngine On 
RewriteRule sitemap\.xml sitemap.php [L] 

et ayant simplement un fichier sitemap.php dans votre dossier racine qui seraient donc normalement accessibles via http://yoursite.com/sitemap.xml, l'URL par défaut où tous les moteurs de recherche vont d'abord chercher.

Ce fichier sitemap.php commence par

<?php header('Content-type: application/xml; charset=utf-8') ?> 
<?php echo '<?xml version="1.0" encoding="UTF-8"?>' ?> 

Je cette solution et il fonctionne comme un charme :) Dynamiquement