diff --git a/wp-includes/link-template.php b/wp-includes/link-template.php index 9db1065c77..815c539a4a 100644 --- a/wp-includes/link-template.php +++ b/wp-includes/link-template.php @@ -4282,10 +4282,74 @@ function get_parent_theme_file_path( $file = '' ) { * @return string The URL to the privacy policy page. Empty string if it doesn't exist. */ function get_privacy_policy_url() { + $url = ''; $policy_page_id = (int) get_option( 'wp_page_for_privacy_policy' ); if ( ! empty( $policy_page_id ) && get_post_status( $policy_page_id ) === 'publish' ) { - return get_permalink( $policy_page_id ); + $url = (string) get_permalink( $policy_page_id ); + } + + /** + * Filters the URL of the privacy policy page. + * + * @since 4.9.6 + * + * @param string $url The URL to the privacy policy page. Empty string + * if it doesn't exist. + * @param int $policy_page_id The ID of privacy policy page. + */ + return apply_filters( 'privacy_policy_url', $url, $policy_page_id ); +} + +/** + * Displays the privacy policy link with formatting, when applicable. + * + * @since 4.9.6 + * + * @param string $before Optional. Display before privacy policy link. Default empty. + * @param string $after Optional. Display after privacy policy link. Default empty. + */ +function the_privacy_policy_link( $before = '', $after = '' ) { + echo get_the_privacy_policy_link( $before, $after ); +} + +/** + * Returns the privacy policy link with formatting, when applicable. + * + * @since 4.9.6 + * + * @param string $before Optional. Display before privacy policy link. Default empty. + * @param string $after Optional. Display after privacy policy link. Default empty. + * + * @return string Markup for the link and surrounding elements. Empty string if it + * doesn't exist. + */ +function get_the_privacy_policy_link( $before = '', $after = '' ) { + $link = ''; + $privacy_policy_url = get_privacy_policy_url(); + + if ( $privacy_policy_url ) { + $link = sprintf( + '%s', + esc_url( $privacy_policy_url ), + __( 'Privacy Policy' ) + ); + } + + /** + * Filters the privacy policy link. + * + * @since 4.9.6 + * + * @param string $link The privacy policy link. Empty string if it + * doesn't exist. + * @param string $privacy_policy_url The URL of the privacy policy. Empty string + * if it doesn't exist. + */ + $link = apply_filters( 'the_privacy_policy_link', $link, $privacy_policy_url ); + + if ( $link ) { + return $before . $link . $after; } return ''; diff --git a/wp-includes/version.php b/wp-includes/version.php index 55b869b911..68be7535e7 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -4,7 +4,7 @@ * * @global string $wp_version */ -$wp_version = '5.0-alpha-43001'; +$wp_version = '5.0-alpha-43002'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.