簡體   English   中英

從WordPress循環中排除特定類別

[英]Exclude specific category from loop in WordPress

我正在嘗試建立一個有關博客上發生的事情的數據博客。 我不希望這些帖子出現在首頁上,所以我想排除它們所在的類別,因為它們始終在同一類別中。

你能幫助我嗎?

該站點是denfri.dk,我使用的是snap主題( https://thethemefoundry.com/wordpress-themes/snap/ ),我的循環代碼如下所示:

<?php if ( have_posts() ) : ?>
<div class="blog-wrapper" id="content">
    <?php while ( have_posts() ) : the_post(); ?>
        <?php get_template_part( '_post-content' ); ?>
    <?php endwhile; ?>
</div>
<h1 class="hidden">DenFri.dk - nyheder, analyser, satire og kritik</h1>
<?php $prev = get_previous_posts_link( __( 'Nyere indlæg', 'snap' ) ); ?>
<?php $next = get_next_posts_link( __( 'Ældre indlæg', 'snap' ) ); ?>

<?php if ( ( ! empty( $prev ) || ! empty( $next ) ) ) : ?>
    <nav class="pagination post-footer">
        <?php if ( ! empty( $prev ) ) : ?>
            <div>
                <?php echo $prev; ?>
            </div>
        <?php endif; ?>
        <?php if ( ! empty( $next ) ) : ?>
            <div>
                <?php echo $next; ?>
            </div>
        <?php endif; ?>
    </nav>
 <?php endif; ?>
<?php else : ?>
<div class="placeholder-text">

    <p>
        <?php
            printf(
                __(
                    '<strong>Admin:</strong> Oh snap! It looks like you haven\'t added any posts yet. <a href="%s" title="Add post">Add your first post</a> now!',
                    'snap'
                ),
                esc_url( admin_url( 'post-new.php' ) )
            );
        ?>
    </p>
</div>

要在首頁中包含一個(或多個)類別,請插入以下代碼:

function denfri_frontpage_exclude( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
    $query->set( 'cat', '-5' );
    }
}
add_action( 'pre_get_posts', 'denfri_frontpage_exclude' );

如果要排除多個類別而不是一個類別,則將-5替換為所有類別,並用逗號分隔; -5,-1,-3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM