Zblog如何实现同分类上一篇下一篇文章

zhanzhang1年前阿里云建站2390

ZblogPHP系统默认是通过ID来展现上一篇,下一篇文章的,如果在同分类实现文章上一篇下一篇可能更有利于提高文章阅读的关联性,也有很多用户有这样的需求,现在来介绍一下实现方法。

1、在主题include.php文件最底部的?>上面添加以下代码。

function umtheme_PostPrev(&$goPage) {
    global $zbp;
    $prev=$goPage;
    $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 umtheme_PostNext(&$goPage) {
    global $zbp;
    $prev=$goPage;
    $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_主题ID函数,在函数中添加以下代码。

Add_Filter_Plugin('Filter_Plugin_Post_Prev', 'umtheme_PostPrev');
Add_Filter_Plugin('Filter_Plugin_Post_Next', 'umtheme_PostNext');

3、在详情页模版post-single.php对应的位置添加以下分页代码即可。

{if $article.Prev}
    <div class="prev"><span>上一篇:</span><a href="{$article.Prev.Url}" title="{$article.Prev.Title}">{$article.Prev.Title}</a></div>
{/if}
{if $article.Next}
    <div class="next"><span>下一篇:</span><a href="{$article.Next.Url}" title="{$article.Next.Title}">{$article.Next.Title}</a></div>
{/if}

相关文章

Discuz! Q 第一个内测版发布了

Discuz! Q 第一个内测版发布了

HI,大家好,我是 Q。大周末的,研发团队为我熬了一夜,就不多废话了,直入正题~Discuz! Q alpha v0.3.200315 发布!在我的上一个版本 Discuz! Q alpha v0.2...

WordPress 5.3 正式版最新免费下载

WordPress 5.3 正式版最新免费下载

WordPress 5.3版本主要的更新内容都是围绕新版编辑器展开的,其次就是后台UI展示的优化,让可操作功能的展示更醒目。我们建议大家一直保持WordPress程序为最新版本,因为每次的更新除了功能...

Discuz! X3.4论坛标题字数突破80的限制解决方法

Discuz! X3.4论坛标题字数突破80的限制解决方法

使用 Discuz! X3.4 建站,每次发帖子标题都受字数的限制,一直找不到解决的办法,下面站部落为您分享解决标题限制80字符方法步骤。一、数据库修改。二、修改JS验证字符数文件。三、修改模板中写死...

Zblog1.6版本固定域名后出错的解决办法

Zblog1.6版本固定域名后出错的解决办法

最近Zblog升级到了1.6版本,官方对于Zblog1.6版本固定域名后出错这个问题给了一个新的解决办法。注意:本文方法仅适用于Zblog1.6版本,低于1.6的版本均不能使用。ftp链接上服务器,打...

老域名建站有哪些好处?

老域名建站有哪些好处?

1、老域名年份长携带更高的权重一个域名年份越长搜索引擎给予的权重就越多,一个老域名相比新域名有长达十几二十年的得分积累,做起网站来自然比新域名好的多!2、老域名有更多的外链因为老域名之前被建站使用过,...

Discuz! X3.4 搬家教程

Discuz! X3.4 搬家教程

由于种种原因,很多时候站长都需要对网站进行搬家,搬家会经常出现这样或那样的问题,现在对以往的经验做一个总结,希望对各位站长有所帮助。网站的空间有独立与虚拟之分,下面分别介绍两种空间的搬家方法。一、独立...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。