Hide Category from Blog?

时间:2011-04-16 作者:jakc

我正在使用Boldy theme 从上的Site5v3.1.2 site.

这个主题的工作方式是,有一个公文包,(我用它作为case studies gallery) 从主题设置下定义的特定类别中提取帖子(id=98)

如果你也按照Boldy的说明来设置博客,这很好,所有的博客帖子都属于一个叫做博客的类别,但这不会给我我想要的鼻涕虫,所以I adopted to use a static page 调用博客显示我的帖子。

这一切都很好,除了我为我的公文包/案例研究库(类别=案例研究)创建的帖子现在也出现在我的博客中。

有没有一种方法可以隐藏博客中某个特定类别的帖子,但不会对我的案例研究库产生同样的影响?

--EDIT--在Wyck通过评论提供的一些帮助下,取得了一些进展。Here is a txt version 我的主题的默认索引。php文件。

如果我在第2行插入以下内容:

<?php query_posts($query_string . \'&cat=-98\'); ?>
=这导致我的Downloads 页面,但所有帖子仍显示在我的Blog

我需要这个的反之亦然。我确信我已经接近了,但也许我需要修改我把这放在哪一行?

--EDIT x2--现在使用下载监视器查看我的下载库。但在我的案例研究中使用投资组合。因此,上面的一些链接已经更改,但问题完全相同。

5 个回复
最合适的回答,由SO网友:Ashfame 整理而成

您希望仅在博客页面上排除类别98,对吗?它们应该可以直接在分类页面(您的下载页面)上访问,对吗?

你能试试这个吗?如果这不是您想要的,请告诉我,我们可以修改它以满足您的需要。不仅如此,它还排除了显示博客帖子的类别。

add_action(\'pre_get_posts\', \'block_cat_query\' );

function block_cat_query() {
    global $wp_query;   
    if( is_home() ) {
        $wp_query->query_vars[\'cat\'] = \'-98\';
    }
}

SO网友:Chris_O

在设置中->;如果您的首页未设置为显示,请阅读;“最新帖子”;无论选择什么作为帖子页面,都将使用索引。php模板。

我确实使用静态页面,但我认为它仍然使用索引。php在这个静态页面上填充项目?我通过在索引中修改一些自由文本进行了检查。phpand它反映在静态页面上的博客帖子中西蒙4小时

您的评论是正确的;“静态页面”;正在使用索引。php

要将静态页面与自定义模板一起用于日志,请按以下方式更改阅读设置:

更改此项:

enter image description here

对此:

enter image description here

对于自定义模板,只需复制并粘贴索引即可。php创建一个新文件并将其命名为custom page blog。php并将其添加到其中。

<?php
/*
Template Name: Blog
*/
    get_header();
    
            $args=array(
                \'category__not_in\' => 98
                );
                $blog_query = new WP_Query( $args );
                            
             while ($blog_query->have_posts()) : $blog_query->the_post(); ?>        
            
            <!-- Begin .postBox -->
            <div class="postItem">
            
                    <h1><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h1> 
                    <div class="meta">
                                <?php the_time(\'M j, Y\') ?> &nbsp;&nbsp;//&nbsp;&nbsp; by <span class="author"><?php the_author_link(); ?></span> &nbsp;&nbsp;//&nbsp;&nbsp;  <?php the_category(\', \') ?>  &nbsp;//&nbsp;  <?php comments_popup_link(\'No Comments\', \'1 Comment \', \'% Comments\'); ?> 
                            </div>
                    <?php the_content(__(\'Read more >>\')); ?>   
            </div>
            <!-- End .postBox -->
            <?php endwhile; ?>
                <!--<div class="navigation">
                            <div class="alignleft"><?php next_posts_link() ?></div>
                            <div class="alignright"><?php previous_posts_link() ?></div>
                </div>-->
                <?php if (function_exists("emm_paginate")) {
                    emm_paginate();
                } ?>
    
            </div>
            <!-- End #colLeft -->
    
    <?php get_sidebar(); ?> 
    <?php }?>
    <?php get_footer(); ?>
转到您的静态“;博客;页面,然后在页面属性中选择新模板。enter image description here

SO网友:Wyck

很难判断,因为您没有提供任何代码,但从博客循环中删除类别通常非常容易。

例如,在主循环上方,如果您的类别“portfolio”的id=12:

query_posts( \'cat=-12\' );

SO网友:ZaMoose

你为什么不使用WordPress Download Monitor?

SO网友:Dimas Aryo

如果使用静态页面显示博客文章,请将wyck代码添加到用于该页面的模板中。

结束

相关推荐

在WordPress中筛选分类术语的Get_Categories()

我只想在(自定义)帖子属于某个类别且region=该帖子的$name时显示该类别。因此,例如,我有一个自定义帖子(类型“business”),在子类别“pizzerias”(父类别“food”)和区域“Rotterdam”(自定义分类:“region”,自定义分类术语:“Rotterdam”)中分别命名为“Mamma Mia”。=>显示类别“pizzerias”(和父类别“food”)只是,我不知道如何做到这一点。如果你能帮我解决这个难题,我将不胜感激。<?php // $