为什么要写这篇文章呢?因为我用WordPress制作了一个多本小说主题,使用子分类来实现小说的分卷阅读。
WordPress可以实现同一分类下文章的连续翻页,如果翻到分卷的最后一章时,却不能自动翻到下一分卷的第一章,为此我还特意询问了几个比较精通的WordPress的高手,奈何,他们都说没有逻辑关系,无法实现。
而我却知道它们之间肯定有关系,不同子分类都是属于同一父分类,而子分类之间却可以通过分类id让他们进行排序。然后获取当前文章的分类id,让父分类下的所有子分类id与当前分类id进行比较,只要判断比当前分类id大,那么就使用break;中断,然后就输出子分类id,进而输出子分类id的第一篇文章,这样就实现了Wordpress同一父分类下不同子分类的文章连续翻页。
以上就是我写代码的原理。下面是实现的代码:
<?php
$category = get_the_category();
$dqcatid=$category[0]->cat_ID ;
$dqfucatid=$category[0]->category_parent;
$cates = get_categories('child_of='.$dqfucatid.'&orderby=ID&order=ASC&hide_empty=false');
foreach($cates as $category_child) {
?>
<?php $dqchildid=$category_child->cat_ID;
if($dqchildid>$dqcatid){
$dqchildid;
break;
}
} ?>
<?php $posts = get_posts('numberposts=1&order=ASC&category='. $dqchildid);foreach($posts as $post): ?>;
<a href="<?php the_permalink(); ?>" title="<?php echo get_the_title()?>" >下一章→</a>;
<?php $fjurl=get_permalink(); ?>;
<?php endforeach; wp_reset_query(); ?>
好了,如果你也使用WordPress做小说站,那么也可以试试以上代码。
能实现上一章吗?可以代替
<li><?php previous_post_link('上一章:%link','%title',true); ?></li>
<li><?php next_post_link('下一章:%link','%title',true); ?></li>,吗
上一章的实现需要自己写些代码……
能实现上一章吗?可以代替
,吗
小说站以前想搞,后来还是放弃了。
呵呵,我也只是弄来玩玩。。
@Era: 嗯 收藏下,说不定哪天还有那个念头搞小说站了。呵呵。
呵呵,那就欢迎收藏哈。