allow custom per-site template funcs