一般来说,WordPress显示的文章数量可以在后台阅读设置中指定,后台设置将同步统一应用于主页、列表页、搜索页、标签页、类别页等。但是,我们会遇到每页显示的文章数量是根据页面类型指定的,那么如何自定义WordPress中显示的文章数量呢?这个时候,我们需要手动编写代码。下面简单介绍一下。
1.将以下代码添加到当前主题功能模板functions.php中,最终效果是搜索结果页面显示3篇文章,文章归档页面显示6篇文章。
add _ action(‘pre _ get _ posts’,‘zm _ set _ posts _ per _ page’);函数zm _ set _ posts _ per _ page($ query){ if((!is _ admin())& amp;& amp($ query = = = $ GLOBALS【‘WP _ query‘】)& amp;& amp($ query-& gt;is _ search())){ $ query-& gt;set(‘posts _ per _ page‘,3);}elseif((!is _ admin())& amp;& amp($ query = = = $ GLOBALS【‘WP _ the _ query‘】)& amp;& amp($ query-& gt;is _ archive())){ $ query-& gt;set(‘posts _ per _ page‘,+6);} return $ query}2.如果您想在不同类别中显示不同的文章,请修改类别ID以在指定类别中显示不同的文章。
add _ action(‘pre _ get _ posts’,‘zm _ set _ posts _ per _ page’);函数zm _ set _ posts _ per _ page($ query){ if((!is _ admin())& amp;& amp($ query = = = $ GLOBALS【‘WP _ the _ query‘】)& amp;& amp(is _ category(array(1,2))){ $ query-& gt;set(‘posts _ per _ page‘,3);}elseif((!is _ admin())& amp;& amp($ query = = = $ GLOBALS【‘WP _ the _ query‘】)& amp;& amp(is _ category(array(3,4))){ $ query-& gt;set(‘posts _ per _ page‘,6);}elseif((!is _ admin())& amp;& amp($ query = = = $ GLOBALS【‘WP _ the _ query‘】)& amp;& amp(is _ category(array(5,6))){ $ query-& gt;set(‘posts _ per _ page‘,2);}