Créer un sitemap en php
20 messages
• Page 1 sur 2 • 1, 2
Consultez la formation au REFERENCEMENT naturel Google de WebRankInfo / Ranking Metrics
-

Colansi - Nouveau WRInaute

- Messages: 3
- Inscription: 13 Nov 2008
Créer un sitemap en php
Bonjour,
Je souhaiterai créer un sitemap pour google en php. Seulement, j'ai lu que le sitemap devait être en XML. Hors, si je fais un sitemap.php, ça ne fonctionnera pas ?
Et si je fais un sitemap.xml, je ne pourrais pas faire un fichier dynamique qui se met à jour à chaque interrogation (comme un .php par exemple)
Bref, je ne comprend pas comment faire un fichier xml dynamique en utilsant php ?
Je souhaiterai créer un sitemap pour google en php. Seulement, j'ai lu que le sitemap devait être en XML. Hors, si je fais un sitemap.php, ça ne fonctionnera pas ?
Et si je fais un sitemap.xml, je ne pourrais pas faire un fichier dynamique qui se met à jour à chaque interrogation (comme un .php par exemple)
Bref, je ne comprend pas comment faire un fichier xml dynamique en utilsant php ?
-

YoyoS - WRInaute accro

- Messages: 3827
- Inscription: 14 Sep 2006
Tu n'y es pas. En fait on utilise les deux.
Un sitemap.xml lisible seulement par des robots comme Google qui propose son ajout dans ses outils webmasters.
Une page normale (exemple monsite.php) reprenant toutes les catégories et liens principaux de ton site. Il permet d'être crawlé par les robots et permet aussi au visiteur de s'y retrouver.
Les deux peuvent être générés en php mais n'ont pas la même utilité ni la même finalité. N'oublie pas qu'il est possible d'appeler une page X.php X.xml grâce aux règles de réécritures
Et puis, tu as juste à changer les headers en php pour faire comme si ta page X.php était un fichier xml !
Un sitemap.xml lisible seulement par des robots comme Google qui propose son ajout dans ses outils webmasters.
Une page normale (exemple monsite.php) reprenant toutes les catégories et liens principaux de ton site. Il permet d'être crawlé par les robots et permet aussi au visiteur de s'y retrouver.
Les deux peuvent être générés en php mais n'ont pas la même utilité ni la même finalité. N'oublie pas qu'il est possible d'appeler une page X.php X.xml grâce aux règles de réécritures
-

Colansi - Nouveau WRInaute

- Messages: 3
- Inscription: 13 Nov 2008
Merci, la réécriture d'url était la brique qui manquée à mon raisonnement.
Pour les générations futures que Dieu Google enverra sur ce post. Si ça peut les aider un peu
Le script php pour générer le sitemap dynamique :
fct_general.php contient la connexion à la base MySQL
L'extrait du .haccess pour réécrire sitemap.php en sitemap.xml :
Pour les générations futures que Dieu Google enverra sur ce post. Si ça peut les aider un peu
Le script php pour générer le sitemap dynamique :
fct_general.php contient la connexion à la base MySQL
- Code: Tout sélectionner
<?php
require_once("fct_general.php");
header("Content-Type: text/xml;charset=utf-8");
echo '<?xml version="1.0" encoding="utf-8"?>';
?>
<urlset xmlns="http://www.google.com/schemas/sitemap/0.84">
<?php
// Charge les actu pour créer le tableau
$vChaineSQL="SELECT actu.id_actu, actu.motsCles FROM actu ORDER BY id_actu DESC";
$vResult=mysql_query($vChaineSQL);
while ($row=mysql_fetch_array($vResult)) {
$urlActu=$_SERVER["HTTP_HOST"]."/actualite-".$row["id_actu"]."-".str_replace(" ","_",$row["motsCles"]).".html";
?>
<url>
<loc><?php echo $urlActu; ?></loc>
</url>
<?php } ?>
</urlset>
L'extrait du .haccess pour réécrire sitemap.php en sitemap.xml :
- Code: Tout sélectionner
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^sitemap.xml /sitemap.php [NC,L]
-

seebz - WRInaute impliqué

- Messages: 808
- Inscription: 15 Avr 2007
Salut,
pour ma part, comme toutes les pages de mon site passent par index.php, j'ai ajouté un code qui ajoute systématiquement toutes les urls qui ne provoquent pas d'erreur 404 dans la db.
Ca se présente comme ça (à adapter bien entendu) :
et le fichier sitemap.php
Si ça peut aider
pour ma part, comme toutes les pages de mon site passent par index.php, j'ai ajouté un code qui ajoute systématiquement toutes les urls qui ne provoquent pas d'erreur 404 dans la db.
Ca se présente comme ça (à adapter bien entendu) :
- Code: Tout sélectionner
// Gestion du SITEMAP
if( !isset($NOSITEMAP) AND !ereg('\?', $_SERVER['REQUEST_URI']) AND !ereg('#', $_SERVER['REQUEST_URI']) ) {
$url_ = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$title_ = str_replace(' - '.$_CONFIG['name'], '', $_HEAD['title']);
$title_ = mysql_escape_string($title_);;
$module_ = ucfirst(module_name());
// On vérifie que le domaine est correct
if(ereg(SITE_URL, $url_)) {
$url_ = str_replace(SITE_URL, '', $url_);
$sql = "UPDATE sitemap SET title='{$title_}', counter=counter+1 WHERE url='{$url_}'";
db_query($sql);
if(mysql_affected_rows()==0) {
$timestamp_ = time();
$sql = "
INSERT INTO sitemap(url, title, module, counter, timestamp)
VALUES('{$url_}', '{$title_}', '{$module_}', '1', '{$timestamp_}')
";
db_query($sql);
}
}
}
et le fichier sitemap.php
- Code: Tout sélectionner
<?php
# Génère le fichier sitemap.xml
// Includes
include('db.inc.php');
include('functions.inc.php');
// Connexion à la DB
db_connect();
// On récupère SITE_URL
query_config();
// En-tete http
header('Content-Type: text/xml');
// Début du fichier
echo <<< ECHO
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
ECHO;
// Récupération des data
$sql = 'SELECT * FROM sitemap ORDER BY url';
$result = db_query($sql);
while( $element = mysql_fetch_assoc($result) ) {
if ( !ereg('\./', $element['url']) AND !ereg('index\.php', $element['url']) AND !ereg('#', $element['url']) ) {
$url = SITE_URL . $element['url'];
$lastmod = date('Y-m-d', $element['timestamp']);
echo "
<url>
<loc>{$url}</loc>
<lastmod>{$lastmod}</lastmod>
</url>
";
}
}
// Fermeture de la DB
db_close();
?>
</urlset>
Si ça peut aider
- Rod la Kox
- WRInaute accro

