mirror of
https://github.com/10h30/ultimatemember.git
synced 2026-06-05 15:09:37 +09:00
- made hooks documentation;
- some optimizations and make single functions for some hooks;
This commit is contained in:
@@ -318,7 +318,49 @@ if ( ! class_exists( 'Admin_Builder' ) ) {
|
||||
'post' => $_POST
|
||||
);
|
||||
|
||||
$array = apply_filters("um_admin_pre_save_fields_hook", $array );
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_pre_save_fields_hook
|
||||
* @description Filter field data before save
|
||||
* @input_vars
|
||||
* [{"var":"$array","type":"array","desc":"Save Field data"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_pre_save_fields_hook', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_pre_save_fields_hook', 'my_admin_pre_save_fields', 10, 1 );
|
||||
* function my_admin_pre_save_fields( $array ) {
|
||||
* // your code here
|
||||
* return $array;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$array = apply_filters( "um_admin_pre_save_fields_hook", $array );
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_field_update_error_handling
|
||||
* @description Change error string on save field
|
||||
* @input_vars
|
||||
* [{"var":"$error","type":"string","desc":"Error String"},
|
||||
* {"var":"$array","type":"array","desc":"Save Field data"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_field_update_error_handling', 'function_name', 10, 2 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_field_update_error_handling', 'my_admin_field_update_error', 10, 2 );
|
||||
* function my_admin_field_update_error( $error, $array ) {
|
||||
* // your code here
|
||||
* return $error;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$output['error'] = apply_filters( 'um_admin_field_update_error_handling', $output['error'], $array );
|
||||
|
||||
extract( $array['post'] );
|
||||
@@ -347,10 +389,50 @@ if ( ! class_exists( 'Admin_Builder' ) ) {
|
||||
$field_ID = $_metakey;
|
||||
$field_args = $save[ $_metakey ];
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_pre_save_field_to_form
|
||||
* @description Change field options before save to form
|
||||
* @input_vars
|
||||
* [{"var":"$field_args","type":"array","desc":"Field Options"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_pre_save_field_to_form', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_pre_save_field_to_form', 'my_admin_pre_save_field_to_form', 10, 1 );
|
||||
* function my_admin_pre_save_field_to_form( $field_args ) {
|
||||
* // your code here
|
||||
* return $field_args;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$field_args = apply_filters("um_admin_pre_save_field_to_form", $field_args );
|
||||
|
||||
UM()->fields()->update_field( $field_ID, $field_args, $post_id );
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_pre_save_field_to_db
|
||||
* @description Change field options before save to DB
|
||||
* @input_vars
|
||||
* [{"var":"$field_args","type":"array","desc":"Field Options"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_pre_save_field_to_db', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_pre_save_field_to_db', 'my_admin_pre_save_field_to_db', 10, 1 );
|
||||
* function my_admin_pre_save_field_to_form( $field_args ) {
|
||||
* // your code here
|
||||
* return $field_args;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$field_args = apply_filters("um_admin_pre_save_field_to_db", $field_args );
|
||||
|
||||
if ( ! isset( $array['args']['form_only'] ) ) {
|
||||
|
||||
@@ -131,7 +131,7 @@ if ( ! class_exists( 'Admin_Columns' ) ) {
|
||||
public function add_display_post_states( $post_states, $post ) {
|
||||
|
||||
foreach ( UM()->config()->core_pages as $page_key => $page_value ) {
|
||||
$page_id = UM()->options()->get( apply_filters( 'um_core_page_id_filter', 'core_' . $page_key ) );
|
||||
$page_id = UM()->options()->get( UM()->options()->get_core_page_id( $page_key ) );
|
||||
|
||||
if ( $page_id == $post->ID ) {
|
||||
$post_states['um_core_page_' . $page_key] = sprintf( 'UM %s', $page_value['title'] );
|
||||
|
||||
@@ -348,6 +348,26 @@ if ( ! class_exists( 'Admin_Enqueue' ) ) {
|
||||
*/
|
||||
function load_localize_scripts(){
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_enqueue_localize_data
|
||||
* @description Extend localize data at wp-admin side
|
||||
* @input_vars
|
||||
* [{"var":"$localize_data","type":"array","desc":"Localize Data"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_enqueue_localize_data', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_enqueue_localize_data', 'my_admin_enqueue_localize_data', 10, 1 );
|
||||
* function my_admin_enqueue_localize_data( $localize_data ) {
|
||||
* // your code here
|
||||
* return $localize_data;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$localize_data = apply_filters('um_admin_enqueue_localize_data', array(
|
||||
'ajaxurl' => admin_url( 'admin-ajax.php' )
|
||||
)
|
||||
|
||||
@@ -106,7 +106,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) {
|
||||
|
||||
} else {
|
||||
|
||||
$html .= apply_filters( 'um_render_field_type_' . $data['type'], '', $data, $this->form_data );
|
||||
$html .= $this->render_field_by_hook( $data );
|
||||
|
||||
}
|
||||
|
||||
@@ -127,7 +127,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) {
|
||||
|
||||
} else {
|
||||
|
||||
$html .= apply_filters( 'um_render_field_type_' . $data['type'], '', $data, $this->form_data );
|
||||
$html .= $this->render_field_by_hook( $data );
|
||||
|
||||
}
|
||||
|
||||
@@ -146,7 +146,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) {
|
||||
|
||||
} else {
|
||||
|
||||
$html .= apply_filters( 'um_render_field_type_' . $data['type'], '', $data, $this->form_data );
|
||||
$html .= $this->render_field_by_hook( $data );
|
||||
|
||||
}
|
||||
|
||||
@@ -170,7 +170,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) {
|
||||
|
||||
} else {
|
||||
|
||||
$html .= apply_filters( 'um_render_field_type_' . $data['type'], '', $data, $this->form_data );
|
||||
$html .= $this->render_field_by_hook( $data );
|
||||
|
||||
}
|
||||
|
||||
@@ -192,7 +192,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) {
|
||||
|
||||
} else {
|
||||
|
||||
$html .= apply_filters( 'um_render_field_type_' . $data['type'], '', $data, $this->form_data );
|
||||
$html .= $this->render_field_by_hook( $data );
|
||||
|
||||
}
|
||||
|
||||
@@ -213,7 +213,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) {
|
||||
|
||||
} else {
|
||||
|
||||
$html .= apply_filters( 'um_render_field_type_' . $data['type'], '', $data, $this->form_data );
|
||||
$html .= $this->render_field_by_hook( $data );
|
||||
|
||||
}
|
||||
|
||||
@@ -233,7 +233,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) {
|
||||
|
||||
} else {
|
||||
|
||||
$html .= apply_filters( 'um_render_field_type_' . $data['type'], '', $data, $this->form_data );
|
||||
$html .= $this->render_field_by_hook( $data );
|
||||
|
||||
}
|
||||
}
|
||||
@@ -242,6 +242,33 @@ if ( ! class_exists( 'Admin_Forms' ) ) {
|
||||
}
|
||||
|
||||
|
||||
function render_field_by_hook( $data ) {
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_render_field_type_{$type}
|
||||
* @description Render admin form field by hook
|
||||
* @input_vars
|
||||
* [{"var":"$html","type":"string","desc":"Field's HTML"},
|
||||
* {"var":"$data","type":"array","desc":"Field's data"},
|
||||
* {"var":"$form_data","type":"array","desc":"Form data"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_render_field_type_{$type}', 'function_name', 10, 3 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_render_field_type_{$type}', 'my_render_field_type', 10, 3 );
|
||||
* function my_render_field_type( $html, $data, $form_data ) {
|
||||
* // your code here
|
||||
* return $html;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
return apply_filters( 'um_render_field_type_' . $data['type'], '', $data, $this->form_data );
|
||||
}
|
||||
|
||||
|
||||
function render_field_label( $data ) {
|
||||
if ( empty( $data['label'] ) )
|
||||
return false;
|
||||
|
||||
@@ -85,6 +85,26 @@ if ( ! class_exists( 'Admin_Metabox' ) ) {
|
||||
$post_types = UM()->options()->get( 'restricted_access_post_metabox' );
|
||||
if ( ! empty( $post_types[ $current_screen->id ] ) ) {
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_restrict_content_hide_metabox
|
||||
* @description Show/Hide Restrict content metabox
|
||||
* @input_vars
|
||||
* [{"var":"$show","type":"bool","desc":"Show Metabox"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_restrict_content_hide_metabox', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_restrict_content_hide_metabox', 'my_restrict_content_hide_metabox', 10, 1 );
|
||||
* function my_restrict_content_hide_metabox( $show ) {
|
||||
* // your code here
|
||||
* return $show;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$hide_metabox = apply_filters( 'um_restrict_content_hide_metabox', false );
|
||||
|
||||
if ( ! $hide_metabox ) {
|
||||
@@ -195,6 +215,35 @@ if ( ! class_exists( 'Admin_Metabox' ) ) {
|
||||
function um_category_access_fields_create() {
|
||||
$data = array();
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_category_access_settings_fields
|
||||
* @description Settings fields for terms
|
||||
* @input_vars
|
||||
* [{"var":"$access_settings_fields","type":"array","desc":"Settings Fields"},
|
||||
* {"var":"$data","type":"array","desc":"Settings Data"},
|
||||
* {"var":"$screen","type":"string","desc":"Category Screen"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_category_access_settings_fields', 'function_name', 10, 3 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_category_access_settings_fields', 'my_admin_category_access_settings_fields', 10, 3 );
|
||||
* function my_admin_category_access_settings_fields( $access_settings_fields, $data, $screen ) {
|
||||
* // your code here
|
||||
* $access_settings_fields[] = array(
|
||||
* 'id' => 'my-field-key',
|
||||
* 'type' => 'my-field-type',
|
||||
* 'label' => __( 'My field Label', 'ultimate-member' ),
|
||||
* 'description' => __( 'My Field Description', 'ultimate-member' ),
|
||||
* 'value' => ! empty( $data['_um_custom_access_settings'] ) ? $data['_um_custom_access_settings'] : 0,
|
||||
* );
|
||||
* return $access_settings_fields;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$fields = apply_filters( 'um_admin_category_access_settings_fields', array(
|
||||
array(
|
||||
'id' => '_um_custom_access_settings',
|
||||
@@ -312,7 +361,35 @@ if ( ! class_exists( 'Admin_Metabox' ) ) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_category_access_settings_fields
|
||||
* @description Settings fields for terms
|
||||
* @input_vars
|
||||
* [{"var":"$access_settings_fields","type":"array","desc":"Settings Fields"},
|
||||
* {"var":"$data","type":"array","desc":"Settings Data"},
|
||||
* {"var":"$screen","type":"string","desc":"Category Screen"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_category_access_settings_fields', 'function_name', 10, 3 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_category_access_settings_fields', 'my_admin_category_access_settings_fields', 10, 3 );
|
||||
* function my_admin_category_access_settings_fields( $access_settings_fields, $data, $screen ) {
|
||||
* // your code here
|
||||
* $access_settings_fields[] = array(
|
||||
* 'id' => 'my-field-key',
|
||||
* 'type' => 'my-field-type',
|
||||
* 'label' => __( 'My field Label', 'ultimate-member' ),
|
||||
* 'description' => __( 'My Field Description', 'ultimate-member' ),
|
||||
* 'value' => ! empty( $data['_um_custom_access_settings'] ) ? $data['_um_custom_access_settings'] : 0,
|
||||
* );
|
||||
* return $access_settings_fields;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$fields = apply_filters( 'um_admin_category_access_settings_fields', array(
|
||||
array(
|
||||
'id' => '_um_custom_access_settings',
|
||||
@@ -649,6 +726,35 @@ if ( ! class_exists( 'Admin_Metabox' ) ) {
|
||||
)
|
||||
) );
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_role_metaboxes
|
||||
* @description Extend metaboxes at Add/Edit User Role
|
||||
* @input_vars
|
||||
* [{"var":"$roles_metaboxes","type":"array","desc":"Metaboxes at Add/Edit UM Role"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_role_metaboxes', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_role_metaboxes', 'my_admin_role_metaboxes', 10, 1 );
|
||||
* function my_admin_role_metaboxes( $roles_metaboxes ) {
|
||||
* // your code here
|
||||
* $roles_metaboxes[] = array(
|
||||
* 'id' => 'um-admin-form-your-custom',
|
||||
* 'title' => __( 'My Roles Metabox', 'ultimate-member' ),
|
||||
* 'callback' => 'my-metabox-callback',
|
||||
* 'screen' => 'um_role_meta',
|
||||
* 'context' => 'side',
|
||||
* 'priority' => 'default'
|
||||
* );
|
||||
*
|
||||
* return $roles_metaboxes;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$roles_metaboxes = apply_filters( 'um_admin_role_metaboxes', $roles_metaboxes );
|
||||
|
||||
$wp_caps_metabox = false;
|
||||
@@ -959,8 +1065,31 @@ if ( ! class_exists( 'Admin_Metabox' ) ) {
|
||||
|
||||
<?php foreach( UM()->builtin()->validation_types() as $key => $name ) { ?>
|
||||
<?php
|
||||
$continue = apply_filters("um_builtin_validation_types_continue_loop", true, $key, $form_id, $field_args );
|
||||
if( $continue ){ ?>
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_builtin_validation_types_continue_loop
|
||||
* @description Builtin Validation Types
|
||||
* @input_vars
|
||||
* [{"var":"$continue","type":"bool","desc":"Validate?"},
|
||||
* {"var":"$key","type":"string","desc":"Field Key"},
|
||||
* {"var":"$form_id","type":"int","desc":"Form ID"},
|
||||
* {"var":"$field_args","type":"array","desc":"Field Settings"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_builtin_validation_types_continue_loop', 'function_name', 10, 4 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_builtin_validation_types_continue_loop', 'my_builtin_validation_types', 10, 4 );
|
||||
* function my_builtin_validation_types( $continue, $key, $form_id, $field_args ) {
|
||||
* // your code here
|
||||
* return $continue;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$continue = apply_filters( "um_builtin_validation_types_continue_loop", true, $key, $form_id, $field_args );
|
||||
if ( $continue ) { ?>
|
||||
<option value="<?php echo $key; ?>" <?php selected( $key, $this->edit_mode_value ); ?>><?php echo $name; ?></option>
|
||||
<?php } ?>
|
||||
<?php } ?>
|
||||
|
||||
@@ -73,7 +73,7 @@ if ( ! class_exists( 'Admin_Settings' ) ) {
|
||||
|
||||
foreach ( $core_pages as $page_s => $page ) {
|
||||
$have_pages = UM()->query()->wp_pages();
|
||||
$page_id = apply_filters( 'um_core_page_id_filter', 'core_' . $page_s );
|
||||
$page_id = UM()->options()->get_core_page_id( $page_s );
|
||||
|
||||
$page_title = ! empty( $page['title'] ) ? $page['title'] : '';
|
||||
|
||||
@@ -188,6 +188,26 @@ if ( ! class_exists( 'Admin_Settings' ) ) {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_settings_structure
|
||||
* @description Extend UM Settings
|
||||
* @input_vars
|
||||
* [{"var":"$settings","type":"array","desc":"UM Settings"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_settings_structure', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_settings_structure', 'my_settings_structure', 10, 1 );
|
||||
* function my_settings_structure( $settings ) {
|
||||
* // your code here
|
||||
* return $settings;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$this->settings_structure = apply_filters( 'um_settings_structure', array(
|
||||
'' => array(
|
||||
'title' => __( 'General', 'ultimate-member' ),
|
||||
@@ -1101,7 +1121,7 @@ if ( ! class_exists( 'Admin_Settings' ) ) {
|
||||
um_js_redirect( add_query_arg( array( 'page' => 'um_options', 'tab' => $current_tab ), admin_url( 'admin.php' ) ) );
|
||||
}
|
||||
|
||||
echo '<div id="um-settings-wrap" class="wrap"><h2>Ultimate Member - Settings</h2>';
|
||||
echo '<div id="um-settings-wrap" class="wrap"><h2>' . __( 'Ultimate Member - Settings', 'ultimate-member' ) . '</h2>';
|
||||
|
||||
echo $this->generate_tabs_menu() . $this->generate_subtabs_menu( $current_tab );
|
||||
|
||||
@@ -1111,7 +1131,32 @@ if ( ! class_exists( 'Admin_Settings' ) ) {
|
||||
do_action( "um_settings_page_" . $current_tab . "_" . $current_subtab . "_before_section" );
|
||||
|
||||
$section_fields = $this->get_section_fields( $current_tab, $current_subtab );
|
||||
echo apply_filters( 'um_settings_section_' . $current_tab . '_' . $current_subtab . '_content', $this->render_settings_section( $section_fields, $current_tab, $current_subtab ), $section_fields );
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_settings_section_{$current_tab}_{$current_subtab}_content
|
||||
* @description Render settings section
|
||||
* @input_vars
|
||||
* [{"var":"$content","type":"string","desc":"Section content"},
|
||||
* {"var":"$section_fields","type":"array","desc":"Section Fields"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_settings_section_{$current_tab}_{$current_subtab}_content', 'function_name', 10, 2 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_settings_section_{$current_tab}_{$current_subtab}_content', 'my_settings_section', 10, 2 );
|
||||
* function my_settings_section( $content ) {
|
||||
* // your code here
|
||||
* return $content;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
echo apply_filters( 'um_settings_section_' . $current_tab . '_' . $current_subtab . '_content',
|
||||
$this->render_settings_section( $section_fields, $current_tab, $current_subtab ),
|
||||
$section_fields
|
||||
);
|
||||
|
||||
} else { ?>
|
||||
|
||||
@@ -1129,7 +1174,32 @@ if ( ! class_exists( 'Admin_Settings' ) ) {
|
||||
<?php do_action( "um_settings_page_" . $current_tab . "_" . $current_subtab . "_before_section" );
|
||||
|
||||
$section_fields = $this->get_section_fields( $current_tab, $current_subtab );
|
||||
echo apply_filters( 'um_settings_section_' . $current_tab . '_' . $current_subtab . '_content', $this->render_settings_section( $section_fields, $current_tab, $current_subtab ), $section_fields );
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_settings_section_{$current_tab}_{$current_subtab}_content
|
||||
* @description Render settings section
|
||||
* @input_vars
|
||||
* [{"var":"$content","type":"string","desc":"Section content"},
|
||||
* {"var":"$section_fields","type":"array","desc":"Section Fields"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_settings_section_{$current_tab}_{$current_subtab}_content', 'function_name', 10, 2 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_settings_section_{$current_tab}_{$current_subtab}_content', 'my_settings_section', 10, 2 );
|
||||
* function my_settings_section( $content ) {
|
||||
* // your code here
|
||||
* return $content;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
echo apply_filters( 'um_settings_section_' . $current_tab . '_' . $current_subtab . '_content',
|
||||
$this->render_settings_section( $section_fields, $current_tab, $current_subtab ),
|
||||
$section_fields
|
||||
);
|
||||
?>
|
||||
|
||||
<p class="submit">
|
||||
@@ -1180,6 +1250,26 @@ if ( ! class_exists( 'Admin_Settings' ) ) {
|
||||
|
||||
break;
|
||||
default:
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_generate_tabs_menu_{$page}
|
||||
* @description Generate tabs menu
|
||||
* @input_vars
|
||||
* [{"var":"$tabs","type":"array","desc":"UM menu tabs"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_generate_tabs_menu_{$page}', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_generate_tabs_menu_{$page}', 'my_tabs_menu', 10, 1 );
|
||||
* function my_tabs_menu( $tabs ) {
|
||||
* // your code here
|
||||
* return $tabs;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$tabs = apply_filters( 'um_generate_tabs_menu_' . $page, $tabs );
|
||||
break;
|
||||
}
|
||||
@@ -1222,6 +1312,26 @@ if ( ! class_exists( 'Admin_Settings' ) ) {
|
||||
if ( isset( $_POST['um-settings-action'] ) && 'save' == $_POST['um-settings-action'] && ! empty( $_POST['um_options'] ) ) {
|
||||
do_action( "um_settings_before_save" );
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_change_settings_before_save
|
||||
* @description Change settings before save
|
||||
* @input_vars
|
||||
* [{"var":"$settings","type":"array","desc":"UM Settings on save"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_change_settings_before_save', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_change_settings_before_save', 'my_change_settings_before_save', 10, 1 );
|
||||
* function my_change_settings_before_save( $settings ) {
|
||||
* // your code here
|
||||
* return $settings;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$settings = apply_filters( 'um_change_settings_before_save', $_POST['um_options'] );
|
||||
|
||||
foreach ( $settings as $key => $value ) {
|
||||
@@ -1473,6 +1583,27 @@ if ( ! class_exists( 'Admin_Settings' ) ) {
|
||||
|
||||
$in_theme = UM()->mail()->template_in_theme( $email_key );
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_settings_email_section_fields
|
||||
* @description Extend UM Email Settings
|
||||
* @input_vars
|
||||
* [{"var":"$settings","type":"array","desc":"UM Email Settings"},
|
||||
* {"var":"$email_key","type":"string","desc":"Email Key"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_settings_email_section_fields', 'function_name', 10, 2 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_settings_email_section_fields', 'my_admin_settings_email_section', 10, 2 );
|
||||
* function my_admin_settings_email_section( $settings, $email_key ) {
|
||||
* // your code here
|
||||
* return $settings;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$section_fields = apply_filters( 'um_admin_settings_email_section_fields', array(
|
||||
array(
|
||||
'id' => 'um_email_template',
|
||||
|
||||
@@ -56,6 +56,29 @@ if ( ! class_exists( 'Admin_Users' ) ) {
|
||||
*/
|
||||
function get_bulk_admin_actions() {
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_bulk_user_actions_hook
|
||||
* @description Admin Users List Table bulk actions
|
||||
* @input_vars
|
||||
* [{"var":"$actions","type":"array","desc":"User List Table bulk actions"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_bulk_user_actions_hook', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_bulk_user_actions_hook', 'my_admin_bulk_user_actions', 10, 1 );
|
||||
* function my_admin_bulk_user_actions( $actions ) {
|
||||
* // your code here
|
||||
* $actions['my-custom-bulk'] = array(
|
||||
* 'label' => 'My Custom Bulk Action'
|
||||
* );
|
||||
* return $actions;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$actions = apply_filters( 'um_admin_bulk_user_actions_hook', array(
|
||||
'um_approve_membership' => array(
|
||||
'label' => __( 'Approve Membership', 'ultimate-member' )
|
||||
@@ -101,6 +124,27 @@ if ( ! class_exists( 'Admin_Users' ) ) {
|
||||
if ( ! empty( $submitted ) )
|
||||
$actions['view_info'] = '<a href="#" data-modal="UM_preview_registration" data-modal-size="smaller" data-dynamic-content="um_admin_review_registration" data-arg1="' . $user_id . '" data-arg2="edit_registration">' . __( 'Info', 'ultimate-member' ) . '</a>';
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_user_row_actions
|
||||
* @description Admin views array
|
||||
* @input_vars
|
||||
* [{"var":"$actions","type":"array","desc":"User List Table actions"},
|
||||
* {"var":"$user_id","type":"int","desc":"User ID"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_user_row_actions', 'function_name', 10, 2 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_user_row_actions', 'my_admin_user_row_actions', 10, 2 );
|
||||
* function my_admin_user_row_actions( $actions, $user_id ) {
|
||||
* // your code here
|
||||
* return $actions;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$actions = apply_filters( 'um_admin_user_row_actions', $actions, $user_id );
|
||||
|
||||
return $actions;
|
||||
@@ -202,6 +246,26 @@ if ( ! class_exists( 'Admin_Users' ) ) {
|
||||
$views[$k] = '<a href="' . admin_url( 'users.php' ) . '?status=' . $k . '" ' . $current . '>'. $v . ' <span class="count">('.UM()->query()->count_users_by_status( $k ).')</span></a>';
|
||||
}
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_admin_views_users
|
||||
* @description Admin views array
|
||||
* @input_vars
|
||||
* [{"var":"$views","type":"array","desc":"User Views"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_admin_views_users', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_admin_views_users', 'my_admin_views_users', 10, 1 );
|
||||
* function my_admin_views_users( $views ) {
|
||||
* // your code here
|
||||
* return $views;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$views = apply_filters( 'um_admin_views_users', $views );
|
||||
|
||||
// remove all filters
|
||||
|
||||
@@ -172,6 +172,27 @@ $ListTable = new UM_Emails_List_Table( array(
|
||||
$per_page = 20;
|
||||
$paged = $ListTable->get_pagenum();
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_email_templates_columns
|
||||
* @description Email Notifications List Table columns
|
||||
* @input_vars
|
||||
* [{"var":"$columns","type":"array","desc":"Columns"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_email_templates_columns', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_email_templates_columns', 'my_email_templates_columns', 10, 1 );
|
||||
* function my_email_templates_columns( $columns ) {
|
||||
* // your code here
|
||||
* $columns['my-custom-column'] = 'My Custom Column';
|
||||
* return $columns;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$columns = apply_filters( 'um_email_templates_columns', array(
|
||||
'email' => __( 'Email', 'ultimate-member' ),
|
||||
'recipients' => __( 'Recipient(s)', 'ultimate-member' ),
|
||||
|
||||
@@ -41,11 +41,36 @@ if ( ! defined( 'ABSPATH' ) ) exit;
|
||||
*** @Some fields may require extra fields before saving
|
||||
***/
|
||||
add_filter('um_admin_pre_save_fields_hook', 'um_admin_pre_save_fields_hook', 1 );
|
||||
function um_admin_pre_save_fields_hook( $array ){
|
||||
function um_admin_pre_save_fields_hook( $array ) {
|
||||
extract( $array );
|
||||
|
||||
$fields_without_metakey = array('block','shortcode','spacing','divider','group');
|
||||
$fields_without_metakey = apply_filters('um_fields_without_metakey', $fields_without_metakey );
|
||||
/**
|
||||
* UM hook
|
||||
*
|
||||
* @type filter
|
||||
* @title um_fields_without_metakey
|
||||
* @description Field Types without meta key
|
||||
* @input_vars
|
||||
* [{"var":"$types","type":"array","desc":"Field Types"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_fields_without_metakey', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_fields_without_metakey', 'my_fields_without_metakey', 10, 1 );
|
||||
* function my_fields_without_metakey( $types ) {
|
||||
* // your code here
|
||||
* return $types;
|
||||
* }
|
||||
* ?>
|
||||
*/
|
||||
$fields_without_metakey = apply_filters( 'um_fields_without_metakey', array(
|
||||
'block',
|
||||
'shortcode',
|
||||
'spacing',
|
||||
'divider',
|
||||
'group'
|
||||
) );
|
||||
|
||||
$fields = UM()->query()->get_attr('custom_fields', $form_id);
|
||||
$count = 1;
|
||||
|
||||
Reference in New Issue
Block a user