shaza
vendredi 13 octobre 2006 à 16:01
salut,
comme j'ai bien galéré à trouver la reponse exact que je cherchais, je te met le code complet (attention à le personnaliser)
il te faut créer un fichier le_nom_que tu veux.xsl contenant le code :
CODE
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:sitemap="http://www.google.com/schemas/sitemap/0.84" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" version="1.0" encoding="iso-8859-1" indent="yes"/>
<!-- Root template -->
<xsl:template match="/">
<html>
<head>
<title>Plan du site - Sitemap</title>
<link href="http://www.google.com/webmasters/sitemaps/docs/sitemaps.css" type="text/css" rel="stylesheet"/>
<style type="text/css">
<![CDATA[
<!--
h1 {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:1.2em;
margin:0.5em;
}
h1 span {
margin-left:0.5em;
}
h1 a:link, h1 a:active{
color:#0081B3;
text-decoration:none;
}
h1 a:hover, h1 a:visited{
color:#FF0000;
text-decoration:underline;
}
p {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:1em;
margin:0.5em;
}
p span {
margin-left:2em;
}
.header {
background: #F2F2F2;
cursor: pointer;
}
.sortup {
background: right center url(http://www.google.com/webmasters/sitemaps/images/sortup.gif) no-repeat;
font-style:italic;
color: red;
}
.sortdown {
background: right center url(http://www.google.com/webmasters/sitemaps/images/sortdown.gif) no-repeat;
font-style:italic;
color: red;
}
#liens {
width:100%;
margin-top:1em;
text-align:center;
vertical-align:top;
}
-->
]]>
</style>
<link href="gss.css" type="text/css" rel="stylesheet"/>
<script language="JavaScript">
<![CDATA[
var selectedColor = "#FF9901";
var defaultColor = "#000";
var hdrRows = 1;
var numeric = '..';
var desc = '..';
var html = '..';
var freq = '..';
function initXsl(tabName,fileType) {
hdrRows = 1;
if(fileType=="sitemap") {
numeric = ".3.";
desc = ".1.";
html = ".0.";
freq = ".2.";
initTable(tabName);
setSort(tabName, 3, 1);
}
else {
desc = ".1.";
html = ".0.";
initTable(tabName);
setSort(tabName, 1, 1);
}
var theURL = document.getElementById("head1");
theURL.innerHTML += ' ' + location;
document.title += ': ' + location;
}
function initTable(tabName) {
var theTab = document.getElementById(tabName);
for(r=0;r<hdrRows;r++)
for(c=0;c<theTab.rows[r].cells.length;c++)
if((r+theTab.rows[r].cells[c].rowSpan)>hdrRows)
hdrRows=r+theTab.rows[r].cells[c].rowSpan;
for(r=0;r<hdrRows; r++){
colNum = 0;
for(c=0;c<theTab.rows[r].cells.length;c++, colNum++){
if(theTab.rows[r].cells[c].colSpan<2){
theCell = theTab.rows[r].cells[c];
rTitle = theCell.innerHTML.replace(/<[^>]+>| /g,'');
if(rTitle>""){
theCell.title = "Changer l'ordre de " + rTitle;
theCell.onmouseover = function(){setCursor(this, "selected")};
theCell.onmouseout = function(){setCursor(this, "default")};
var sortParams = 15; // bitmapped: numeric|desc|html|freq
if(numeric.indexOf("."+colNum+".")>-1) sortParams -= 1;
if(desc.indexOf("."+colNum+".")>-1) sortParams -= 2;
if(html.indexOf("."+colNum+".")>-1) sortParams -= 4;
if(freq.indexOf("."+colNum+".")>-1) sortParams -= 8;
theCell.onclick = new Function("sortTable(this,"+(colNum+r)+","+hdrRows+","+sortParams+")");
}
} else {
colNum = colNum+theTab.rows[r].cells[c].colSpan-1;
}
}
}
}
function setSort(tabName, colNum, sortDir) {
var theTab = document.getElementById(tabName);
theTab.rows[0].sCol = colNum;
theTab.rows[0].sDir = sortDir;
if (sortDir)
theTab.rows[0].cells[colNum].className='sortdown'
else
theTab.rows[0].cells[colNum].className='sortup';
}
function setCursor(theCell, mode){
rTitle = theCell.innerHTML.replace(/<[^>]+>| |\W/g,'');
if(mode=="selected"){
if(theCell.style.color!=selectedColor)
defaultColor = theCell.style.color;
theCell.style.color = selectedColor;
theCell.style.cursor = "hand";
window.status = "Cliquer la sorte par '"+rTitle+"'";
} else {
theCell.style.color = defaultColor;
theCell.style.cursor = "";
window.status = "";
}
}
function sortTable(theCell, colNum, hdrRows, sortParams){
var typnum = !(sortParams & 1);
sDir = !(sortParams & 2);
var typhtml = !(sortParams & 4);
var typfreq = !(sortParams & 8);
var tBody = theCell.parentNode;
while(tBody.nodeName!="TBODY"){
tBody = tBody.parentNode;
}
var tabOrd = new Array();
if(tBody.rows[0].sCol==colNum) sDir = !tBody.rows[0].sDir;
if (tBody.rows[0].sCol>=0)
tBody.rows[0].cells[tBody.rows[0].sCol].className='';
tBody.rows[0].sCol = colNum;
tBody.rows[0].sDir = sDir;
if (sDir)
tBody.rows[0].cells[colNum].className='sortdown'
else
tBody.rows[0].cells[colNum].className='sortup';
for(i=0,r=hdrRows;r<tBody.rows.length;i++,r++){
colCont = tBody.rows[r].cells[colNum].innerHTML;
if(typhtml) colCont = colCont.replace(/<[^>]+>/g,'');
if(typnum) {
colCont*=1;
if(isNaN(colCont)) colCont = 0;
}
if(typfreq) {
switch(colCont.toLowerCase()) {
case "always": { colCont=0; break; }
case "hourly": { colCont=1; break; }
case "daily": { colCont=2; break; }
case "weekly": { colCont=3; break; }
case "monthly": { colCont=4; break; }
case "yearly": { colCont=5; break; }
case "never": { colCont=6; break; }
}
}
tabOrd[i] = [r, tBody.rows[r], colCont];
}
tabOrd.sort(compRows);
for(i=0,r=hdrRows;r<tBody.rows.length;i++,r++){
tBody.insertBefore(tabOrd[i][1],tBody.rows[r]);
}
window.status = "";
}
function compRows(a, b){
if(sDir){
if(a[2]>b[2]) return -1;
if(a[2]<b[2]) return 1;
} else {
if(a[2]>b[2]) return 1;
if(a[2]<b[2]) return -1;
}
return 0;
}
]]>
</script>
</head>
<!-- Store in $fileType if we are in a sitemap -->
<xsl:variable name="fileType">
<xsl:choose>
<xsl:when test="//sitemap:url">sitemap</xsl:when>
</xsl:choose>
</xsl:variable>
<!-- Body -->
<body onLoad="initXsl('table0','{$fileType}');">
<!-- Intro et lien RMC -->
<h1><a title="Création de site internet,référencement de sites Internet, agence de référencement" href="http://www.netgenez.com/">Création de sites Internet</a><span>NetGenez.com</span></h1>
<!-- Textes des tableaux -->
<xsl:choose>
<xsl:when test="$fileType='sitemap'"><xsl:call-template name="sitemapTable"/></xsl:when>
</xsl:choose>
<!-- Liens bas de page -->
<div id="liens">
<a href="http://www.netgenez.com/">Création de site internet</a> - <a href="http://www.shaza.fr">Réussissez votre référencement- Annuaires de liens en dur</a> - <a href="http://www.shaza.fr/tutos/">Comment ça marche?</a>
</div>
</body>
</html>
</xsl:template>
<!-- Tableau du sitemap -->
<xsl:template name="sitemapTable">
<p><strong>Cliquez dans les entêtes gris du tableau pour changer l'affichage des données.</strong><span>Nombres d'url dans ce sitemap : <xsl:value-of select="count(sitemap:urlset/sitemap:url)"/></span></p>
<table border="1" width="100%" class="data" id="table0">
<tr class="header">
<td>Sitemap URL</td>
<td>Date de modification</td>
<td>Fréquence</td>
<td>Priorité</td>
</tr>
<xsl:apply-templates select="sitemap:urlset/sitemap:url">
<xsl:sort select="sitemap:priority" order="descending"/>
</xsl:apply-templates>
</table>
</xsl:template>
<!-- sitemap:url template -->
<xsl:template match="sitemap:url">
<tr>
<td>
<xsl:variable name="sitemapURL"><xsl:value-of select="sitemap:loc"/></xsl:variable>
<a href="{$sitemapURL}" target="_blank" ref="nofollow"><xsl:value-of select="$sitemapURL"/></a>
</td>
<td><xsl:value-of select="sitemap:lastmod"/></td>
<td><xsl:value-of select="sitemap:changefreq"/></td>
<td><xsl:value-of select="sitemap:priority"/></td>
</tr>
</xsl:template>
</xsl:stylesheet>
ensuite soit tu fais ton sitemap toi meme comme un grand soit tu vas à cette adresse
http://www.xml-sitemaps.com/dans ton fichier sitemap.xml tu ajoutes à la deuxième ligne :
CODE
<?xml-stylesheet type="text/xsl" href="le_chemin_vers/le_nom_que_tu_veux.xsl"?>
et voilà tu pourras voir le résultat
sur mon site qui est en construction depuis un moment déja
<modérateur : merci d'utiliser la balise codebox pour les codes (un peu) longs</edit>