Hide Category from Blog?

3

Estou usando o tema Boldy do Site5 em um site da v3.1.2 .

A maneira como esse tema funciona é que existe um portfólio (que estou usando como um estudos de caso galeria ) que puxa posts de uma categoria específica que você define sob as configurações de temas (id = 98)

Isso é bom se você também configurar o blog de acordo com as instruções do Boldy, onde todos os posts do blog vêm em uma categoria chamada blog, mas isso não me daria as lesmas que eu queria, então Eu adotei o uso de uma página estática chamada blog para exibir minhas postagens.

Tudo isso funciona bem, além do fato de que as postagens que eu criei para minha galeria de portfólio / estudos de caso (categoria = estudos de caso) agora aparecem no meu blog também.

Existe uma maneira de ocultar postagens dentro de uma categoria específica dentro do blog, mas não ter o mesmo efeito na minha galeria de estudos de caso?

- EDITAR Com alguma ajuda de Wyck através dos comentários, fez algum progresso. Aqui está uma versão do txt do meu arquivo default index.php.

Se eu inserir o seguinte na Linha 2:

<?php query_posts($query_string . '&cat=-98'); ?>

= Isso resulta em nenhuma postagem sendo exibida na minha página Downloads , mas todas as postagens ainda estão aparecendo na minha página Blog .

Eu preciso do vice-versa disso. Tenho certeza de que estou perto, mas talvez eu precise modificar em qual linha eu coloquei isso?

- EDITAR x2 - Agora, usando o monitor de download para minha galeria de downloads. Mas usando o portfólio para meus estudos de caso. Então, alguns dos links acima mudaram, mas o problema é exatamente o mesmo.

    
por Simon 16.04.2011 / 06:22

5 respostas

7

Você quer que a categoria 98 seja excluída apenas na página do blog, certo? Eles devem estar acessíveis na página da categoria diretamente (sua página de downloads), correto?

Você pode tentar isso? Deixe-me saber se não é o que você quer, podemos modificá-lo para atender às suas necessidades. Não apenas exclui a categoria em que você mostra suas postagens no blog.

add_action('pre_get_posts', 'block_cat_query' );

function block_cat_query() {
    global $wp_query;   
    if( is_home() ) {
        $wp_query->query_vars['cat'] = '-98';
    }
}
    
por Ashfame 28.04.2011 / 10:29
3

Em Configurações - > Lendo se a sua Página Frontal não está definida para mostrar "Posts mais recentes", o que estiver selecionado como página de postagens usará o modelo index.php.

  

Eu uso uma página estática, mas acho que   ainda usa index.php para preencher itens   nesta página estática? Eu verifiquei por   mexendo em algum texto livre em index.php   e isso foi refletido nos posts do blog   na página estática. - Simon 4 horas   ago

Seu comentário está correto: sua "página estática" está usando index.php

Para usar uma página estática com um modelo personalizado para sua postagem no blog, altere suas configurações de leitura da seguinte forma:

Alterar isto:

Paraisso:

Para o seu modelo personalizado basta copiar e colar index.php para criar um novo arquivo e nomeá-lo como custom-page-blog.php e adicionar isso a ele.

<?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(); ?>

Vá para a sua página "Blog" estática e selecione o novo modelo nos atributos da página.

    
por Chris_O 28.04.2011 / 09:40
2

É difícil dizer, já que você não forneceu nenhum código, mas a remoção de uma categoria do blog normalmente é muito fácil.

Por exemplo, acima do loop principal, se sua categoria "portfolio" tiver um id = 12:

query_posts( 'cat=-12' );
    
por Wyck 16.04.2011 / 08:12
2

Por que você não usa algo como Monitor de download do WordPress ?

    
por ZaMoose 27.04.2011 / 15:57
1

se você usar a página estática para mostrar a postagem do blog, adicione o código do wyck ao modelo usado para essa página.

    
por Dimas Aryo 27.04.2011 / 16:31

Tags