From 24e79c37af2a1c7d74a58662a189443a5cf632c9 Mon Sep 17 00:00:00 2001 From: Mykyta Synelnikov Date: Wed, 9 Aug 2023 16:24:22 +0300 Subject: [PATCH] - wpcs; - hookdocs for `um_setup_predefined_page_content`, `um_core_pages`; --- includes/class-config.php | 46 ++++++++++++++++---------------- includes/core/class-setup.php | 49 +++++++++++++++++++++++++---------- 2 files changed, 57 insertions(+), 38 deletions(-) diff --git a/includes/class-config.php b/includes/class-config.php index d7ce85bb..5049a341 100644 --- a/includes/class-config.php +++ b/includes/class-config.php @@ -95,38 +95,36 @@ if ( ! class_exists( 'um\Config' ) ) { 'members', ); - /** - * UM hook + * Filters Ultimate Member predefined pages. * - * @type filter - * @title um_core_pages - * @description Extend UM core pages - * @input_vars - * [{"var":"$pages","type":"array","desc":"UM core pages"}] - * @change_log - * ["Since: 2.0"] - * @usage - * - * @example - * Extend UM core pages. * function my_core_pages( $pages ) { * // your code here * $pages['my_page_key'] = array( 'title' => __( 'My Page Title', 'my-translate-key' ) ); * return $pages; * } - * ?> + * add_filter( 'um_core_pages', 'my_core_pages' ); */ - $this->core_pages = apply_filters( 'um_core_pages', array( - 'user' => array( 'title' => __( 'User', 'ultimate-member' ) ), - 'login' => array( 'title' => __( 'Login', 'ultimate-member' ) ), - 'register' => array( 'title' => __( 'Register', 'ultimate-member' ) ), - 'members' => array( 'title' => __( 'Members', 'ultimate-member' ) ), - 'logout' => array( 'title' => __( 'Logout', 'ultimate-member' ) ), - 'account' => array( 'title' => __( 'Account', 'ultimate-member' ) ), - 'password-reset' => array( 'title' => __( 'Password Reset', 'ultimate-member' ) ), - ) ); + $this->core_pages = apply_filters( + 'um_core_pages', + array( + 'user' => array( 'title' => __( 'User', 'ultimate-member' ) ), + 'login' => array( 'title' => __( 'Login', 'ultimate-member' ) ), + 'register' => array( 'title' => __( 'Register', 'ultimate-member' ) ), + 'members' => array( 'title' => __( 'Members', 'ultimate-member' ) ), + 'logout' => array( 'title' => __( 'Logout', 'ultimate-member' ) ), + 'account' => array( 'title' => __( 'Account', 'ultimate-member' ) ), + 'password-reset' => array( 'title' => __( 'Password Reset', 'ultimate-member' ) ), + ) + ); $this->core_directory_meta['members'] = array( '_um_core' => 'members', diff --git a/includes/core/class-setup.php b/includes/core/class-setup.php index 3981cff6..a1eec114 100644 --- a/includes/core/class-setup.php +++ b/includes/core/class-setup.php @@ -177,12 +177,12 @@ KEY meta_value_indx (um_value(191)) /** * Install Pre-defined pages with shortcodes */ - function install_default_pages() { + public function install_default_pages() { if ( ! current_user_can( 'manage_options' ) ) { return; } - $core_forms = get_option( 'um_core_forms', array() ); + $core_forms = get_option( 'um_core_forms', array() ); $core_directories = get_option( 'um_core_directories', array() ); $setup_shortcodes = array_merge( $core_forms, $core_directories ); @@ -198,28 +198,49 @@ KEY meta_value_indx (um_value(191)) } //If page does not exist - create it - if ( $slug == 'logout' ) { + if ( 'logout' === $slug ) { $content = ''; - } elseif ( $slug == 'account' ) { + } elseif ( 'account' === $slug ) { $content = '[ultimatemember_account]'; - } elseif ( $slug == 'password-reset' ) { + } elseif ( 'password-reset' === $slug ) { $content = '[ultimatemember_password]'; - } elseif ( $slug == 'user' ) { + } elseif ( 'user' === $slug ) { $content = '[ultimatemember form_id="' . $setup_shortcodes['profile'] . '"]'; } else { $content = '[ultimatemember form_id="' . $setup_shortcodes[ $slug ] . '"]'; } + /** + * Filters Ultimate Member predefined pages content when set up the predefined page. + * + * @param {string} $content Predefined page content. + * @param {string} $slug Predefined page slug (key). + * + * @return {string} Predefined page content. + * + * @since 2.1.0 + * @hook um_setup_predefined_page_content + * + * @example Set Ultimate Member predefined pages content with key = 'my_page_key'. + * function my_um_setup_predefined_page_content( $content, $slug ) { + * // your code here + * if ( 'my_page_key' === $slug ) { + * $content = __( 'My Page content', 'my-translate-key' ); + * } + * return $pages; + * } + * add_filter( 'um_setup_predefined_page_content', 'my_um_setup_predefined_page_content' ); + */ $content = apply_filters( 'um_setup_predefined_page_content', $content, $slug ); $user_page = array( - 'post_title' => $array['title'], - 'post_content' => $content, - 'post_name' => $slug, - 'post_type' => 'page', - 'post_status' => 'publish', - 'post_author' => get_current_user_id(), - 'comment_status' => 'closed' + 'post_title' => $array['title'], + 'post_content' => $content, + 'post_name' => $slug, + 'post_type' => 'page', + 'post_status' => 'publish', + 'post_author' => get_current_user_id(), + 'comment_status' => 'closed', ); $post_id = wp_insert_post( $user_page ); @@ -231,7 +252,7 @@ KEY meta_value_indx (um_value(191)) $options = get_option( 'um_options', array() ); foreach ( $core_pages as $slug => $page_id ) { - $key = UM()->options()->get_core_page_id( $slug ); + $key = UM()->options()->get_core_page_id( $slug ); $options[ $key ] = $page_id; }