- Messages: 3253
- Inscription: 24 Juin 2008
Ouais, enfin, tout sitemap est spécifique à chaque site.
un type qui sait faire une requête vers sa bdd et mettre en forme pour le format attendu par GG obtiendra un joli sitemap.
Pas compliqué en somme.
Le truc important, comme pour tout flux ou page, c'est de ne pas se planter dans l'encodage.
un type qui sait faire une requête vers sa bdd et mettre en forme pour le format attendu par GG obtiendra un joli sitemap.
Pas compliqué en somme.
Le truc important, comme pour tout flux ou page, c'est de ne pas se planter dans l'encodage.
-

WebzineMusik - WRInaute discret

- Messages: 88
- Inscription: 19 Avr 2008
Bonjour à tous,
Je suis d'accord que tout site doit posséder son propre sitemap.
L'idéal est de le créer en fichier compressé, Google aime le Gz

Je suis d'accord que tout site doit posséder son propre sitemap.
L'idéal est de le créer en fichier compressé, Google aime le Gz
- Rod la Kox
- WRInaute accro

- Messages: 3253
- Inscription: 24 Juin 2008
Mouais, mais ça avance à quoi ?
10k ou 200ko... sur les hébergeur d'aujourd'hui...
10k ou 200ko... sur les hébergeur d'aujourd'hui...
-

WebzineMusik - WRInaute discret

- Messages: 88
- Inscription: 19 Avr 2008
Un fichier XML est automatiquement indexé par Google à moins de l'interdire,
donc le contenu est visible ensuite depuis la toile.
Un fichier compressé restera invisible.
Ce n'est qu'une idée parmi tant d'autre
donc le contenu est visible ensuite depuis la toile.
Un fichier compressé restera invisible.
Ce n'est qu'une idée parmi tant d'autre
-

WebzineMusik - WRInaute discret

- Messages: 88
- Inscription: 19 Avr 2008
Euh... ne doit-on pas ajouter quelques balises optionnelles ?
- <url>
<loc>http://www.mon-site-a-moi.fr/agenda.html</loc>
<lastmod>2008-12-06</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
-

screuscreu - WRInaute impliqué

- Messages: 968
- Inscription: 14 Jan 2008
WebzineMusik a écrit:Euh... ne doit-on pas ajouter quelques balises optionnelles ?- <url>
<loc>http://www.mon-site-a-moi.fr/agenda.html</loc>
<lastmod>2008-12-06</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
Pas de réponses résponse de pro ?
- ayor
- WRInaute discret

- Messages: 211
- Inscription: 29 Oct 2008
WebzineMusik a écrit:Euh... ne doit-on pas ajouter quelques balises optionnelles ?- <url>
<loc>http://www.mon-site-a-moi.fr/agenda.html</loc>
<lastmod>2008-12-06</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
tu l'as dit, c'est optionnel
pour ce qui est du xml vs php, j'envoie tout à google dans un sitemap.php, et il aime très bien
rien n'interdit un fichier.php à renvoyer du xml, tant que le header est bien positionné :
- Code: Tout sélectionner
header("Content-Type: text/xml;charset=utf-8");
echo '<?xml version="1.0" encoding="utf-8"?>';
donc, la regle de réécriture sitemap.php => sitemap.xml n'apporte rien
-

screuscreu - WRInaute impliqué

- Messages: 968
- Inscription: 14 Jan 2008
ayor a écrit:donc, la regle de réécriture sitemap.php => sitemap.xml n'apporte rien
Elle apporte au moins à yahoo, msn ... et autres moteurs de recherche !
Sinon on peut mettre ça dans le robots.txt
- Code: Tout sélectionner
Sitemap: http://www.example.com/sitemap.xml
Mais je sais pas si un php sera apprécié par les autres
20 messages
• Page 1 sur 2 • 1, 2
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 :
- créer un sitemap en PHP (pages dynamiques)
- Impossible de créer un sitemap
- Creer son plan sitemap
- Créer des pages php, index.php?mod=nanan!
- Sitemap : vaut-il mieux en créer plusieurs ?
- Impossible de créer une page Sitemap.xml
- Créer son sitemap automatiquement avec php5
- Créer un sitemap video avec des videos embed
- Quel logiciel simple pour créer un sitemap (+ tutoriel) ?
- Comment créer son sitemap avec des cadres ?
Consultez la description détaillée des produits ou services de Google suivants : Google Sitemaps
- Combinaison de mots-clés
Cet outil vous permet de créer à partir de quelques mots-clés une liste d'expressions constituées des mots pris dans tous les ordres possibles. Il sert aux analyses de positionnement et achats de mots-clés.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
