0

私はWordpressページテンプレートを使用して、特定のカテゴリの投稿を独自のページにプルしています。私の問題は、それらがホームページにも表示されていることです。ホームページからカテゴリを完全に非表示にする方法は知っていますが、チェックするとホームページとサブページに投稿され、チェックしないとサブページにのみ表示されるように切り替えたいのですが。 。それは理にかなっていますか?

このコードは「Awards」テンプレートにあり、カテゴリスラッグ「awards」を含む投稿を取得します。

<?php
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    $args= array(
        'category_name' => 'awards', // Change these category SLUGS to suit your use.
        'paged' => $paged
    );
    query_posts($args);?>

query_posts次に、「アワード」カテゴリは、タグを使用してホームページからブロックされます。

<?php if ( is_home() ){ 
     query_posts( 'cat=-5' ); //-5 is the category id for 'awards'
}?>

ホームページからブロックされていないカテゴリで投稿にタグを付けることでこれを回避しようとしましたが、他のタグが付けられていてもかまわないようです。

ですから、私の難問は、ホームページに属するかどうかを選択して、すべてをこの他のページに表示できるようにする簡単なオプション(hah)が欲しいということです。

4

2 に答える 2

0

ええと..これを書いている最中に、私は刺激を受け、確かに簡単な解決策を見つけました。'Uncategorized'はデフォルトのカテゴリで、IDは1です。インデックスページで、'query_posts(' cat = 1');'を追加しただけです。他のカテゴリをブロックするコードのビットの下。このようにして、サブページの1つに表示したいカテゴリだけでなく、ホームページに表示したいカテゴリにもタグを付けることができます。これが私のindex.phpにあるコードです:

<?php if ( is_home() ){
            query_posts( 'cat=-5' );
            query_posts( 'cat=1' );
        }?>

したがって、ホームページとサブページに表示したい場合は、「賞」と「未分類」(またはホームページのカテゴリとして選択したもの)に分類します。サブページだけにしたい場合は、そのカテゴリを選択します。これが機能するのは、'query_posts(' cat = 1');' 'query_posts(' cat = -5');'の下に記述されます 一部なので、結局サーバーに表示するように指示するブロックの後に発生します。

于 2012-08-21T03:21:05.950 に答える
0

を使用するオプションはありますWordpress Pluginか?

その場合は、WP Hide Postを使用できます。これにより、特定の投稿を非表示にしてフロントページに表示する機能が有効になります。

リソースへのリンクは次のとおりです: http ://wordpress.org/plugins/wp-hide-post/

于 2014-03-02T10:08:20.813 に答える