Bricks 中文文档:bricks_query_max_items_in_builder

📄 原始资料  |  展开查看原始 JSON(bricks_query_max_items_in_builder.json){ “name”: “bricks_query_max_items_in_builder”, “kind”: “filter”, “url”: “https://academy.bricksbuilder.io/developer/hooks/filters/bricks_query_max_items_in_builder/”, “scraped_at”: “2026-08-29”, “hook_name”: “bricks_query_max_it…

📄 原始资料  |  展开查看原始 JSON(bricks_query_max_items_in_builder.json)
{
  "name": "bricks_query_max_items_in_builder",
  "kind": "filter",
  "url": "https://academy.bricksbuilder.io/developer/hooks/filters/bricks_query_max_items_in_builder/",
  "scraped_at": "2026-08-29",
  "hook_name": "bricks_query_max_items_in_builder",
  "description": {
    "en": "Filters dynamic query results in the builder when Bricks applies the builder query max-results limit. Bricks handles built-in post , term , user , and supported provider object types internally. This filter runs for custom query object types that Bricks does not know how to trim itself.",
    "zh": "当 Bricks 在构建器中对动态查询结果应用构建器查询最大结果数限制时筛选结果。Bricks 内部处理内置的 post、term、user 以及支持的 provider 对象类型。此筛选器为 Bricks 不知道如何自行裁剪的自定义查询对象类型而运行。"
  },
  "parameters": [
    {
      "name": "result",
      "type": "mixed",
      "type_zh": null,
      "description": {
        "en": "The current query result.",
        "zh": "当前的查询结果。"
      }
    },
    {
      "name": "query_instance",
      "type": "Bricks\\Query",
      "type_zh": null,
      "description": {
        "en": "The Bricks query instance.",
        "zh": "Bricks 查询实例。"
      }
    },
    {
      "name": "builder_query_max_results",
      "type": "int",
      "type_zh": null,
      "description": {
        "en": "The maximum number of results Bricks allows in the builder.",
        "zh": "Bricks 在构建器中允许的最大结果数。"
      }
    }
  ],
  "example_usage": "add_filter( 'bricks_query_max_items_in_builder', function( $result, $query_instance, $builder_query_max_results ) {\n    if ( is_array( $result ) ) {\n        return array_slice( $result, 0, $builder_query_max_results );\n    }\n\n\n    return $result;\n}, 10, 3 );"
}

前言

当 Bricks 在构建器中对动态查询结果应用构建器查询最大结果数限制时筛选结果。Bricks 内部处理内置的 post、term、user 以及支持的 provider 对象类型。此筛选器为 Bricks 不知道如何自行裁剪的自定义查询对象类型而运行。

用法

将代码加入子主题的 functions.php

add_filter( 'bricks_query_max_items_in_builder', function( $result, $query_instance, $builder_query_max_results ) {
    if ( is_array( $result ) ) {
        return array_slice( $result, 0, $builder_query_max_results );
    }


    return $result;
}, 10, 3 );

参数

  • $result (mixed):当前的查询结果。
  • $query_instance (Bricks\Query):Bricks 查询实例。
  • $builder_query_max_results (int):Bricks 在构建器中允许的最大结果数。

示例代码

筛选返回值

add_filter( 'bricks_query_max_items_in_builder', function( $result, $query_instance, $builder_query_max_results ) {
    if ( is_array( $result ) ) {
        return array_slice( $result, 0, $builder_query_max_results );
    }


    return $result;
}, 10, 3 );

根据条件短路返回原值

根据条件跳过或修改返回值:

add_filter( 'bricks_query_max_items_in_builder', function( $value, $result ) {
    if ( is_admin() ) { return $value; }
    // TODO: custom logic here
    return $value;
} );

补充说明

更多细节可参考 官方文档