ciao a tutti.
prima di tutto spero la sezione sia giusta..
allora, sto sviluppando un sito che è così schematizzato, partendo dalla root:
("-" indica il file, "|" una cartella)
codice:
- index.php
- contatti.php
- template.php
|css
- style.css
|immagini
- img1.gif
- img2.gif
il file template è fatto di varie funzioni php che incorporano header e footer html.
senza doverli riscrivere ogni volta, richiamo queste funzioni nelle singole pagine, ad esempio:
index.php
Codice PHP:
//richiamo il file delle funzioni
include ('./template.php');
//richiamo l'header
page_header;
inoltre il file template.php richiama ogni volta il css così:
Codice PHP:
<style type="text/css" media="screen">@import url(css/style.css);</style>
ora sto integrando un portale annesso, che vorrei sistemare in una subdirectory in modo da organizzare i file che riguardano il portale in diverso luogo di quelli che riguardano il sito. la nuova struttura sarebbe così:
codice:
- index.php
- contatti.php
- template.php
|css
- style.css
|immagini
- img1.gif
- img2.gif
|portale
- portal_index.php
se però ora, su portal_index.php richiamo il template.php (ovviamente mettendo un "." aggiuntivo sull'include) mi richiama tutto correttamente escluso il css, perchè l'url relativo "css/style.css" dovrebbe diventare "../css/style.css".
come potrei raggiungere il mio scopo, possibilmente mantenendo:
- un unico file template.php
- una copia unica delle cartelle/file (non facendo quindi doppioni in altre cartelle)
Avevo pensato di fare un secondo template solo per il portale, ma devo ripetere tutta l'intestazione html già fatta..
Avevo anche pensato a leggere la pagina dove sono e mettere un if in template.php
Codice PHP:
//prendo la pagina dove sono
$page=$_SERVER['SCRIPT_NAME'];
//verifico la condizione
if (stripos($page,"portale") !== false) {
- importa il css in ../css/style.css
}
else {
- importa il css in css/style.css
}
funziona, ma vengono poi sbagliati gli url relativi delle immagini e dei links..
Mi date qualche consiglio?
Potrei usare una stringa di appoggio prima di tutti i links (ad immagini o a pagine)?
Grazie ciao