Google SiteMaps : comment guider Google dans son site

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


Rackham
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 182
Inscription: Jeu Sep 09, 2004 11:18

Message le Sam Juin 04, 2005 17:20

Dans un message précédent Phobos disait avoir écrit quelque chose, suis toujours intéressé.

Il y a un exemple de script ici
http://www.iteam5.net/francesco/sitemap_gen/

Je m'en vais le tester, mais le voici (l'accès au site est très long) :

Code: Tout sélectionner
<%
' sitemap_gen.asp
' A simple ASP script to automatically produce sitemaps for a webserver, in the Google Sitemap Protocol (GSP)
' by Francesco Passantino
' www.iteam5.net/francesco/sitemap_gen
' v0.1 released 4 june 2005
'
' BSD 2.0 license,
' http://www.opensource.org/licenses/bsd-license.php



'modify this to change website and root folder
session("server")="http://www.yousite.net"
vDir = "/blog/"



MAXURLS_PER_SITEMAP = 50000
set fso = CreateObject("Scripting.FileSystemObject")
root = Server.MapPath(vDir) & "\"
set fold = fso.getFolder(root)

response.ContentType = "text/xml"
response.write "<?xml version='1.0' encoding='UTF-8'?>"
response.write "<!-- generator='http://www.iteam5.net/francesco/sitemap_gen'-->"
response.write "<urlset xmlns='http://www.google.com/schemas/sitemap/0.84'>"

if fold.subfolders.count > 0 then
for each f in fold.subfolders
sfoldname = root & f.name & "\"
fpath = vDir & f.name & "/"

if folderpermission(fpath) then
set cfold = fso.getFolder(sfoldname)
if cfold.subfolders.count > 0 or cfold.files.count > 0 then
for each sf in cfold.subfolders
sfoldname = root & f.name & "\" & sf.name & "\"
path = vDir & f.name & "/" & sf.name & "/"
set sfold = fso.getFolder(sfoldname)
if sfold.files.count > 0 then
for each fil in sfold.files
response.write getfilelink(path, fil)
next
end if
next
for each fil in cfold.files
response.write getfilelink(fpath, fil)
next
else
response.Write getfoldlink(cfold, fpath)
end if
if session("URLS")=MAXURLS_PER_SITEMAP then exit for
end if
next
end if

if session("URLS")<MAXURLS_PER_SITEMAP then
for each fil in fold.files
response.write getfilelink(vDir, fil)
next
end if

response.write "</urlset>"
set fso = nothing


Function getfilelink(fold, file)
If FileExtensionIsBad(file) then Exit Function
filelmdate=file.dateLastModified
if month(filelmdate)<10 then filedatem="0"
if day(filelmdate)<10 then filedated="0"

filedate=year(filelmdate)&"-"&filedatem&month(filelmdate)&"-"&filedated&day(filelmdate)
getfilelink = "<url><loc>"&server.htmlencode(session("server")&fold&file.name)&"</loc><lastmod>"&filedate&"</lastmod><priority>1.0</priority></url>"
session("URLS")=session("URLS")+1
Response.Flush
End Function

Function Folderpermission(pathName)

'modify this to exclude path
PathExclusion=Array("/test1/","/test/test2/")
Folderpermission =True
for each PathExcluded in PathExclusion
if ucase(pathName) = ucase(PathExcluded) then
Folderpermission = False
exit for
end if
next
End Function

Function FileExtensionIsBad(sFileName)
Dim sFileExtension, bFileExtensionIsValid, sFileExt

'http://www.googleguide.com/file_type.html
Extensions = Array("gif","jpg","zip","pdf","ps","html","htm","asp","wk1","wk2","wk3","wk4","wk5","wki","wks","wku","lwp","mw","xls","ppt","doc","wks","wps","wdb","wri","rtf","ans","txt")

if len(trim(sFileName)) = 0 then
FileExtensionIsBad = true
Exit Function
end if

