私は以下のように "ポートフォリオ"と呼ばれるカスタム投稿タイプのカスタム分類法を作成しました:
function jvs_portfolio_categories_init() {
register_taxonomy(
'project-category',
'portfolio',
array(
'label' => __( 'Project Categories' ),
'query_var' => true,
'hierarchical' => true
)
);
}
add_action( 'init', 'jvs_portfolio_categories_init' );
それからarchives.php
ページを追加して、それらの分類法で投稿を表示できるようにしました。問題は2ページ目で改ページが壊れることです。これは基本的にアーカイブページでの私のループです:
<?php $paged = (get_query_var('page')) ? get_query_var('page') : 1; ?>
<?php global $query_string; query_posts($query_string . '&post_type=portfolio&paged=' . $paged); ?>
<?php if (have_posts()) while (have_posts()) : the_post(); ?>
// Stuff here
<?php endwhile; ?>
2ページ目に移動しようとすると404ページのエラーが表示されるだけです。かなりパーマリンクを使用していますが、手動でURLの/page/2
パラメータを?page=2
に置き換えると、ページネーションはそれ以外の場所ではうまく機能しますがサイト。
あなたは私を助けてくれる?前もって感謝します!
この機能は問題を修正しました:
function change_posttype() {
if( is_archive() && !is_admin() ) {
set_query_var( 'post_type', array( 'post', 'portfolio' ) );
}
return;
}
add_action( 'parse_query', 'change_posttype' );
それから私はちょうど私のコードからpagedとquery_string
関数を削除し、そして通常のループを離れました:)