i have a site (http://fashionlog.com.br) with a custom post type 'fotolog' as you can see on the right side.

The posts and pagination of the blog (central column) work fine. But when it comes to the posts and pagination of my CPT it goes wrong.

If i dont use the flush_rewrite_rules( false ); function after my register_post_type() call in functions.php, i can see the posts but the pagination doesnt work. If a use the function it's the oposite, i can't see the posts (404) but i get the pagination!

I've been trying lots of times to switch the permalinks structure for tests, i checked my .htaccess file and its permissions, i tryed to "play" with the 'rewrite' parameter of the register_post_type() function, i've read and tryed the solution written here, here and also here... So far no luck, or am i missing something super obvious?

I'd really be grateful for some help.

  • What's your query for getting the posts? It could be that you don't have paged set in your query like so: query_posts('post_type=fotolog' . '&paged=' . get_query_var('paged')); ...Also, make sure you don't have a page and a post type with the same permalink like /fotolog and /fotolog/your-post-name-here Dec 30, 2010 at 18:19
  • Dude you're the man! Yeah i had a cpt 'fotolog' and a page named 'fotolog'! Big thanks.
    – kevin
    Dec 30, 2010 at 19:41
  • Glad I could help, I'm moving my comment to answers so you can mark the question as answered :) Dec 30, 2010 at 20:28
  • 2
    Big time flag here: NEVER run flush_rewrite_rules() like you say you are. flush_rewrite_rules() is an extremely expensive process that shouldn't be done any more than is necessary. If you need to flush the rules just visit WP-Admin -> Settings -> Permalinks. It'll flush the rewrite rules for you. Doing this once is all that's necessary until you do something that changes the rules again (e.g. registering more taxonomies or CPTs). Dec 30, 2010 at 20:39
  • Yeah i learned that by reading lots of things about it.
    – kevin
    Jan 3, 2011 at 12:26

1 Answer 1


Make sure your query has paged in it like so:

query_posts('post_type=fotolog' . '&paged=' . get_query_var('paged'));

Check to be sure that you don't have page and a post type with the same permalink /foflog and /fotolog/your-post-name-here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.