8768 sujets

Développement web côté serveur, CMS

Bonjour,

je vais essayer de faire simple.

Imaginons un site avec une page principale, un menu avec un dizaine de lien appelant chacun un contenu (via include php) différents dans le body...
Tous ces contenus ont leur propre style, et éventuellement javascript.

Dois-je appeler toutes mes feuilles de style et fichiers javascript dans le <header> de ma page appelante ?

Quel est la bonne pratique au niveau des fichiers css et js qui ne servent que pour des pages insérées ?

merci d'avance... Smiley cligne
Modifié par StatikFunk (10 Oct 2008 - 15:14)
Salut,

au-delà des bonnes pratiques le principal est de t'y retrouver. Smiley cligne

Concernant les CSS et Javascript, l'avantage de n'avoir qu'une feuille de style et/ou qu'une page contenant les fonctions Javascript permet de ne la charger qu'une fois et de la garder en cache.

Si cela fait un poids (en ko) trop important ou si tu préfères n'inclure que certaines parties (CSS et JS) en fonction de la page tu peux le conditionner.

Par exemple (url = index.php?id_page=3) :

index.php
<?php
$id_page_accueil = 1;
// Récupère l'id de la page courante passée par l'URL
// Si non défini, on considère que la page est la page d'accueil
if (isset($_GET['id_page'])) {
	$id_page = intval($_GET['id_page']);
	if ($id_page < 1 || $id_page > 10 ) {
		$id_page = 1;}
} else {
	$id_page = $id_page_accueil;
}

$header_page = array(
	1 => 'header01.inc.php', 
	3 => 'header03.inc.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Test</title>
<script type="text/javascript" src="include/js/general.js"></script>
<style type="text/css">
@import url(include/css/styles.css) screen;
</style>
<?php
if (array_key_exists($id_page, $header_page) && file_exists($header_page[$id_page])) {
	include($header_page[$id_page]);
}
?>
</head>

header03.inc.php
<script type="text/javascript" src="include/js/contact.js"></script>
<style type="text/css">
@import url(include/css/contact.css) screen;
</style>
Ok c'est très clair, c'est la réponse que j'attendais.
Cela me permet d'inclure dynamiquement des pages css ou javascript dans le header de la page principale en fonction de l'include.
Juste je ne connaissais pas le mot clé "screen" dans la ligne d'import mais je vais me renseigner.
Merci Heyoan !
Tu es le bienvenu Smiley smile !

Si tu considères que ce sujet est [Résolu] merci de l'indiquer en éditant ton premier post et en modifiant le titre. Smiley cligne