You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress首页近期文章查询设置无法修改问题求助

解决方案
  • 先排查首页模板的查询类型
    你用的「Posts/Image at left」模板大概率是用了自定义WP_Query而非主查询,这就是为什么你的pre_get_posts代码执行了但没生效——主查询的修改影响不到自定义查询。找到该模板对应的PHP文件(比如front-page.php或主题自定义模板文件),查找是否有类似new WP_Query()的代码块。

  • 修改自定义查询参数
    如果找到自定义查询,直接在参数数组里调整:

$args = array(
    'posts_per_page' => 2, // 改为你需要的2篇
    'orderby' => 'date', // 按日期排序
    'order' => 'DESC' // 最新在前,改成ASC就是最早在前
);
$custom_query = new WP_Query( $args );
  • 若确为要修改主查询,完善条件判断
    如果模板用的是主查询,那给你的代码加上首页限定,避免影响其他页面:
function be_change_event_posts_per_page( $query ) {
    if( $query->is_main_query() && !is_admin() && (is_front_page() || is_home()) ) {
        $query->set( 'posts_per_page', 2 );
        $query->set( 'order', 'DESC' ); // 按需设置排序方向
    }
}
add_action( 'pre_get_posts', 'be_change_event_posts_per_page' );
  • 排查冲突
    如果以上都没用,暂时禁用所有插件测试,或者检查主题其他函数文件是否有覆盖查询参数的代码,有些主题会内置文章数量控制的选项,也可以去主题设置面板看看有没有相关开关。

内容的提问来源于stack exchange,提问作者maxet24

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 11:48:15