李涛自留地
回到顶部
首页 > 建站 > ZblogPhp代码实现限制首页调用文章数量

ZblogPhp代码实现限制首页调用文章数量

文章目录

最近在制作ZblogPhp版本主题过程中,由于不想在首页使用分页功能,又不想让文章数量显示太多,所以就想不用插件,实现限制首页调用文章数量,网上一搜一大片,基本上都是简单的两段代码,加载到相对应的文件中后也并没有实现想要的效果,最终还是怪自身水平问题,折腾许久还好还是实现了对首页调用文章数量的限制。

后台页面设置限制条数不生效

开始我并没有在后台网站设置—–>页面设置中对文章的数量进行设置,因为我刚好也就只需要在首页调用10条文章的数据,所以开始也没有对这个地方进行设置,而在首页显示出超过12篇文章时,我才想到这个地方默认是10篇文章,就到这进行了设置,将这个地方设置了8篇文章,但最终显示的还是12篇文章。

ZblogPhp代码实现限制首页调用文章数量

设置此处对于首页显示文章数量不生效,所以就开始寻找解决办法。

ZblogPhp代码实现限制首页文章调用数量

网站找了很久,很多站长对于代码实现限制首页自定义文章数量就是简单的两行代码,对于PHP和Zblog新手来说确实有点不友好,下面是ZblogPhp代码实现限制首页文章调用数量的具体详细步骤:

由于我是新建立的主题,主题目录下还没有include.php文件,所以我在主题目录下先新建了一个include.php文件。

1、注册插件

在include.php下先添加以下代码:

<?
RegisterPlugin('zuqiuma', 'ActivePlugin_zuqiuma');
function ActivePlugin_zuqiuma()
{
     global $zbp;   
     Add_Filter_Plugin('Filter_Plugin_ViewList_Core','zuqiuma_viewList');
}
?>

高手站长和采集站(再次鄙视采集站)中都说要挂载Add_Filter_Plugin('Filter_Plugin_ViewList_Core','zuqiuma_viewList');这段代码,当时一直没明白是咋回事,后来想到这个有点像WordPress里面的挂载,所以就有了以上这段代码。

zuqiuma就是自己主题的ID,把以上代码中所有zuqiuma替换成自己主题的ID即可。

2、创建限制首页文章数量的自定义函数

在以上代码中的PHP结束符?>前添加以下代码:

function zuqiuma_viewList($type, $page, $category, $author, $datetime, $tag, $w, $pagebar){
if($type =='index'){ //$type =='index'就是判断是不是首页
     $pagebar->PageCount=3;//PageCount就是分页的文章数量
}
}

$type =='index'就是判断是不是首页,PageCount=3就是分页的文章数量,可以将3改成自己需要的数量。

更新后台缓存

本以为经过上面的步骤,可以实现我需要的效果,但是恰恰忽略了缓存问题,一直显示的和设置的不一样,又是一番折腾,后来想到很有可能是缓存问题,在后台首页点击清空缓存并重新编译模板,最后再次刷新网站首页,终于达到了以上代码限制的首页调用文章数量。

通过此次ZblogPhp代码实现限制首页调用文章数量的过程,明白了有时候修改完代码,千万别忘了清缓存,本来一个简答的问题,罗里吧嗦的了这么多,但还是希望本文能给需要解决本问题的站长带来帮助。

若非作者标注皆为李涛自留地原创文章,转载或复制请以超链接形式并注明出处。