blog pages functional