sFileExtension = right(sFileName, len(sFileName) - instrrev(sFileName, "."))
bFileExtensionIsValid = false 'assume extension is bad
for each sFileExt in extensions
if ucase(sFileExt) = ucase(sFileExtension) then
bFileExtensionIsValid = True
exit for
end if
next
FileExtensionIsBad = not bFileExtensionIsValid
End Function
%>
Dernière édition par Rackham le Sam Juin 04, 2005 17:27, édité 2 fois.


Phobos
WRInaute passionné
WRInaute passionné
 
Messages: 937
Inscription: Dim Mar 21, 2004 16:36

Message le Sam Juin 04, 2005 17:23

<loc>http://www.f**dstyling.be/detailfr.php?recordID=77</loc>
???</url>
doit être:
<loc>http://www.f**dstyling.be/detailfr.php?recordID=77</loc>
???</loc>

;)

Rackham, j'ai écris quelque chose, mais c'est absolument pas adaptable.

foodstyling
WRInaute impliqué
WRInaute impliqué
 
Messages: 305
Inscription: Ven Nov 01, 2002 10:45

Message le Sam Juin 04, 2005 17:41

Désolé de t'ennuyer encore une fois,Phobos, mais faut-il que je remplace tous les </url> du fichier par des </loc> ?


Phobos
WRInaute passionné
WRInaute passionné
 
Messages: 937
Inscription: Dim Mar 21, 2004 16:36

Message le Sam Juin 04, 2005 17:46

non bien sûr, seulement les </url> qui viennent juste après les url ;)


gorgu
WRInaute impliqué
WRInaute impliqué
 
Messages: 347
Inscription: Mer Mar 23, 2005 2:36

Message le Sam Juin 04, 2005 18:21

http://www.jouer.org/Php/google-sitemap-00396.html

voilà se que j'en penses :)

on pourrais également imaginer faire ce genre de choses avec une jolie petite image est un http_refer pour les sites sans php.

foodstyling
WRInaute impliqué
WRInaute impliqué
 
Messages: 305
Inscription: Ven Nov 01, 2002 10:45

Message le Sam Juin 04, 2005 18:27

Au secours Phobos, je crains de n'avoir rien compris. J'ai fait un test de validation et il me retourne un nombre incalculables d'erreures, heureusement toute du même type.Mais je les comprends pas.Que faire?

10: 8 cvc-complex-type.2.3: Element 'url' cannot have character [children], because the type's content type is element-only.
14: 11 cvc-complex-type.2.3: Element 'url' cannot have character [children], because the type's content type is element-only.
17: 10 cvc-complex-type.2.3: Element 'url' cannot have character [children], because the type's content type is element-only.
20: 10 cvc-complex-type.2.3: Element 'url' cannot have character [children], because the type's content type is element-only.
23: 10 cvc-complex-type.2.3: Element 'url' cannot have character [children], because the type's content type is element-only.
26: 11 cvc-complex-type.2.3: Element 'url' cannot have character [children], because the type's content type is element-only.


Phobos
WRInaute passionné
WRInaute passionné
 
Messages: 937
Inscription: Dim Mar 21, 2004 16:36

Message le Sam Juin 04, 2005 18:32

les ??? sont de trop dans ton fichier, seul l'url doit être entre <loc> et </loc> ;)


gorgu
WRInaute impliqué
WRInaute impliqué
 
Messages: 347
Inscription: Mer Mar 23, 2005 2:36

Message le Sam Juin 04, 2005 19:15

héhé j'ai modiifé mon script, ont peu facilement l'utiliser comme compteur de visites de page :p


rituel
WRInaute accro
WRInaute accro
 
Messages: 1176
Inscription: Sam Mar 15, 2003 23:58

Message le Sam Juin 04, 2005 21:16

[lien supprimé par cendrillon]


oli004
WRInaute accro
WRInaute accro
 
Messages: 2162
Inscription: Mer Jan 05, 2005 23:53

