Tu peux avoir plusieurs points d'entrée sur ton site, tant que tu sépares le traitement des requêtes (contrôleur), les données (modèle) et l'affichage (les vues) alors tu fais du mvc.
Ce que contient titre est généré dans le contrôleur en fonction ou pas d'un modèle et tout ça est donné à la vue. Typiquement, voila ce qu'il se passe sur mon blog quand je suis sur la page de contact coté contrôleur :
sfContext::getInstance()->getResponse()->addMeta('
title', self::title_prefix.'Contact'); // ici le contact est placé en dur, ce n'est pas un modèle qui l'a déterminé
Pour un article de blog, je vais faire ça :
sfContext::getInstance()->getResponse()->addMeta('
title', self::title_prefix.$post->getTitle());