dovresti adottare ad esempio l'MVC, ti aiuterebbe a chiarire i vari passaggi: ti consiglierei di provare qualche framework, tipo Zend Framework o Symfony, per vedere come viene strutturato il codice. Sono entrambi due ottimi strumenti, e possono chiarirti non poco le idee: tra le altre cose entrambi supportano smarty