diff -r 3d4e9c994f10 -r a86126ab1dd4 wp/wp-admin/options-privacy.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wp/wp-admin/options-privacy.php Tue Dec 15 13:49:49 2020 +0100 @@ -0,0 +1,255 @@ + Menus. */ + __( 'Privacy Policy page setting updated successfully. Remember to update your menus!' ), + esc_url( add_query_arg( 'autofocus[panel]', 'nav_menus', admin_url( 'customize.php' ) ) ) + ); + } + } + + add_settings_error( 'page_for_privacy_policy', 'page_for_privacy_policy', $privacy_page_updated_message, 'success' ); + } elseif ( 'create-privacy-page' === $action ) { + + if ( ! class_exists( 'WP_Privacy_Policy_Content' ) ) { + require_once ABSPATH . 'wp-admin/includes/class-wp-privacy-policy-content.php'; + } + + $privacy_policy_page_content = WP_Privacy_Policy_Content::get_default_content(); + $privacy_policy_page_id = wp_insert_post( + array( + 'post_title' => __( 'Privacy Policy' ), + 'post_status' => 'draft', + 'post_type' => 'page', + 'post_content' => $privacy_policy_page_content, + ), + true + ); + + if ( is_wp_error( $privacy_policy_page_id ) ) { + add_settings_error( + 'page_for_privacy_policy', + 'page_for_privacy_policy', + __( 'Unable to create a Privacy Policy page.' ), + 'error' + ); + } else { + update_option( 'wp_page_for_privacy_policy', $privacy_policy_page_id ); + + wp_redirect( admin_url( 'post.php?post=' . $privacy_policy_page_id . '&action=edit' ) ); + exit; + } + } +} + +// If a Privacy Policy page ID is available, make sure the page actually exists. If not, display an error. +$privacy_policy_page_exists = false; +$privacy_policy_page_id = (int) get_option( 'wp_page_for_privacy_policy' ); + +if ( ! empty( $privacy_policy_page_id ) ) { + + $privacy_policy_page = get_post( $privacy_policy_page_id ); + + if ( ! $privacy_policy_page instanceof WP_Post ) { + add_settings_error( + 'page_for_privacy_policy', + 'page_for_privacy_policy', + __( 'The currently selected Privacy Policy page does not exist. Please create or select a new page.' ), + 'error' + ); + } else { + if ( 'trash' === $privacy_policy_page->post_status ) { + add_settings_error( + 'page_for_privacy_policy', + 'page_for_privacy_policy', + sprintf( + /* translators: %s: URL to Pages Trash. */ + __( 'The currently selected Privacy Policy page is in the Trash. Please create or select a new Privacy Policy page or restore the current page.' ), + 'edit.php?post_status=trash&post_type=page' + ), + 'error' + ); + } else { + $privacy_policy_page_exists = true; + } + } +} + +$title = __( 'Privacy Settings' ); +$parent_file = 'options-general.php'; + +require_once ABSPATH . 'wp-admin/admin-header.php'; + +?> +
+

+

+

+ + +

+

+ + +

+

+ + +

+ $privacy_policy_page_id, + 'action' => 'edit', + ), + admin_url( 'post.php' ) + ); + + $view_href = get_permalink( $privacy_policy_page_id ); + ?> +

+ Edit or view your Privacy Policy page content.' ), + esc_url( $edit_href ), + esc_url( $view_href ) + ); + } else { + printf( + /* translators: 1: URL to edit Privacy Policy page, 2: URL to preview Privacy Policy page. */ + __( 'Edit or preview your Privacy Policy page content.' ), + esc_url( $edit_href ), + esc_url( $view_href ) + ); + } + ?> +

+ +

+ Check out our guide%3$s for recommendations on what content to include, along with policies suggested by your plugins and theme.' ), + esc_url( admin_url( 'privacy-policy-guide.php' ) ), + '', + '' + ); + ?> +

+ +
+ + + + + + +
+