Generalnie Code Igniter to porządny framework, używany z dobrym skutkiem przez topowe firmy, a chwalony jest (czasem wręcz przeciwnie -- karcony) za spartańskie podejście do... w zasadzie do wszystkiego. Jest mały, ale też nie ma wielu bajerów.
Co do systemu szablonów to proponuję Ci się zastanowić nad użyciem... PHP. Nie jest w tej roli takie złe, gdy programista stosuje się do paru reguł. No bo czy faktycznie kod w stylu powiedzmy Smarty typu:
<p>Liczba komentarzy: {$num_comments}</p>
Jest dużo lepszy od czystego PHP?
<p>Liczba komentarzy: <?=$num_comments?></p>
Musisz tylko używać odpowiednich konstrukcji w PHP. To, co powyżej zostało zapisane w formie skróconej i powiedzmy w miarę eleganckiej, można zapisać też tak:
<p>Liczba komentarzy: <?php echo $num_comments; ?></p>
Co już jest mniej przejrzyste. Tak samo możesz skorzystać z alternatywnej składni instrukcji w PHP, np. foreach (wygląda lepiej, gdy jest porządnie pokolorowane przez edytor):
<ul>
<?php foreach($nav_links as $nav_link): ?>
<li><a href="<?=$nav_link['href']?>"><?=$nav_link['caption']?></a></li>
<?php endforeach; ?>
</ul>
Gdy potrzebuję naprawdę małej sygnatury kodu, to używam czegoś takiego.