Эй.Я использую пользовательский тип сообщения в WordPress.Я регистрирую этот пользовательский тип сообщения следующим образом:
register_post_type("lifestream", array(
'label' => 'Lifestream',
'public' => true,
'hierarchical' => true,
'menu_position' => 5,
'supports' => array('title','editor','author','thumbnail','comments','custom-fields'),
'taxonomies' => array('category','post_tag'),
'query_var' => true,
'publicly_queryable' => true,
'exclude_from_search' => false,
'caller_get_posts' => 1
));
register_taxonomy_for_object_type('category', 'lifestream');
register_taxonomy_for_object_type('post_tag', 'lifestream');
В теме (шаблон цикла) я люблю комбинировать сообщения и свой пользовательский тип сообщения, для этого я использую query_posts () со следующими параметрами:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
'post_type' => array('post', 'lifestream'),
'paged' => $paged,
'cat' => $wp_query->get('cat'),
'tag' => $wp_query->get('tag'),
'year' => $wp_query->get('year'),
'monthnum' => $wp_query->get('monthnum'),
'post_status' => 'publish',
'showposts' => 3
);
query_posts($args);
# the loop
while ( have_posts() ) : the_post();
# markup
endwhile;
if($wp_query->max_num_pages > 1):
# next_posts_link / previous_posts_link
endif;
wp_reset_query();
Пока это работает.Но у меня возникли проблемы с категориями и тегами страниц.Если я вызываю титульную страницу, все в порядке, и я могу разбивать страницы на страницы, получая правильные результаты.
И, если я вызываю страничный URL, например / category / mycat / page / 2, генерируется 404.Но обязательно должны быть посты.Неважно, есть ли в категории посты нестандартного типа или нормальные посты.Я предполагаю, что мои параметры для query_posts () не верны, но я не знаю ...
Кажется, что $ wp_query-> max_num_pages имеет неправильное значение.Но почему?Правильно ли я регистрирую таксономии (мне нравится использовать категории и теги для своих пользовательских типов сообщений)?
У вас есть идея, что делать?Большое спасибо!