Posts feed number of posts

时间:2018-12-25 作者:kr3t3n

祝大家节日快乐!我希望你能帮我解决这个“小”问题:)

我正在使用基于Elara 它以不同的格式在首页和归档页上显示帖子提要。主要区别在于,在首页上,该设计最适合8篇文章,而在存档页上,它最适合导航前的10篇文章。

但是,没有指定不同限制的选项。据我所知,饲料是由以下因素控制的:

<?php
/**
 * The loop / blog feed
 *
 * @package elara
 */
?>

<div id="blog-feed" class="section-feed row">
    <?php
        /**
         * The loop
         *
         * For covering all customizer options from above, take a look at elara\'s feed.php
         */
        if ( have_posts() ) : while ( have_posts() ) : the_post();

            get_template_part( \'content\', get_post_format() );

        endwhile; endif;
    ?>
</div><!-- section-feed row -->
那么代码的内容部分是:

<?php
/**
 * Main template for displaying a post within a feed
 *
 * @package elara
 */
$elara_class = elara_set_feed_post_class(); ?>

<article id="post-<?php the_ID(); ?>" <?php post_class( \'entry matcheight \' . esc_attr( $elara_class ) ); ?>>

    <?php elara_entry_thumbnail( \'elara-archive\', true ); ?>

    <footer class="entry-meta">
        <div>
            <?php elara_entry_categories(); ?>
            <?php elara_entry_separator( \'categories-date\' ); ?>
            <?php elara_entry_date(); ?>
        </div>
        <div>
            <?php elara_entry_author(); ?>
            <?php elara_entry_separator( \'author-comments\' ); ?>
            <?php elara_entry_comments_link(); ?>
        </div>
    </footer>

    <?php elara_entry_title(); ?>
    <?php elara_feed_entry_excerpt(); ?>

    <?php
        /**
         * Get video modal for video post format
         */
        get_template_part( \'parts/entry\', \'video-modal\' );
    ?>

</article><!-- #post-<?php the_ID(); ?> -->
所以,我的问题是:你能帮我自定义它吗?这样frontpage在上一页/下一页导航控件之前显示8篇文章,而归档页显示10篇文章?

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

好的,所以这个主题使用全局$wp_query 打印这些帖子。这使得更改帖子数量变得非常容易。。。你所要做的就是pre_get_posts 操作和更改查询参数。

function my_change_number_of_posts( $query ) {
    if ( ! is_admin() && $query->is_main_query() ) {
        if ( is_home() ) {  // change only for home page
            $query->set( \'posts_per_page\', 8 );
        }
    }
}
add_action( \'pre_get_posts\', \'my_change_number_of_posts\' );
当然,您可以修改该操作中的条件,以完全实现您所需要的。

相关推荐

Even/Odd every two posts

我需要每两篇文章显示一个不同的布局,是否可以使用偶数/奇数来实现这一点?<?php while (have_posts()): the_post() ?> <?php if ($wp_query->current_post % 2 == 0): ?> even <?php else: ?> odd <?php endif ?> <?php endwhile