{
  "name": "bricks/element/builder_setup_query",
  "kind": "filter",
  "url": "https://academy.bricksbuilder.io/developer/hooks/filters/bricks-element-builder_setup_query/",
  "scraped_at": "2026-08-29",
  "hook_name": "bricks/element/builder_setup_query",
  "description": {
    "en": "Filters the query arguments used to set up the preview context in the builder (e.g., when “Populate Content” is active).",
    "zh": "Bricks 1.4 引入。由于其改进且更精简的 DOM 结构，现在需要在 render() 函数中直接添加元素 ID、根类和其它元素根 HTML 属性。你可以通过以下方式以编程方式操作返回的元素根属性：筛选器回调接收 2 个参数：$attributes 和 $element_id。"
  },
  "parameters": [
    {
      "name": "query_args",
      "type": "array",
      "type_zh": null,
      "description": {
        "en": "Array of arguments passed to WP_Query .",
        "zh": "传递给 WP_Query 的参数数组。"
      }
    },
    {
      "name": "post_id",
      "type": "int",
      "type_zh": null,
      "description": {
        "en": "The ID of the template being edited.",
        "zh": "正在编辑的模板 ID。"
      }
    }
  ],
  "example_usage": "add_filter( 'bricks/element/builder_setup_query', function( $query_args, $post_id ) {\n    // Example: If editing a specific template, force a specific post for preview\n    if ( $post_id === 123 ) {\n        $query_args['p'] = 456;\n        $query_args['post_type'] = 'post';\n    }\n\n\n    return $query_args;\n}, 10, 2 );"
}