Блин, действительно все просто: function smarty_fu

Блин, действительно все просто:

function smarty_function_load($params, & $smarty)
{
    if(!isset($params['file']) OR !$file = $params['file']){return;}

    if(!empty($params['assign'])){
        $assign = (string)$params['assign'];
    }
    
    $output = $smarty->fetch($file);
    return !empty($assign) ? $smarty->assign($assign, $output) : $output;
}

и вызываю

{load file="cities/outer.tpl"}

Работает.