Exclude all sticky posts front page twenty twelve
Don’t use query_posts. Use a filter on pre_get_posts. function no_front_sticky_wpse_98680($qry) { if (is_front_page()) { $qry->set(‘post__not_in’,get_option( ‘sticky_posts’ )); } } add_action(‘pre_get_posts’,’no_front_sticky_wpse_98680′); By running query_posts you clobber the main query, over-writing it with another query. That is why you break pagination. The new query gets out of sync with what should be the main query.