{
  "generated": "2026-08-16T00:14:34.225Z",
  "product": {
    "id": "gravityview-multiple-forms",
    "label": "Multiple Forms",
    "repo": "GravityKit/Multiple-Forms",
    "version": "0.7.0",
    "actions": [
      "gk/multiple-forms/loaded"
    ],
    "filters": [
      "gform_gf_query_sql",
      "gk/multiple-forms/merge/split-field-types",
      "gk/multiple-forms/query/handler/join/conditions",
      "gk/query-filters/prepare-field-filters",
      "gravityview_multiple_forms/allow_join_on"
    ]
  },
  "hooks": [
    {
      "id": "gk-multiple-forms-loaded",
      "name": "gk/multiple-forms/loaded",
      "type": "action",
      "product": "gravityview-multiple-forms",
      "description": "Triggers an action when the plugin is fully loaded.",
      "parameters": [],
      "categories": [
        "forms"
      ],
      "example": "add_action( 'gk/multiple-forms/loaded', function() {\n    // Your code here\n} );",
      "since": "0.3",
      "source": {
        "file": "src/MultipleForms/Plugin.php",
        "line": 136
      },
      "url": "/docs/gravityview-multiple-forms/actions/gk-multiple-forms-loaded/",
      "related": []
    },
    {
      "id": "gform_gf_query_sql",
      "name": "gform_gf_query_sql",
      "type": "filter",
      "product": "gravityview-multiple-forms",
      "description": "Filter the SQL query fragments to allow low-level advanced analysis and modification before the query is run.",
      "parameters": [
        {
          "name": "sql",
          "type": "array",
          "description": "An array with all the SQL fragments: select, from, join, where, order, paginate."
        }
      ],
      "categories": [
        "forms"
      ],
      "example": "add_filter( 'gform_gf_query_sql', function($sql) {\n    // Modify $sql as needed\n    return $sql;\n}, 10, 1 );",
      "since": "2.4.3",
      "source": {
        "file": "src/MultipleForms/Query.php",
        "line": 824
      },
      "url": "/docs/gravityview-multiple-forms/filters/gform_gf_query_sql/",
      "related": []
    },
    {
      "id": "gk-multiple-forms-merge-split-field-types",
      "name": "gk/multiple-forms/merge/split-field-types",
      "type": "filter",
      "product": "gravityview-multiple-forms",
      "description": "Field input types whose parent filter is replaced by one filter per visible input.",
      "parameters": [
        {
          "name": "types",
          "type": "string[]",
          "description": "The field input types to split into their inputs. Default: <code>[ 'name', 'address' ]</code>."
        },
        {
          "name": "form",
          "type": "array",
          "description": "The form being processed."
        }
      ],
      "categories": [
        "fields",
        "forms"
      ],
      "example": "add_filter( 'gk/multiple-forms/merge/split-field-types', function($types, $form) {\n    // Modify $types as needed\n    return $types;\n}, 10, 2 );",
      "since": "0.7.0",
      "source": {
        "file": "src/MultipleForms/Assets.php",
        "line": 300
      },
      "url": "/docs/gravityview-multiple-forms/filters/gk-multiple-forms-merge-split-field-types/",
      "related": []
    },
    {
      "id": "gk-multiple-forms-query-handler-join-conditions",
      "name": "gk/multiple-forms/query/handler/join/conditions",
      "type": "filter",
      "product": "gravityview-multiple-forms",
      "description": "Modifies conditions for a joined form query.",
      "parameters": [
        {
          "name": "conditions",
          "type": "\\GF_Query_Condition[]",
          "description": "The current conditions."
        },
        {
          "name": "view",
          "type": "\\GV_View",
          "description": "The View object."
        },
        {
          "name": "context",
          "type": "array",
          "description": "An array with additional context."
        }
      ],
      "categories": [
        "forms"
      ],
      "example": "add_filter( 'gk/multiple-forms/query/handler/join/conditions', function($conditions, $view, $context) {\n    // Modify $conditions as needed\n    return $conditions;\n}, 10, 3 );",
      "since": "0.5.0",
      "source": {
        "file": "src/MultipleForms/Query/Handler.php",
        "line": 375
      },
      "url": "/docs/gravityview-multiple-forms/filters/gk-multiple-forms-query-handler-join-conditions/",
      "related": []
    },
    {
      "id": "gk-query-filters-prepare-field-filters",
      "name": "gk/query-filters/prepare-field-filters",
      "type": "filter",
      "product": "gravityview-multiple-forms",
      "description": "Enriches field filters with the choice endpoints Query Filters gives its primary form, so forms registered through the `gk/query-filters/register-form` JS event get the same endpoint-backed search.",
      "parameters": [
        {
          "name": "fields",
          "type": "array",
          "description": "The field filters, each carrying <code>form_id</code> and <code>key</code>."
        }
      ],
      "categories": [
        "fields",
        "search"
      ],
      "example": "add_filter( 'gk/query-filters/prepare-field-filters', function($fields) {\n    // Modify $fields as needed\n    return $fields;\n}, 10, 1 );",
      "since": "0.7.0",
      "source": {
        "file": "src/MultipleForms/Assets.php",
        "line": 349
      },
      "url": "/docs/gravityview-multiple-forms/filters/gk-query-filters-prepare-field-filters/",
      "related": [
        "gk/query-filters/admin-capabilities",
        "gk/query-filters/auto-endpoint-threshold",
        "gk/query-filters/field-filters",
        "gk/query-filters/forms",
        "gk/query-filters/relative-date-choices"
      ]
    },
    {
      "id": "gravityview_multiple_forms-allow_join_on",
      "name": "gravityview_multiple_forms/allow_join_on",
      "type": "filter",
      "product": "gravityview-multiple-forms",
      "description": "Permissible meta and properties that forms can be joined on.",
      "parameters": [
        {
          "name": "allowed_non_field_join_data",
          "type": "array",
          "description": "Meta keys and entry property names. <code>entry_id</code> is an alias for <code>id</code>."
        }
      ],
      "categories": [
        "views",
        "forms"
      ],
      "example": "add_filter( 'gravityview_multiple_forms/allow_join_on', function($allowed_non_field_join_data) {\n    // Modify $allowed_non_field_join_data as needed\n    return $allowed_non_field_join_data;\n}, 10, 1 );",
      "since": "0.2: beta 1",
      "source": {
        "file": "src/MultipleForms/Assets.php",
        "line": 261
      },
      "url": "/docs/gravityview-multiple-forms/filters/gravityview_multiple_forms-allow_join_on/",
      "related": []
    }
  ],
  "stats": {
    "total": 6,
    "actions": 1,
    "filters": 5
  }
}