Лично для меня я передам информацию представлению, чтобы определить, какие части представления следует отображать, поскольку я считаю, что показ / скрытие элементов отображения является частью логики представления.
В случае с Kohana, если вы передадите переменную $ user представлению, которое является объектом User_Model, даже если человек не загружен, объект все равно будет существовать, поэтому вы можете написать код в своем представлении, например как:
<?php if ($user->logged_in()):?>
<div>Some login only markup here</div>
<?php else:?>
<div>some not login only markup here</div>
<?php endif;?>
Ваш пробег также может варьироваться в зависимости от того, используете ли вы ORM или другую ORM-подобную библиотеку вместо написания моделей на пустом месте.