Le PHP
n'est le plus souvent utilisé que dans le but de remplir des
modèles de page HTML
alors qu'il est possible de l'appliquer
à d'autres types de fichier, dont la feuille de style. Tout
comme HTML, un fichier CSS peut-être rendu dynamique, et voir
son contenu totalement intégré à un possible back-office :
l'administrateur du site n'a donc plus à fignoler avec un
éditeur de texte pour modifier une couleur.
|
Forum |
|
Réagissez
dans les forums
de JDN Développeurs
|
Pour convertir un fichier CSS en PHP, il suffit de passer
son extension en .php (de
style.css à style.php,
par exemple), et de mettre en toute première ligne l'entête
HTTP suivant :
<?php header("Content-type: text/css");
?>
Le modèle de page HTML appellera ensuite directement le fichier
via une balise link:
<link rel="stylesheet" type="text/css"
media="screen" href="style.php">
Le contenu de style.php peut
dès lors être parfaitement dynamique :
<?php
header("Content-type: text/css");
require_once("options.php");
?>
body {
background: <?=$cssBodyBackground ?>;
color: <?=$cssBodyColor?>;
}
h1, h2, h3, h4 {
color: <?=$cssHColor?>;
}
blockquote {
color: <?=$cssBlockquoteColor ?>;
}
Attention cependant : le fichier CSS devra être généré à
chaque chargement de page, et non "caché" en mémoire
comme tout fichier statique. Une CSS dynamique doit donc répondre
à un besoin précis.
Une solution serait, alors, d'ajouter un entête au fichier
:
<?php header("HTTP/1.0 304 Not
Modified"); ?>
Le code 304 permet d'indiquer au navigateur que la page n'a
pas été modifiée depuis le dernier chargement,
et qu'il peut donc utiliser la version stockée dans
son cache...
|