или можно воспользоваться блоком? что то типо этого:
Нет. Судя по документации в блоке можно указать nocache. Это надо только при включенном глобальном кешировании Smarty. Но нельзя как подшаблону указать cache_id. А что тебе не нравится закинуть это в отдельный файл? Если это кешируемый подшаблон, то все равно он не будет каждый раз подгружаться (файл подшаблона). Будет вызываться метод Smarty, который будет проверять наличие кеша, и возвращать его, если он есть.