Aunque sea una pregunta repetida hasta la saciedad, necesito que me orientéis para que en el CMS que trabajo actualmente (aprendiendo PHP de verdad

Estaba pensando en hacerlo con funciones e ir llamándolas. Estas funciones serian las que tendrían el código HTML . Y al llamarlas ir sustituyendo la información:
funciones.php
Código PHP:
<?php
function mostrarTitle($title) { ?>
<title> <?php echo $title; ?></title>
}
Mas funciones con el código HTML . etc.
?>
index.php
Código PHP:
mostrarTitle("Inicio | Bienvenido a mi CMS");
Es muy básico el ejemplo pero sería una cosa así. ¿Cómo lo veis? Es limpio el código para un proyecto de más evergadura?
O mejor crearme una clase y llevar todas esas funciones ( que imprimen HTML ) a esa clase.
No quiero nada de Smarty (que no dudo de su potencia pero es algo que por ahora no quiero ni aprender

Como lo hacéis vosotros cuando realizáis una web de un tamaño considerable. Con funciones?
Gracias!
