The gform_web_api_capability_delete_forms filter allows you to modify the capability required to delete forms via the Gravity Forms web API.
Usage
add_filter('gform_web_api_capability_delete_forms', 'change_delete_forms_capability'); function change_delete_forms_capability($capability) { // your custom code here return $capability; }
Parameters
- $capability (string) – The capability required. Defaults to ‘gravityforms_delete_forms’.
More information
See Gravity Forms Docs: gform_web_api_capability_delete_forms
Examples
Change capability to ‘delete_others_forms’
Change the required capability to delete forms to ‘delete_others_forms’.
add_filter('gform_web_api_capability_delete_forms', 'change_capability_to_delete_others_forms'); function change_capability_to_delete_others_forms($capability) { return 'delete_others_forms'; }
Allow administrators to delete forms
Allow users with ‘manage_options’ capability (usually administrators) to delete forms.
add_filter('gform_web_api_capability_delete_forms', 'allow_admins_to_delete_forms'); function allow_admins_to_delete_forms($capability) { return 'manage_options'; }
Custom capability for a specific user role
Create a custom capability ‘custom_delete_forms’ for a specific user role to delete forms.
add_filter('gform_web_api_capability_delete_forms', 'custom_capability_for_user_role'); function custom_capability_for_user_role($capability) { return 'custom_delete_forms'; }
Restrict form deletion to users with ‘edit_posts’ capability
Allow users with ‘edit_posts’ capability to delete forms.
add_filter('gform_web_api_capability_delete_forms', 'restrict_deletion_to_edit_posts_capability'); function restrict_deletion_to_edit_posts_capability($capability) { return 'edit_posts'; }
Disable form deletion via the web API
Disable the ability to delete forms via the web API by returning a non-existent capability.
add_filter('gform_web_api_capability_delete_forms', 'disable_form_deletion_via_web_api'); function disable_form_deletion_via_web_api($capability) { return 'non_existent_capability'; }