サポート » 使い方全般 » カスタムタクソノミーのアーカイブが読み込まれません。

  • shelle1001

    (@shelle1001)


    初めてWordpressで自社サイトを作成しています。
    カスタム投稿【lesson】を作り、カスタム分類【ws_classify】で
    【in-shop】と【in-event】を作成しました。
    【in-shop】を更に分類する【A】と【B】も作ってあります。
    表示させるページは、デフォルトの固定ページをコピーして作った
    テンプレートlesson.phpを使っています。
    書き加えたのは

    <?php $args = array(
    ‘post_type’ => ‘lesson’,
    ‘paged’ => $paged,
    ); ?>

    のコードです。
    困っているのは、カスタム投稿【lesson】の記事アーカイブは
    きちんと表示されるのですが、カスタムタクソノミー【ws_classify】の
    それぞれの一覧が表示されないことです。
    試しにこういう記事一覧ページを作って実験してみました。

    `<?php
    $catargs = array(
    'taxonomy' => 'ws_classify'
    );
    $catlists = get_categories( $catargs );
    foreach($catlists as $cat) :
    if ( is_user_logged_in() ) {
    echo '<pre>';
    var_dump( $cat );
    echo '</pre>';
    }
    */
    ?>
    <section>
    <h3><a href="<?php echo home_url('/path/' . $cat->slug ); ?>"><?php echo $cat->name; ?></a></h3>
    <p><?php echo $cat->category_description; ?></p>
    <ul>
    <?php
    $args = array(
    'post_type' => 'lesson',
    'ws_classify' => $cat->slug
    );
    $my_posts = get_posts( $args );
    if ( $my_posts ) {
    foreach ( $my_posts as $post ) :
    setup_postdata( $post );
    ?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
    <?php
    endforeach;
    } else {
    echo 'このカテゴリに投稿はありません';
    }
    wp_reset_postdata();
    ?>
    </ul>
    </section>
    <?php endforeach; ?>`

    こちらでターム名、またそれに属している記事も、それぞれリンク付きで
    リスト表示されたのですが、個別記事それぞれは問題なく表示されるのに
    ターム名をクリックしても404になってしまいます…。
    (「このカテゴリに投稿はありません」の表示は出ません)

    カスタム投稿とカスタムタクソノミーを作成したプラグイン
    Custom Post Type UI(0.8.2)の設定がおかしいのかと調べましたが、
    色々なサイトで紹介されていた正しい設定になっているようです。
    (カスタム投稿=Has Archiveをtrue、階層はFalse、リライトはtrue
    タクソノミー=階層はtrue、リライトもtrue)

    List Custom Taxonomy Widgetと云うプラグインを使って実験したのですが、
    投稿数を表示させてみたらちゃんと記事数が出てきます。
    でも、いざターム名をクリックしたら404ではなく「登録されている記事は
    ございません」という記事がない時のお知らせが出ます。

    アドレス直打ち実験では、
    「http://自社サイトアドレス/wordpress/lesson/」でカスタム投稿「lesson」
    全記事アーカイブは問題なく表示。
    「http://自社サイトアドレス/wordpress/lesson/ws_classify/」では404。
    「http://自社サイトアドレス/wordpress/lesson/ws_classify/in-shop/」では
    記事が存在しない時のお知らせが出ます。

    ☆自分なりに情報検索して試したこと☆
    ・パーマリンクのカラ更新
    ・archive.phpをコピーしてtaxonomy-ws_classify.phpを作成、ws_classifyの
    記事を出力するように書き換え⇒一覧は表示されず、トップページヘのナビだけ表示

    もうかれこれ一週間以上悩んでいて、テキストウィジェットを駆使して
    自分で一覧を作っていくしかないのかな…と思うくらい追い詰められて
    いるのですが、その前にダメ元で質問させていただきました。
    どこかの記述では、 function.phpにリライトのルールを書くと直るかも、と
    あったのですが、function.phpがどこにあるかさえも分かりません。
    (テーマの中のはfunctions.phpだから違いますよね…?)

    超初心者ゆえ、お答えいただくための情報が不足していると思うのですが、
    そのご指摘と共に救いの手を差し伸べていただけたら幸いです。

    _________________________

    WordPress のバージョンは3.8_1
    PHPのバージョンは5.4
    サーバー環境(OCN、Windows7)
    ブラウザはFirefox28.0(最新と書いてました)
    _________________________

  • トピック「カスタムタクソノミーのアーカイブが読み込まれません。」には新たに返信することはできません。