WP_Privacy_Policy_Content::notice

Advertisement

Summery Summery

Add a notice with a link to the guide when editing the privacy policy page.

Syntax Syntax

WP_Privacy_Policy_Content::notice( WP_Post|null $post = null )

Parameters Parameters

$post

(Optional) The currently edited post.

Default value: null

Source Source

File: wp-admin/includes/class-wp-privacy-policy-content.php

	 * @param WP_Post|null $post The currently edited post. Default null.
	 */
	public static function notice( $post = null ) {
		if ( is_null( $post ) ) {
			global $post;
		} else {
			$post = get_post( $post );
		}

		if ( ! ( $post instanceof WP_Post ) ) {
			return;
		}

		if ( ! current_user_can( 'manage_privacy_options' ) ) {
			return;
		}

		$current_screen = get_current_screen();
		$policy_page_id = (int) get_option( 'wp_page_for_privacy_policy' );

		if ( 'post' !== $current_screen->base || $policy_page_id !== $post->ID ) {
			return;
		}

		$message = __( 'Need help putting together your new Privacy Policy page? Check out our guide for recommendations on what content to include, along with policies suggested by your plugins and theme.' );
		$url     = esc_url( admin_url( 'privacy-policy-guide.php' ) );
		$label   = __( 'View Privacy Policy Guide.' );

		if ( get_current_screen()->is_block_editor() ) {
			wp_enqueue_script( 'wp-notices' );
			$action = array(
				'url'   => $url,
				'label' => $label,
			);
			wp_add_inline_script(
				'wp-notices',
				sprintf(
					'wp.data.dispatch( "core/notices" ).createWarningNotice( "%s", { actions: [ %s ], isDismissible: false } )',
					$message,
					wp_json_encode( $action )
				),
				'after'
			);
		} else {
			?>
			<div class="notice notice-warning inline wp-pp-notice">
				<p>
				<?php
				echo $message;
				printf(
					' <a href="%s" target="_blank">%s <span class="screen-reader-text">%s</span></a>',
					$url,
					$label,
					/* translators: Accessibility text. */
					__( '(opens in a new tab)' )
				);
				?>
				</p>
			</div>
			<?php

Advertisement

Changelog Changelog

Changelog
Version Description
5.0.0 The $post parameter was made optional.
4.9.6 Introduced.

Advertisement

Leave a Reply