对分类档案分页进行分页

时间:2011-02-19 作者:grrrbytes

我已经为所有分类法创建了存档页(taxonomie-{taxonomy-name}.php) 这个很好用。我的分类法的鼻涕虫和它的鼻涕虫是一样的post-type. 这样就可以在URL中创建整洁的层次结构,例如:

当post类型products 将“type”作为分类法,并带有值book、cd和dvd。post-type1具有slugproduct 而taxonomy1具有相同的slug:product.

这样,我可以按以下方式列出分类法归档:

产品/书籍

产品/光盘

产品/dvd

这很有效。但是:分页在产品档案上有效,但在products/{type} 存档它给出了404。

有什么线索吗?

分类模板的代码如下:

  <?php get_header(); ?>
  <section id="inhoud" class="hfeed">
    <nav class="navigatiebalk">
      <ul class="pagina-navigatie">
        <li class="volgende-pagina"><?php previous_posts_link(\'\'); ?></li>
        <li class="vorige-pagina"><?php next_posts_link(\'\'); ?></li>
      </ul>
    </nav>

    <?php while ( have_posts() ) : the_post(); ?>
    <?php
    $post_type = get_post_type( get_the_ID() );
    ?>
        <article class="hentry publicaties artikel <?php echo $post_type ?>">
            <header class="artikel-hoofd">
            <?php the_title( \'<h1 class="titel"><span class="datum date">\' . the_date(\'d.m.y\', \'\', \'\', false) . \'</span><a href="\' . get_permalink() . \'" title="\' . the_title_attribute( \'echo=0\' ) . \'" rel="bookmark">\', \'</a></h1>\' ); ?>
            <figure class="icoontje"></figure>
            </header>

            <section class="inleiding">
                <figure class="bericht-icoon"><?php $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), \'large\'); echo \'<a href="\' . $large_image_url[0] . \'" class="thumbnail-link colorbox" rel="lightbox" title="\' . the_title_attribute(\'echo=0\') . \'" >\'; the_post_thumbnail(\'thumbnail\', array(\'class\' => \'artikel-thumbnail\')); ?></a>
                </figure>
                <span><?php $this_excerpt = get_the_excerpt(); echo $this_excerpt; ?>...&nbsp;<a href="<?php the_permalink(); ?>" class="lees-verder">Lees en luister</a>
                </span>
            </section>
        </article>
    <?php endwhile; ?>
    <nav class="navigatiebalk">
      <ul class="pagina-navigatie">
        <li class="volgende-pagina"><?php previous_posts_link(\'\'); ?></li>
        <li class="vorige-pagina"><?php next_posts_link(\'\'); ?></li>
      </ul>
    </nav>
  </section>
  <?php get_footer(); ?>

2 个回复
SO网友:grrrbytes

我自己想出来的。显然,分页中断是因为我的“产品”和“类型”(这些不是我的术语,只是为了演示目的)具有相同的段塞。Products有一段“Products”,types有一段“Products/%typename%”。因此,我可以将我的permalinks分级:产品/dvd或产品/cd。虽然它起到了作用,但它打破了我在分类法归档页面上的分页,因为它打破了我对单个帖子类型的永久链接。我做了以下几点来修复它:

function add_rewrite_rules($rules) {
    $newrules[\'([^/]+)/([^\\.]+).html$\'] = \'index.php?$matches[1]=$matches[2]\';
    $newrules[\'([^/]+)/([^/]+)/page/?([0-9]{1,})/?$\'] = \'index.php?post_type=$matches[1]&locations=$matches[2]&paged=$matches[3]\';

    $rules = $newrules + $rules;
    return $rules;
}

add_filter(\'rewrite_rules_array\', \'add_rewrite_rules\');
我添加了一些mod重写规则,以便apache可以找到分页的分类法归档和单独的归档文章。

SO网友:mfields

如果我理解正确,那么您在站点上定义了一个名为“type”的分类法。这将打破一切。“类型”是reserved terms 不应用于分类。

结束

相关推荐

Saving Taxonomy Terms

我有一个有趣的问题,希望有人能尽快回答。我已经创建了自己的metabox,它基于“我的metabox代码”(下面的列表)正确地显示了我创建的“event\\u types”分类中所有术语的下拉列表。我遇到的问题是,当从下拉列表中选择不同的术语并更新帖子时,能够保存/更新与帖子相关的术语。在对各种代码位进行修补之后,我发现通过手动将term\\u ID number[用逗号分隔]输入数组区域,我得到了我想要的结果。例如,如果在保存帖子时,函数将调用此代码wp_set_post_terms( $post_id