這是基本的循環WordPress的環秀限制的職位
<?php while (have_posts()) : the_post(); ?>
我要顯示的搜索結果頁面上的20個職位,我知道我們可以改變管理面板選項的值。但它會改變所有索引頁面和存檔頁面等。我需要改變它們。
謝謝!
這是基本的循環WordPress的環秀限制的職位
<?php while (have_posts()) : the_post(); ?>
我要顯示的搜索結果頁面上的20個職位,我知道我們可以改變管理面板選項的值。但它會改變所有索引頁面和存檔頁面等。我需要改變它們。
謝謝!
大參考:http://codex.wordpress.org/The_Loop
調用while語句只是之前,你需要查詢的帖子。所以:
<?php query_posts('posts_per_page=20'); ?>
<?php while (have_posts()) : the_post(); ?>
<!-- Do stuff... -->
<?php endwhile;?>
編輯:很抱歉的分頁,試試這個:
<?php
global $query_string;
query_posts ('posts_per_page=20');
if (have_posts()) : while (have_posts()) : the_post();
?>
<!-- Do stuff -->
<?php endwhile; ?>
<!-- pagination links go here -->
<? endif; ?>
如果你不想做了一堆針對不同的頁面不同的循環模板文件並保留分頁,嘗試http://wordpress.org/extend/plugins/custom-post-limits/
您可以通過$ wp_query對象限制每個循環的職位數目。 它需要多個參數,例如:
<?php
$args = array('posts_per_page' => 2, 'post_type' => 'type of post goes here');
$query = new WP_Query($args);
while($query->have_posts()) : $query->the_post();
<!-- DO stuff here-->
?>
更多wp_query對象 here->
增加 '分頁'=> $分頁分頁會的工作!
<?php
$args = array('posts_per_page' => 2, 'paged' => $paged);
$query = new WP_Query($args);
while($query->have_posts()) : $query->the_post();
<!-- DO stuff here-->
?>
答案裏面模板創建新的查詢不會使用自定義文章類型正常工作。
但documentation提供給勾上的任何查詢,檢查其主查詢,並在執行前對其進行修改。這可以在模板功能內完成:
function my_post_queries($query) {
// do not alter the query on wp-admin pages and only alter it if it's the main query
if (!is_admin() && $query->is_main_query()) {
// alter the query for the home and category pages
if(is_home()){
$query->set('posts_per_page', 3);
}
if(is_category()){
$query->set('posts_per_page', 3);
}
}
}
add_action('pre_get_posts', 'my_post_queries');
我發現這個解決方案,它適用於我。
global $wp_query;
$args = array_merge($wp_query->query_vars, ['posts_per_page' => 20 ]);
query_posts($args);
if(have_posts()){
while(have_posts()) {
the_post();
//Your code here ...
}
}
這是偉大的!效果很好。謝謝! – ray 2010-10-06 19:00:37
看起來分頁將不再起作用!任何想法? – ray 2010-10-06 19:31:07
將'posts_per_page'改爲'showposts'? – Gipetto 2010-10-06 20:31:44