Exibir um número diferente de postagens de uma categoria nas diferentes páginas

de acordo com Pagination com loop personalizado . Eu uso o loop personalizado para o jogo flash de exibição. Para criar uma paginação na página com postagens de uma categoria (mydomain / category / categoryName) usei:

add_action( 'pre_get_posts', 'wpse5477_pre_get_posts' ); function wpse5477_pre_get_posts( &$wp_query ) { if ( $wp_query->is_category() ) { $wp_query->set( 'post_type', 'game' ); $wp_query->set( 'posts_per_page', 9 ); } } 

Eu tenho a seção na página principal do meu site, onde exibido três jogos de cada categoria. Mas, de acordo com o código acima, não posso exibir apenas 3 jogos, mesmo que eu determine em matriz (‘post_per_page’, 3) ou seja como este, porque esse número já foi determinado em $ wp-query. Como eu poderia matar dois pássaros com uma pedra? Obrigado.

Solutions Collecting From Web of "Exibir um número diferente de postagens de uma categoria nas diferentes páginas"

Você pode verificar a existência de uma variável, então você não substitui:

 add_action( 'pre_get_posts', 'wpse7262_pre_get_posts' ); function wpse7262_pre_get_posts( &$wp_query ) { if ( $wp_query->is_category() ) { if ( ! array_key_exists( 'post_type', $wp_query->query_vars ) ) { $wp_query->set( 'post_type', 'game' ); } if ( ! array_key_exists( 'posts_per_page', $wp_query->query_vars ) ) { $wp_query->set( 'posts_per_page', 9 ); } } }