Template-assisted self-assembly of macro–micro bifunctional porous materials