Come questo sito è stato realizzato
Inizio
- Per prima cosa ho letto diversa documentazione riguardo a HTML e XHTML: non è difficile, ma è fondamentale. Più che altro mi sono aggiornato... HTML lo conosco dalla versione 2.0.
Non fidarti degli editor WYSIWYG; generano codice sporco e poco ottimizzato. E spesso fuori standard. BBEdit ha funzioni specifiche per pulire il codice di GoLive e di Dreamweaver. Non sono davvero cattivi, semplicemente devi comunque badare a quello che stai facendo. Frontpage è cattivo. - Ho comprato e letto il libro di Meyer sui CSS
- Mi sono bellamente dimenticato che molta gente usa explorer. Questo browser è fuori standard, non supporta i CSS 2 e spesso sbaglia perfino a interpretare i CSS 1.
- Mi sono comprato BBEdit
BBEdit
BBEdit è il centro del processo di sviluppo. Non volevo usare scripts server side. PHP fa schifo e Python (mod_python / Nevow) avrebbe potuto essere non supportato dove avessi voluto pubblicare questo sito (CGI a parte, ma dopo tutto sto facendo qualcosa di complessivamente poco dinamico, i CGI sarebbero solo una complicazione).
Così ho deciso di usare script per generare staticamente le parti che cambiavano attraverso le funzionalità di bbinclude di BBEdit. Quando miglioro qualche programmetto o aggiungo roba, il sito viene ricreato.
Forse aggiungerò qualcosina di davvero piccolo in PHP, tipo un counter o roba del genere. Ma comunque nulla di utile per il sito.
Templates and include
Uso solo un template. Tutte le pagine derivano da lui. Utilizza alcuni persistent includes e dei placeholders. I placeholders possono essere visti come macro.
Nel codice della pagina seguente non vedrete i placeholders, poichè sono già stati sostituiti.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title></title>
<link href="../styles/main.css" media="all" rel="stylesheet" type="text/css" />
<script src="../scripts/browsersniffer.js" type="text/javascript" charset="utf-8"></script>
<script src="../scripts/iecheck.js"type="text/javascript" charset="utf-8"></script>
</head>
<body onload="iecheck()">
<div id="top">
<!-- #bbinclude "top.html" -->
<!-- end bbinclude -->
</div><!-- #bbinclude "menu.html" -->
<!-- end bbinclude -->
<div id="main">
#BODYTEXT#
</div>
<div id="sub">
<!-- #bbinclude "sub.html" -->
<!-- end bbinclude -->
</div>
</body>
</html>