同分类文章上一篇下一篇更有利于提高文章的关联性,博客吧之前分享的zblog php同分类上下篇文章插件TcClassPost可以直接实现,其实也可以把这个插件里的代码提取出来添加到主题的include.php文件实现,方法同时也很简单。
操作步骤:
1、在主题include.php文件添加以下代码:
提示:可以添加以最后一行的?>
上面
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | function boke8_Post_Prev(&$getthis) { global $zbp; $prev=$getthis; $articles = $zbp->GetPostList( array('*'), array(array('=', 'log_Type', 0), array('=', 'log_CateID', $prev->Category->ID),array('=', 'log_Status', 0), array('<', 'log_PostTime', $prev->PostTime)), array('log_PostTime' => 'DESC'), array(1), null ); if (count($articles) == 1) { return $articles[0]; } else { return null; } } function boke8_Post_Next(&$getthis) { global $zbp; $prev=$getthis; $articles = $zbp->GetPostList( array('*'), array(array('=', 'log_Type', 0), array('=', 'log_CateID', $prev->Category->ID),array('=', 'log_Status', 0), array('>', 'log_PostTime', $prev->PostTime)), array('log_PostTime' => 'ASC'), array(1), null ); if (count($articles) == 1) { return $articles[0]; } else { return null; } } |
2、在主题的include.php文件中找到ActivePlugin_start()函数,在函数中添加以下代码:
提示:如果没有这个函数的话,请自行增加。
1 2 | Add_Filter_Plugin('Filter_Plugin_Post_Prev', 'boke8_Post_Prev'); Add_Filter_Plugin('Filter_Plugin_Post_Next', 'boke8_Post_Next'); |
3、保存文件即可。
注意:如果主题没有添加上一篇、下一篇调用代码,还要在主题的文件模板(一般是post-single.php)添加以下代码:
1 2 3 4 5 6 | {if $article.Prev} <p>上一篇:<a href="{$article.Prev.Url}" title="{$article.Prev.Title}">{$article.Prev.Title}</a></p> {/if} {if $article.Next} <p>下一篇: <a href="{$article.Next.Url}" title="{$article.Next.Title}">{$article.Next.Title}</a></p> {/if} |