Bricks 中文文档:bricks/query_filters_indexer/validate_job_settings

📄 原始资料  |  展开查看原始 JSON(bricks-query_filters_indexer-validate_job_settings.json){ “name”: “bricks/query_filters_indexer/validate_job_settings”, “kind”: “filter”, “url”: “https://academy.bricksbuilder.io/developer/hooks/filters/bricks-query_filters_indexer-validate_job_settings/”, “scraped_a…

📄 原始资料  |  展开查看原始 JSON(bricks-query_filters_indexer-validate_job_settings.json)
{
  "name": "bricks/query_filters_indexer/validate_job_settings",
  "kind": "filter",
  "url": "https://academy.bricksbuilder.io/developer/hooks/filters/bricks-query_filters_indexer-validate_job_settings/",
  "scraped_at": "2026-08-29",
  "hook_name": "bricks/query_filters_indexer/validate_job_settings",
  "description": {
    "en": "Validates the settings of a filter job before the Query Filters Indexer processes it. This is used for unknown or custom filter sources to ensure they have the necessary configuration.",
    "zh": "在 Query Filters Indexer 处理筛选任务之前验证其设置。用于未知或自定义筛选源,以确保它们具有必要的配置。"
  },
  "parameters": [
    {
      "name": "validate",
      "type": "bool",
      "type_zh": null,
      "description": {
        "en": "Whether the settings are valid. Default is false for unknown sources.",
        "zh": "设置是否有效。对于未知来源默认为 false。"
      }
    },
    {
      "name": "filter_source",
      "type": "string",
      "type_zh": null,
      "description": {
        "en": "The source of the filter data (e.g., wcField , customSource ).",
        "zh": "筛选数据来源(例如 wcField、customSource)。"
      }
    },
    {
      "name": "filter_settings",
      "type": "array",
      "type_zh": null,
      "description": {
        "en": "The settings of the filter element.",
        "zh": "筛选元素的设置。"
      }
    }
  ],
  "example_usage": "add_filter( 'bricks/query_filters_indexer/validate_job_settings', function( $validate, $filter_source, $filter_settings ) {\n    // Validate settings for a custom source\n    if ( $filter_source === 'my_custom_source' ) {\n        // Check if required 'my_key' setting is present\n        return ! empty( $filter_settings['my_key'] );\n    }\n\n\n    return $validate;\n}, 10, 3 );"
}

前言

在 Query Filters Indexer 处理筛选任务之前验证其设置。用于未知或自定义筛选源,以确保它们具有必要的配置。

用法

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

add_filter( 'bricks/query_filters_indexer/validate_job_settings', function( $validate, $filter_source, $filter_settings ) {
    // Validate settings for a custom source
    if ( $filter_source === 'my_custom_source' ) {
        // Check if required 'my_key' setting is present
        return ! empty( $filter_settings['my_key'] );
    }


    return $validate;
}, 10, 3 );

参数

  • $validate (bool):设置是否有效。对于未知来源默认为 false。
  • $filter_source (string):筛选数据来源(例如 wcField、customSource)。
  • $filter_settings (array):筛选元素的设置。

示例代码

筛选返回值

add_filter( 'bricks/query_filters_indexer/validate_job_settings', function( $validate, $filter_source, $filter_settings ) {
    // Validate settings for a custom source
    if ( $filter_source === 'my_custom_source' ) {
        // Check if required 'my_key' setting is present
        return ! empty( $filter_settings['my_key'] );
    }


    return $validate;
}, 10, 3 );

根据条件短路返回原值

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

add_filter( 'bricks/query_filters_indexer/validate_job_settings', function( $value, $validate ) {
    if ( is_admin() ) { return $value; }
    // TODO: custom logic here
    return $value;
} );

补充说明

更多细节可参考 官方文档