Getting 404 on taxonomy page

时间:2011-08-23 作者:Alessandro

我已经为我的分类法和自定义帖子类型创建了自定义分类法模板,

自定义帖子类型名称为“ecommerce”,自定义分类法为“ecommerce\\u categories”,问题在于分页。它正确显示有2个页面包含帖子,但当我单击第2页时,我得到404页,只有在分类法页面上时才会出现这种情况,我还创建了一个自定义页面模板,该模板的作用与分类法文件相同,并且分页在这里(在自定义页面模板上)起作用。问题只出现在分类法类别页面上。这是文件taxonomy-ecommerce\\u categories的代码。php

<?php 
        $paged = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
        $term = $wp_query->queried_object;

        $shop_loop = new WP_Query( array( \'post_type\' => \'ecommerce\', \'ecommerce_categories\' => $term->name, \'posts_per_page\' => 2, \'orderby\' => \'menu_order\', \'paged\'=>$paged ) ); ?>

        <?php while ( $shop_loop->have_posts()  ) : $shop_loop->the_post(); ?>

                // here is my loop code with divs links etc.. etc...

        <?php endwhile;?>
        <div class="clearfix"></div>
        <?php if(function_exists(\'wp_pagenavi\')) { wp_pagenavi( array( \'query\' => $shop_loop ) ); } ?>
我看到了分页,但当我单击第2页或第3页时,我会看到404错误页面,这会发生在任何永久链接设置中,并且如果我使用此代码将分页从wp pagenavi插件更改为wordpress默认值

<?php wp_link_pages(); ?> or previous_post_link and next_post_link 
我看不到,帖子下面什么都没有显示。

我怎样才能解决这个问题?我做错了什么?

1 个回复
SO网友:brownian

我自己解决了这个问题rewrite rule.

故事:我有"piece" 自定义帖子类型,分类法"media_tag" 具有"m_audio" 术语和分类"genre_tag" 具有"g_sacred", "g_folk" 等等,我想有一个URL/piece/audio/<genre> 访问存档。

所以,现在我的functions.php:

add_filter( \'rewrite_rules_array\', \'my_insert_rewrite_rules\' );
function my_insert_rewrite_rules( $rules ) {
  $newrules = array();
  // audio pieces with g_sacred tax:
  $newrules[\'piece/audio/([a-z]+)(/page/([0-9]+))?\'] =
      \'index.php?post_type=piece&media_tag=m_audio\'
      . \'&genre_tag=g_$matches[1]&paged=$matches[3]\';

  return $newrules + $rules;
}
而且里面什么都没有taxonomy-media_tag-m_audio.php 样板

希望这有帮助。

还有,我的functions.php:

// add_action( \'wp_loaded\',\'my_flush_ALL_rules\' );
function my_flush_ALL_rules(){
  global $wp_rewrite;
  $wp_rewrite->flush_rules();
}
我取消了注释add_action 在更改后刷新规则。

结束

相关推荐

pagination with sticky posts

以下代码在第1页上显示8篇文章。然而,在所有后续页面上,仅显示7篇帖子。我认为这是因为第1页也会显示粘性帖子(其他页面不会显示)。如何解决这个问题(我需要8篇帖子和所有页面)</或者,贴子应该显示在所有页面上,而不仅仅是第一页我的原始代码:$header_query = new WP_Query( \'orderby=date&posts_per_page=7&paged=\'.$page_to_load.\'&ignore_sticky_posts=0&#x