Message le Sam Juin 04, 2005 21:34

@gorgu

http://www.jouer.org/Php/google-sitemap-00396.html

voilà se que j'en penses

on pourrais également imaginer faire ce genre de choses avec une jolie petite image est un http_refer pour les sites sans php.


En suivant ton lien, j'arrive a la page mais en haut il y avait :

Warning: ereg(): REG_BADRPT in /home/jouer/sitemap.php on line 5

Je présume que ce n'est pas souhaité :?


vanillefraise
WRInaute impliqué
WRInaute impliqué
 
Messages: 327
Inscription: Ven Nov 29, 2002 0:47

Message le Sam Juin 04, 2005 23:02

Phobos a écrit:http://www.forumfr.com/index-sitemap.xml
On va voir ce que ça donne, j'ai pas utilisé l'outil en python, je l'ai généré en php vu que leur outil n'était pas trop compatible avec l'organisation :)


Attention, il faut que le fichier soit encodé en UTF-8 pour que ça marche :

Note: Your Sitemap files must use UTF-8 encoding.

( https://www.google.com/webmasters/sitem ... pXMLFormat )

...et ton fichier est encodé en ISO-8859-1 :)


gorgu
WRInaute impliqué
WRInaute impliqué
 
Messages: 347
Inscription: Mer Mar 23, 2005 2:36

Message le Sam Juin 04, 2005 23:31

oli004 a écrit:@gorgu

http://www.jouer.org/Php/google-sitemap-00396.html

voilà se que j'en penses

on pourrais également imaginer faire ce genre de choses avec une jolie petite image est un http_refer pour les sites sans php.


En suivant ton lien, j'arrive a la page mais en haut il y avait :

Warning: ereg(): REG_BADRPT in /home/jouer/sitemap.php on line 5

Je présume que ce n'est pas souhaité :?


rien de grave ;) j'ai fait un filtre incorrect et je suis allé me plonger devant la tv avant de vérifier ;) rien à voir avec le script de l'article

foodstyling
WRInaute impliqué
WRInaute impliqué
 
Messages: 305
Inscription: Ven Nov 01, 2002 10:45

Message le Dim Juin 05, 2005 10:45

Merci Phobos, je me servais d'un éditeur texte plutôt buggé. Avec unr version plus récente, aucun problème.

sky
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 247
Inscription: Lun Mar 03, 2003 12:37

Message le Lun Juin 06, 2005 11:19

Slt,
Gorgu, sympa ton idée je trouve. Mais, pour ceux qui peuvent avoir accès au tache cron, il serait peut être mieux de regénérer le fichier tous les xx heures ou jours ?

Je le test en ce moment sous ce principe.

Si ça interesse, voici le script un peut modifié (juste la création du fichier)
Code: Tout sélectionner
<?php
//connexion mysql

$toutXml='';
$toutXml.="<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<urlset xmlns=\"http://www.google.com/schemas/sitemap/0.84\">
";

$liste= mysql_query("SELECT url,date FROM `sitemap` order by id limit 0,50000");
while(list($a,$b) = mysql_fetch_array($liste))
{
  $toutXml.=
  "<url>
      <loc>$a</loc>
      <lastmod>$b</lastmod>
   </url>
";

}

$toutXml.="</urlset>";

mysql_close;

$fp = fopen("sitemap.xml", "w+");
fwrite($fp, $toutXml);
fclose($fp);
?>

Merci en tout cas ;)

Sky

ocabanon
Nouveau WRInaute
 
Messages: 5
Inscription: Jeu Mar 31, 2005 8:57

Bon de script

Message le Lun Juin 06, 2005 13:57

Il y a peut être des éléments intéressants à prendre dans ce script imaginé pour OsCommerce :

http://www.oscommerce.com/community/contributions,3233

Google SiteMaps : comment guider Google dans son site Google SiteMaps : comment guider Google dans son site

Formation recommandée sur ce thème :

Formation Référencement 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