[résolu]Problème d'inclusion de pages.
Bonjour,
J'essaie de réaliser un cabarit de site internet en php/xml/xsl et j'ai des soucis :
Voici mon code :
(je n'utilise pas de tableau mais des div)
style.css
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #header {
height: 50px;
background-color: #99CCCC;
}
#conteneur {
width:80%;
margin:0 auto;
background-color:#9999CC;
}
#centre {
background-color:#9999CC;
margin-left: 150px;
margin-right: 150px;
}
#gauche {
float:left;
width: 150px;
background-color:yellow;
}
#droite {
float:right;
width: 150px;
background-color:yellow;
}
#pied {
clear:both;
height: 25px;
background-color: #99CC99;
text-align: center;
} |
J'ai ensuite un fichier xml qui traduit la structure de mon site :
site.xml
Code:
1 2 3 4 5 6 7 8 9 10 11
| <?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="site.xsl"?>
<site>
<header/>
<menu/>
<pageCentre/>
<footer/>
</site> |
J'ai aussi un fichier xml pour le header, le menu et le footer.
header.xml
Code:
1 2 3 4 5 6
|
<?xml version="1.0" encoding="iso-8859-1"?>
<header>
<div id="header">Le header</div>
</header> |
menu.xml
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <?xml version="1.0" encoding="iso-8859-1"?>
<menu>
<div id="gauche">
<ul>
<li><a href="#">lien</a></li>
<li><a href="#">lien</a></li>
<li><a href="#">lien</a></li>
<li><a href="#">lien</a></li>
</ul>
</div>
</menu> |
footer.xml
Code:
1 2 3 4 5 6 7
| <?xml version="1.0" encoding="iso-8859-1"?>
<footer>
<div id="pied">
le footer
</div>
</footer> |
Ma feuille de style qui transforme le tout est la suivante :
site.xsl
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| <?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
<title>test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" media="screen" href="style.css" />
</head>
<body>
<div id="conteneur">
<xsl:apply-templates />
</div>
</body>
</html>
</xsl:template>
<xsl:template match="header">
<xsl:copy-of select="document('header.xml')/header/*" />
</xsl:template>
<xsl:template match="menu">
<xsl:copy-of select="document('menu.xml')/menu/*" />
</xsl:template>
<xsl:template match="pageCentre">
<h3>Comment inclure ici dynamiquement une page? </h3>
</xsl:template>
<xsl:template match="footer">
<xsl:copy-of select="document('footer.xml')/footer/*" />
</xsl:template>
</xsl:stylesheet> |
Et donc ma question est :
Comment intégrer dynamiquement une page au centre?
nb : j'utilise php et la libxslt pour la transformation.
merci d'avance ^^