Wiki d'Imatgedart
Wiki d'Imatgedart
En el procés de renovació que estic fent d'aquesta pàgina, un dels objectius que tinc més clars és unificar el disseny i la programació dels diversos sistemes de què consta: wiki, blog, portafolis i altres que puguin venir en el futur.
En aquesta direcció, una de les fites principals és aconseguir unificar codi per reutilitzar-lo al màxim i repetir-lo al mínim en cada context. En aquest camp, PHP és de gran ajuda.
Amb PHP podem incloure fitxers HTML o PHP amb aquesta simple instrucció:
<?php include 'ruta/alfitxer.php'; ?>
Així, si tenim un fitxer index.php tal com aquest:
<html>
<head></head>
<body>
<?php include 'includes/contingut.php'; ?>
</body>
</html>
i a la carpeta includes un fitxer contingut.php (que també podria ser contingut.html, en cas que dins el fitxer no s'hagués de processar codi php, i convenientment referenciat al fitxer index.html) com aquest,
<p> Això és el contingut </p>
en carregar index.html s'inclouria la informació dins de contingut.php com si estigués tota en un sol fitxer.
Això té l'avantatge que totes aquestes operacions es fan en el cantó del servidor, com tot allò que es fa amb PHP. D'aquesta manera podem fer operacions a la pàgina abans que siguin enviades a l'usuari, la qual cosa té aplicacions en molts sentits. Una de les més òbvies és la de reduir el nombre de sol·licituds http: si podem ajuntar en un sol fitxer diversos continguts, llibreries o funcions que, amb la finalitat d'organitzar-nos millor, volem mantenir en fitxers separats, des de l'ordinador de l'usuari només es farà una sol·licitud, la qual cosa optimitzarà el temps de resposta de la pàgina.
Això també ho podem fer aplicar a les fulles d'estil. No obstant, em vaig trobar que en una primera prova molt simple que vaig fer, el següent esquema era del tot funcional:
<html>
<head>
<link rel="stylesheet" type="text/css" href="estils.php">
</head>
<body>
<p class="verd">verd</p>
<p class="vermell">vermell</p>
</body>
</html>
<?php include 'verd.css'; include 'vermell.css'; ?>
.verd {color: #00ff00;}
.vermell {color: #ff0000;}
NOTA: index.html, estils.php, verd.css i vermell.css són tots a la mateixa carpeta.
Però quan incloïa fitxers més complexos, el CSS no quedava correctament referenciat i la pàgina no tenia estils assignats.
Això, tal com he vist a aquesta pàgina, és perquè cal afegir al fitxer estils.php, és a dir aquell que feu servir com a contenidor d'altres fitxers CSS, una capçalera per indicar-li que és un fitxer de tipus CSS:
<?php
header('Content-Type: text/css');
include 'verd.css';
include 'vermell.css';
?>
Ei, gràcies per ser a aquesta pàgina.
Potser has notat que ha canviat una mica.
Estic "en ello".