wp_send_user_request() – Send a confirmation request email to confirm an action.

You appear to be a bot. Output may be restricted

Description

Send a confirmation request email to confirm an action.

If the request is not already pending, it will be updated.

Usage

$true|WP_Error = wp_send_user_request( $request_id );

Parameters

$request_id
( string ) required – ID of the request created via wp_create_user_request().

Returns

true|WP_Error True on success, WP_Error on failure.

Source

File name: wordpress/wp-includes/user.php


Lines:

1 to 100 of 147
function wp_send_user_request( $request_id ) {
  $request_id = absint( $request_id );
  $request    = wp_get_user_request( $request_id );

  if ( ! $request ) {
    return new WP_Error( 'invalid_request', __( 'Invalid personal data request.' ) );
  }

  // Localize message content for user; fallback to site default for visitors.
  if ( ! empty( $request->user_id ) ) {
    $locale = get_user_locale( $request->user_id );
  } else {
    $locale = get_locale();
  }

  $switched_locale = switch_to_locale( $locale );

  $email_data = array(
    'request'     => $request,
    'email'       => $request->email,
    'description' => wp_user_request_action_description( $request->action_name ),
    'confirm_url' => add_query_arg(
      array(
        'action'      => 'confirmaction',
        'request_id'  => $request_id,
        'confirm_key' => wp_generate_user_request_key( $request_id ),
      ),
      wp_login_url()
    ),
    'sitename'    => wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES ),
    'siteurl'     => home_url(),
  );

  /* translators: Confirm privacy data request notification email subject. 1: Site title, 2: Name of the action. */
  $subject = sprintf( __( '[%1$s] Confirm Action: %2$s' ), $email_data['sitename'], $email_data['description'] );

  
/**
 * Filters the subject of the email sent when an account action is attempted.
 *
 * @since 4.9.6
 *
 * @param string $subject    The email subject.
 * @param string $sitename   The name of the site.
 * @param array  $email_data {
 *     Data relating to the account action email.
 *
 *     @type WP_User_Request $request     User request object.
 *     @type string          $email       The email address this is being sent to.
 *     @type string          $description Description of the action being performed so the user knows what the email is for.
 *     @type string          $confirm_url The link to click on to confirm the account action.
 *     @type string          $sitename    The site name sending the mail.
 *     @type string          $siteurl     The site URL sending the mail.
 * }
 */
  $subject = apply_filters( 'user_request_action_email_subject', $subject, $email_data['sitename'], $email_data );

  /* translators: Do not translate DESCRIPTION, CONFIRM_URL, SITENAME, SITEURL: those are placeholders. */
  $content = __(
    'Howdy,

A request has been made to perform the following action on your account:

     ###DESCRIPTION###

To confirm this, please click on the following link:
###CONFIRM_URL###

You can safely ignore and delete this email if you do not want to
take this action.

Regards,
All at ###SITENAME###
###SITEURL###'
  );

  
/**
 * Filters the text of the email sent when an account action is attempted.
 *
 * The following strings have a special meaning and will get replaced dynamically:
 *
 * ###DESCRIPTION### Description of the action being performed so the user knows what the email is for.
 * ###CONFIRM_URL### The link to click on to confirm the account action.
 * ###SITENAME###    The name of the site.
 * ###SITEURL###     The URL to the site.
 *
 * @since 4.9.6
 *
 * @param string $content Text in the email.
 * @param array  $email_data {
 *     Data relating to the account action email.
 *
 *     @type WP_User_Request $request     User request object.
 *     @type string          $email       The email address this is being sent to.
 *     @type string          $description Description of the action being performed so the user knows what the email is for.
 *     @type string          $confirm_url The link to click on to confirm the account action.
 *     @type string          $sitename    The site name sending the mail.
 *     @type string          $siteurl     The site URL sending the mail.
 * }
 */

 View on GitHub View on Trac