• 解決済 notno

    (@noda)


    プラグインであるかな?と思ったのですが見当たらないようなので質問させていただきました。

    表題のとおり特定のカテゴリーに属す記事をシングルページで生成しない方法を模索しています。

    具体的に説明しますと、現在の状況はカテゴリーが以下のようになっています。

    -よくある質問(親:ID1)
      |-hoge2について(子:ID2)
      |-hoge3について(子:ID3)
      |-hoge4について(子:ID4)
      |-hogeXXについて(子:IDXX)不特定のID
    -コラム(親:IDXX)不特定のID

    このカテゴリーID2、ID3、ID4、IDXXのどれかに
    タイトル「納品時期はどれくらいですか?(質問)」
    本文「どちらの商品も2~3日となります。(答え)」
    というような記事をたくさん投稿します。

    その記事をカテゴリーページよくある質問(category-1.php)に表示します。
    そこまでは上手くいきました。

    この先が本題ですが、カテゴリーページで質問と答えを見ることができるので
    その先のシングルページ(個別ページ)が不要なので無くしたいのと、
    他のシングルページからのリンクや、アーカイブページでの表示をどう処理をしようかと
    思っている次第です。

    試しているのはsingle.phpやarchive.phpなどに

    <?php $categories = get_categories('child_of=1'); ?>
    <?php query_posts($query_string.'&'.'cat=-'. $categories->cat_ID); ?>
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

    と親ページ以下のIDを拾ってきて、cat= でマイナス(除外)する方法です。
    コードに誤りがあるせいか思い通りの動きはしてくれません。普通に記事が表示されます。

    <?php query_posts('cat=-1,-2,-3,-4'); ?>
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

    とすれば消えますが、子カテゴリは増えたり減ったりする為、動的に処理したいです。

    他の方法でも構いません、シングルページは無かったことにする方法を教えてください。
    よろしくお願いします。

    ちなみにこのフォーラムの検索は英語しか検索できませんか?一緒に教えてください。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック投稿者 notno

    (@noda)

    自己解決しました。
    single.phpに

    <?php $categories = get_categories('child_of=hoge'); ?>
    <?php $categoryID = sort($categories); ?>
    <?php query_posts('cat='.'-'.$categoryID); ?>

    プラグインのRedirection

    http://wordpress.org/extend/plugins/redirection/

    で特定カテゴリ以下のURLを上位カテゴリにリダイレクトでいけました。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「特定カテゴリの記事をシングルページで生成しない方法」には新たに返信することはできません。