Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../public_h.../wp-inclu...
File: user.php
*/
[3500] Fix | Delete
function wp_send_new_user_notifications( $user_id, $notify = 'both' ) {
[3501] Fix | Delete
wp_new_user_notification( $user_id, null, $notify );
[3502] Fix | Delete
}
[3503] Fix | Delete
[3504] Fix | Delete
/**
[3505] Fix | Delete
* Retrieves the current session token from the logged_in cookie.
[3506] Fix | Delete
*
[3507] Fix | Delete
* @since 4.0.0
[3508] Fix | Delete
*
[3509] Fix | Delete
* @return string Token.
[3510] Fix | Delete
*/
[3511] Fix | Delete
function wp_get_session_token() {
[3512] Fix | Delete
$cookie = wp_parse_auth_cookie( '', 'logged_in' );
[3513] Fix | Delete
return ! empty( $cookie['token'] ) ? $cookie['token'] : '';
[3514] Fix | Delete
}
[3515] Fix | Delete
[3516] Fix | Delete
/**
[3517] Fix | Delete
* Retrieves a list of sessions for the current user.
[3518] Fix | Delete
*
[3519] Fix | Delete
* @since 4.0.0
[3520] Fix | Delete
*
[3521] Fix | Delete
* @return array Array of sessions.
[3522] Fix | Delete
*/
[3523] Fix | Delete
function wp_get_all_sessions() {
[3524] Fix | Delete
$manager = WP_Session_Tokens::get_instance( get_current_user_id() );
[3525] Fix | Delete
return $manager->get_all();
[3526] Fix | Delete
}
[3527] Fix | Delete
[3528] Fix | Delete
/**
[3529] Fix | Delete
* Removes the current session token from the database.
[3530] Fix | Delete
*
[3531] Fix | Delete
* @since 4.0.0
[3532] Fix | Delete
*/
[3533] Fix | Delete
function wp_destroy_current_session() {
[3534] Fix | Delete
$token = wp_get_session_token();
[3535] Fix | Delete
if ( $token ) {
[3536] Fix | Delete
$manager = WP_Session_Tokens::get_instance( get_current_user_id() );
[3537] Fix | Delete
$manager->destroy( $token );
[3538] Fix | Delete
}
[3539] Fix | Delete
}
[3540] Fix | Delete
[3541] Fix | Delete
/**
[3542] Fix | Delete
* Removes all but the current session token for the current user for the database.
[3543] Fix | Delete
*
[3544] Fix | Delete
* @since 4.0.0
[3545] Fix | Delete
*/
[3546] Fix | Delete
function wp_destroy_other_sessions() {
[3547] Fix | Delete
$token = wp_get_session_token();
[3548] Fix | Delete
if ( $token ) {
[3549] Fix | Delete
$manager = WP_Session_Tokens::get_instance( get_current_user_id() );
[3550] Fix | Delete
$manager->destroy_others( $token );
[3551] Fix | Delete
}
[3552] Fix | Delete
}
[3553] Fix | Delete
[3554] Fix | Delete
/**
[3555] Fix | Delete
* Removes all session tokens for the current user from the database.
[3556] Fix | Delete
*
[3557] Fix | Delete
* @since 4.0.0
[3558] Fix | Delete
*/
[3559] Fix | Delete
function wp_destroy_all_sessions() {
[3560] Fix | Delete
$manager = WP_Session_Tokens::get_instance( get_current_user_id() );
[3561] Fix | Delete
$manager->destroy_all();
[3562] Fix | Delete
}
[3563] Fix | Delete
[3564] Fix | Delete
/**
[3565] Fix | Delete
* Gets the user IDs of all users with no role on this site.
[3566] Fix | Delete
*
[3567] Fix | Delete
* @since 4.4.0
[3568] Fix | Delete
* @since 4.9.0 The `$site_id` parameter was added to support multisite.
[3569] Fix | Delete
*
[3570] Fix | Delete
* @global wpdb $wpdb WordPress database abstraction object.
[3571] Fix | Delete
*
[3572] Fix | Delete
* @param int|null $site_id Optional. The site ID to get users with no role for. Defaults to the current site.
[3573] Fix | Delete
* @return string[] Array of user IDs as strings.
[3574] Fix | Delete
*/
[3575] Fix | Delete
function wp_get_users_with_no_role( $site_id = null ) {
[3576] Fix | Delete
global $wpdb;
[3577] Fix | Delete
[3578] Fix | Delete
if ( ! $site_id ) {
[3579] Fix | Delete
$site_id = get_current_blog_id();
[3580] Fix | Delete
}
[3581] Fix | Delete
[3582] Fix | Delete
$prefix = $wpdb->get_blog_prefix( $site_id );
[3583] Fix | Delete
[3584] Fix | Delete
if ( is_multisite() && get_current_blog_id() !== $site_id ) {
[3585] Fix | Delete
switch_to_blog( $site_id );
[3586] Fix | Delete
$role_names = wp_roles()->get_names();
[3587] Fix | Delete
restore_current_blog();
[3588] Fix | Delete
} else {
[3589] Fix | Delete
$role_names = wp_roles()->get_names();
[3590] Fix | Delete
}
[3591] Fix | Delete
[3592] Fix | Delete
$regex = implode( '|', array_keys( $role_names ) );
[3593] Fix | Delete
$regex = preg_replace( '/[^a-zA-Z_\|-]/', '', $regex );
[3594] Fix | Delete
$users = $wpdb->get_col(
[3595] Fix | Delete
$wpdb->prepare(
[3596] Fix | Delete
"SELECT user_id
[3597] Fix | Delete
FROM $wpdb->usermeta
[3598] Fix | Delete
WHERE meta_key = '{$prefix}capabilities'
[3599] Fix | Delete
AND meta_value NOT REGEXP %s",
[3600] Fix | Delete
$regex
[3601] Fix | Delete
)
[3602] Fix | Delete
);
[3603] Fix | Delete
[3604] Fix | Delete
return $users;
[3605] Fix | Delete
}
[3606] Fix | Delete
[3607] Fix | Delete
/**
[3608] Fix | Delete
* Retrieves the current user object.
[3609] Fix | Delete
*
[3610] Fix | Delete
* Will set the current user, if the current user is not set. The current user
[3611] Fix | Delete
* will be set to the logged-in person. If no user is logged-in, then it will
[3612] Fix | Delete
* set the current user to 0, which is invalid and won't have any permissions.
[3613] Fix | Delete
*
[3614] Fix | Delete
* This function is used by the pluggable functions wp_get_current_user() and
[3615] Fix | Delete
* get_currentuserinfo(), the latter of which is deprecated but used for backward
[3616] Fix | Delete
* compatibility.
[3617] Fix | Delete
*
[3618] Fix | Delete
* @since 4.5.0
[3619] Fix | Delete
* @access private
[3620] Fix | Delete
*
[3621] Fix | Delete
* @see wp_get_current_user()
[3622] Fix | Delete
* @global WP_User $current_user Checks if the current user is set.
[3623] Fix | Delete
*
[3624] Fix | Delete
* @return WP_User Current WP_User instance.
[3625] Fix | Delete
*/
[3626] Fix | Delete
function _wp_get_current_user() {
[3627] Fix | Delete
global $current_user;
[3628] Fix | Delete
[3629] Fix | Delete
if ( ! empty( $current_user ) ) {
[3630] Fix | Delete
if ( $current_user instanceof WP_User ) {
[3631] Fix | Delete
return $current_user;
[3632] Fix | Delete
}
[3633] Fix | Delete
[3634] Fix | Delete
// Upgrade stdClass to WP_User.
[3635] Fix | Delete
if ( is_object( $current_user ) && isset( $current_user->ID ) ) {
[3636] Fix | Delete
$cur_id = $current_user->ID;
[3637] Fix | Delete
$current_user = null;
[3638] Fix | Delete
wp_set_current_user( $cur_id );
[3639] Fix | Delete
return $current_user;
[3640] Fix | Delete
}
[3641] Fix | Delete
[3642] Fix | Delete
// $current_user has a junk value. Force to WP_User with ID 0.
[3643] Fix | Delete
$current_user = null;
[3644] Fix | Delete
wp_set_current_user( 0 );
[3645] Fix | Delete
return $current_user;
[3646] Fix | Delete
}
[3647] Fix | Delete
[3648] Fix | Delete
if ( defined( 'XMLRPC_REQUEST' ) && XMLRPC_REQUEST ) {
[3649] Fix | Delete
wp_set_current_user( 0 );
[3650] Fix | Delete
return $current_user;
[3651] Fix | Delete
}
[3652] Fix | Delete
[3653] Fix | Delete
/**
[3654] Fix | Delete
* Filters the current user.
[3655] Fix | Delete
*
[3656] Fix | Delete
* The default filters use this to determine the current user from the
[3657] Fix | Delete
* request's cookies, if available.
[3658] Fix | Delete
*
[3659] Fix | Delete
* Returning a value of false will effectively short-circuit setting
[3660] Fix | Delete
* the current user.
[3661] Fix | Delete
*
[3662] Fix | Delete
* @since 3.9.0
[3663] Fix | Delete
*
[3664] Fix | Delete
* @param int|false $user_id User ID if one has been determined, false otherwise.
[3665] Fix | Delete
*/
[3666] Fix | Delete
$user_id = apply_filters( 'determine_current_user', false );
[3667] Fix | Delete
if ( ! $user_id ) {
[3668] Fix | Delete
wp_set_current_user( 0 );
[3669] Fix | Delete
return $current_user;
[3670] Fix | Delete
}
[3671] Fix | Delete
[3672] Fix | Delete
wp_set_current_user( $user_id );
[3673] Fix | Delete
[3674] Fix | Delete
return $current_user;
[3675] Fix | Delete
}
[3676] Fix | Delete
[3677] Fix | Delete
/**
[3678] Fix | Delete
* Sends a confirmation request email when a change of user email address is attempted.
[3679] Fix | Delete
*
[3680] Fix | Delete
* @since 3.0.0
[3681] Fix | Delete
* @since 4.9.0 This function was moved from wp-admin/includes/ms.php so it's no longer Multisite specific.
[3682] Fix | Delete
*
[3683] Fix | Delete
* @global WP_Error $errors WP_Error object.
[3684] Fix | Delete
*/
[3685] Fix | Delete
function send_confirmation_on_profile_email() {
[3686] Fix | Delete
global $errors;
[3687] Fix | Delete
[3688] Fix | Delete
$current_user = wp_get_current_user();
[3689] Fix | Delete
if ( ! is_object( $errors ) ) {
[3690] Fix | Delete
$errors = new WP_Error();
[3691] Fix | Delete
}
[3692] Fix | Delete
[3693] Fix | Delete
if ( $current_user->ID !== (int) $_POST['user_id'] ) {
[3694] Fix | Delete
return false;
[3695] Fix | Delete
}
[3696] Fix | Delete
[3697] Fix | Delete
if ( $current_user->user_email !== $_POST['email'] ) {
[3698] Fix | Delete
if ( ! is_email( $_POST['email'] ) ) {
[3699] Fix | Delete
$errors->add(
[3700] Fix | Delete
'user_email',
[3701] Fix | Delete
__( '<strong>Error:</strong> The email address is not correct.' ),
[3702] Fix | Delete
array(
[3703] Fix | Delete
'form-field' => 'email',
[3704] Fix | Delete
)
[3705] Fix | Delete
);
[3706] Fix | Delete
[3707] Fix | Delete
return;
[3708] Fix | Delete
}
[3709] Fix | Delete
[3710] Fix | Delete
if ( email_exists( $_POST['email'] ) ) {
[3711] Fix | Delete
$errors->add(
[3712] Fix | Delete
'user_email',
[3713] Fix | Delete
__( '<strong>Error:</strong> The email address is already used.' ),
[3714] Fix | Delete
array(
[3715] Fix | Delete
'form-field' => 'email',
[3716] Fix | Delete
)
[3717] Fix | Delete
);
[3718] Fix | Delete
delete_user_meta( $current_user->ID, '_new_email' );
[3719] Fix | Delete
[3720] Fix | Delete
return;
[3721] Fix | Delete
}
[3722] Fix | Delete
[3723] Fix | Delete
$hash = md5( $_POST['email'] . time() . wp_rand() );
[3724] Fix | Delete
$new_user_email = array(
[3725] Fix | Delete
'hash' => $hash,
[3726] Fix | Delete
'newemail' => $_POST['email'],
[3727] Fix | Delete
);
[3728] Fix | Delete
update_user_meta( $current_user->ID, '_new_email', $new_user_email );
[3729] Fix | Delete
[3730] Fix | Delete
$sitename = wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES );
[3731] Fix | Delete
[3732] Fix | Delete
/* translators: Do not translate USERNAME, ADMIN_URL, EMAIL, SITENAME, SITEURL: those are placeholders. */
[3733] Fix | Delete
$email_text = __(
[3734] Fix | Delete
'Howdy ###USERNAME###,
[3735] Fix | Delete
[3736] Fix | Delete
You recently requested to have the email address on your account changed.
[3737] Fix | Delete
[3738] Fix | Delete
If this is correct, please click on the following link to change it:
[3739] Fix | Delete
###ADMIN_URL###
[3740] Fix | Delete
[3741] Fix | Delete
You can safely ignore and delete this email if you do not want to
[3742] Fix | Delete
take this action.
[3743] Fix | Delete
[3744] Fix | Delete
This email has been sent to ###EMAIL###
[3745] Fix | Delete
[3746] Fix | Delete
Regards,
[3747] Fix | Delete
All at ###SITENAME###
[3748] Fix | Delete
###SITEURL###'
[3749] Fix | Delete
);
[3750] Fix | Delete
[3751] Fix | Delete
/**
[3752] Fix | Delete
* Filters the text of the email sent when a change of user email address is attempted.
[3753] Fix | Delete
*
[3754] Fix | Delete
* The following strings have a special meaning and will get replaced dynamically:
[3755] Fix | Delete
* - ###USERNAME### The current user's username.
[3756] Fix | Delete
* - ###ADMIN_URL### The link to click on to confirm the email change.
[3757] Fix | Delete
* - ###EMAIL### The new email.
[3758] Fix | Delete
* - ###SITENAME### The name of the site.
[3759] Fix | Delete
* - ###SITEURL### The URL to the site.
[3760] Fix | Delete
*
[3761] Fix | Delete
* @since MU (3.0.0)
[3762] Fix | Delete
* @since 4.9.0 This filter is no longer Multisite specific.
[3763] Fix | Delete
*
[3764] Fix | Delete
* @param string $email_text Text in the email.
[3765] Fix | Delete
* @param array $new_user_email {
[3766] Fix | Delete
* Data relating to the new user email address.
[3767] Fix | Delete
*
[3768] Fix | Delete
* @type string $hash The secure hash used in the confirmation link URL.
[3769] Fix | Delete
* @type string $newemail The proposed new email address.
[3770] Fix | Delete
* }
[3771] Fix | Delete
*/
[3772] Fix | Delete
$content = apply_filters( 'new_user_email_content', $email_text, $new_user_email );
[3773] Fix | Delete
[3774] Fix | Delete
$content = str_replace( '###USERNAME###', $current_user->user_login, $content );
[3775] Fix | Delete
$content = str_replace( '###ADMIN_URL###', esc_url( self_admin_url( 'profile.php?newuseremail=' . $hash ) ), $content );
[3776] Fix | Delete
$content = str_replace( '###EMAIL###', $_POST['email'], $content );
[3777] Fix | Delete
$content = str_replace( '###SITENAME###', $sitename, $content );
[3778] Fix | Delete
$content = str_replace( '###SITEURL###', home_url(), $content );
[3779] Fix | Delete
[3780] Fix | Delete
/* translators: New email address notification email subject. %s: Site title. */
[3781] Fix | Delete
wp_mail( $_POST['email'], sprintf( __( '[%s] Email Change Request' ), $sitename ), $content );
[3782] Fix | Delete
[3783] Fix | Delete
$_POST['email'] = $current_user->user_email;
[3784] Fix | Delete
}
[3785] Fix | Delete
}
[3786] Fix | Delete
[3787] Fix | Delete
/**
[3788] Fix | Delete
* Adds an admin notice alerting the user to check for confirmation request email
[3789] Fix | Delete
* after email address change.
[3790] Fix | Delete
*
[3791] Fix | Delete
* @since 3.0.0
[3792] Fix | Delete
* @since 4.9.0 This function was moved from wp-admin/includes/ms.php so it's no longer Multisite specific.
[3793] Fix | Delete
*
[3794] Fix | Delete
* @global string $pagenow The filename of the current screen.
[3795] Fix | Delete
*/
[3796] Fix | Delete
function new_user_email_admin_notice() {
[3797] Fix | Delete
global $pagenow;
[3798] Fix | Delete
[3799] Fix | Delete
if ( 'profile.php' === $pagenow && isset( $_GET['updated'] ) ) {
[3800] Fix | Delete
$email = get_user_meta( get_current_user_id(), '_new_email', true );
[3801] Fix | Delete
if ( $email ) {
[3802] Fix | Delete
$message = sprintf(
[3803] Fix | Delete
/* translators: %s: New email address. */
[3804] Fix | Delete
__( 'Your email address has not been updated yet. Please check your inbox at %s for a confirmation email.' ),
[3805] Fix | Delete
'<code>' . esc_html( $email['newemail'] ) . '</code>'
[3806] Fix | Delete
);
[3807] Fix | Delete
wp_admin_notice( $message, array( 'type' => 'info' ) );
[3808] Fix | Delete
}
[3809] Fix | Delete
}
[3810] Fix | Delete
}
[3811] Fix | Delete
[3812] Fix | Delete
/**
[3813] Fix | Delete
* Gets all personal data request types.
[3814] Fix | Delete
*
[3815] Fix | Delete
* @since 4.9.6
[3816] Fix | Delete
* @access private
[3817] Fix | Delete
*
[3818] Fix | Delete
* @return string[] List of core privacy action types.
[3819] Fix | Delete
*/
[3820] Fix | Delete
function _wp_privacy_action_request_types() {
[3821] Fix | Delete
return array(
[3822] Fix | Delete
'export_personal_data',
[3823] Fix | Delete
'remove_personal_data',
[3824] Fix | Delete
);
[3825] Fix | Delete
}
[3826] Fix | Delete
[3827] Fix | Delete
/**
[3828] Fix | Delete
* Registers the personal data exporter for users.
[3829] Fix | Delete
*
[3830] Fix | Delete
* @since 4.9.6
[3831] Fix | Delete
*
[3832] Fix | Delete
* @param array[] $exporters An array of personal data exporters.
[3833] Fix | Delete
* @return array[] An array of personal data exporters.
[3834] Fix | Delete
*/
[3835] Fix | Delete
function wp_register_user_personal_data_exporter( $exporters ) {
[3836] Fix | Delete
$exporters['wordpress-user'] = array(
[3837] Fix | Delete
'exporter_friendly_name' => __( 'WordPress User' ),
[3838] Fix | Delete
'callback' => 'wp_user_personal_data_exporter',
[3839] Fix | Delete
);
[3840] Fix | Delete
[3841] Fix | Delete
return $exporters;
[3842] Fix | Delete
}
[3843] Fix | Delete
[3844] Fix | Delete
/**
[3845] Fix | Delete
* Finds and exports personal data associated with an email address from the user and user_meta table.
[3846] Fix | Delete
*
[3847] Fix | Delete
* @since 4.9.6
[3848] Fix | Delete
* @since 5.4.0 Added 'Community Events Location' group to the export data.
[3849] Fix | Delete
* @since 5.4.0 Added 'Session Tokens' group to the export data.
[3850] Fix | Delete
*
[3851] Fix | Delete
* @param string $email_address The user's email address.
[3852] Fix | Delete
* @return array {
[3853] Fix | Delete
* An array of personal data.
[3854] Fix | Delete
*
[3855] Fix | Delete
* @type array[] $data An array of personal data arrays.
[3856] Fix | Delete
* @type bool $done Whether the exporter is finished.
[3857] Fix | Delete
* }
[3858] Fix | Delete
*/
[3859] Fix | Delete
function wp_user_personal_data_exporter( $email_address ) {
[3860] Fix | Delete
$email_address = trim( $email_address );
[3861] Fix | Delete
[3862] Fix | Delete
$data_to_export = array();
[3863] Fix | Delete
[3864] Fix | Delete
$user = get_user_by( 'email', $email_address );
[3865] Fix | Delete
[3866] Fix | Delete
if ( ! $user ) {
[3867] Fix | Delete
return array(
[3868] Fix | Delete
'data' => array(),
[3869] Fix | Delete
'done' => true,
[3870] Fix | Delete
);
[3871] Fix | Delete
}
[3872] Fix | Delete
[3873] Fix | Delete
$user_meta = get_user_meta( $user->ID );
[3874] Fix | Delete
[3875] Fix | Delete
$user_props_to_export = array(
[3876] Fix | Delete
'ID' => __( 'User ID' ),
[3877] Fix | Delete
'user_login' => __( 'User Login Name' ),
[3878] Fix | Delete
'user_nicename' => __( 'User Nice Name' ),
[3879] Fix | Delete
'user_email' => __( 'User Email' ),
[3880] Fix | Delete
'user_url' => __( 'User URL' ),
[3881] Fix | Delete
'user_registered' => __( 'User Registration Date' ),
[3882] Fix | Delete
'display_name' => __( 'User Display Name' ),
[3883] Fix | Delete
'nickname' => __( 'User Nickname' ),
[3884] Fix | Delete
'first_name' => __( 'User First Name' ),
[3885] Fix | Delete
'last_name' => __( 'User Last Name' ),
[3886] Fix | Delete
'description' => __( 'User Description' ),
[3887] Fix | Delete
);
[3888] Fix | Delete
[3889] Fix | Delete
$user_data_to_export = array();
[3890] Fix | Delete
[3891] Fix | Delete
foreach ( $user_props_to_export as $key => $name ) {
[3892] Fix | Delete
$value = '';
[3893] Fix | Delete
[3894] Fix | Delete
switch ( $key ) {
[3895] Fix | Delete
case 'ID':
[3896] Fix | Delete
case 'user_login':
[3897] Fix | Delete
case 'user_nicename':
[3898] Fix | Delete
case 'user_email':
[3899] Fix | Delete
case 'user_url':
[3900] Fix | Delete
case 'user_registered':
[3901] Fix | Delete
case 'display_name':
[3902] Fix | Delete
$value = $user->data->$key;
[3903] Fix | Delete
break;
[3904] Fix | Delete
case 'nickname':
[3905] Fix | Delete
case 'first_name':
[3906] Fix | Delete
case 'last_name':
[3907] Fix | Delete
case 'description':
[3908] Fix | Delete
$value = $user_meta[ $key ][0];
[3909] Fix | Delete
break;
[3910] Fix | Delete
}
[3911] Fix | Delete
[3912] Fix | Delete
if ( ! empty( $value ) ) {
[3913] Fix | Delete
$user_data_to_export[] = array(
[3914] Fix | Delete
'name' => $name,
[3915] Fix | Delete
'value' => $value,
[3916] Fix | Delete
);
[3917] Fix | Delete
}
[3918] Fix | Delete
}
[3919] Fix | Delete
[3920] Fix | Delete
// Get the list of reserved names.
[3921] Fix | Delete
$reserved_names = array_values( $user_props_to_export );
[3922] Fix | Delete
[3923] Fix | Delete
/**
[3924] Fix | Delete
* Filters the user's profile data for the privacy exporter.
[3925] Fix | Delete
*
[3926] Fix | Delete
* @since 5.4.0
[3927] Fix | Delete
*
[3928] Fix | Delete
* @param array $additional_user_profile_data {
[3929] Fix | Delete
* An array of name-value pairs of additional user data items. Default empty array.
[3930] Fix | Delete
*
[3931] Fix | Delete
* @type string $name The user-facing name of an item name-value pair,e.g. 'IP Address'.
[3932] Fix | Delete
* @type string $value The user-facing value of an item data pair, e.g. '50.60.70.0'.
[3933] Fix | Delete
* }
[3934] Fix | Delete
* @param WP_User $user The user whose data is being exported.
[3935] Fix | Delete
* @param string[] $reserved_names An array of reserved names. Any item in `$additional_user_data`
[3936] Fix | Delete
* that uses one of these for its `name` will not be included in the export.
[3937] Fix | Delete
*/
[3938] Fix | Delete
$_extra_data = apply_filters( 'wp_privacy_additional_user_profile_data', array(), $user, $reserved_names );
[3939] Fix | Delete
[3940] Fix | Delete
if ( is_array( $_extra_data ) && ! empty( $_extra_data ) ) {
[3941] Fix | Delete
// Remove items that use reserved names.
[3942] Fix | Delete
$extra_data = array_filter(
[3943] Fix | Delete
$_extra_data,
[3944] Fix | Delete
static function ( $item ) use ( $reserved_names ) {
[3945] Fix | Delete
return ! in_array( $item['name'], $reserved_names, true );
[3946] Fix | Delete
}
[3947] Fix | Delete
);
[3948] Fix | Delete
[3949] Fix | Delete
if ( count( $extra_data ) !== count( $_extra_data ) ) {
[3950] Fix | Delete
_doing_it_wrong(
[3951] Fix | Delete
__FUNCTION__,
[3952] Fix | Delete
sprintf(
[3953] Fix | Delete
/* translators: %s: wp_privacy_additional_user_profile_data */
[3954] Fix | Delete
__( 'Filter %s returned items with reserved names.' ),
[3955] Fix | Delete
'<code>wp_privacy_additional_user_profile_data</code>'
[3956] Fix | Delete
),
[3957] Fix | Delete
'5.4.0'
[3958] Fix | Delete
);
[3959] Fix | Delete
}
[3960] Fix | Delete
[3961] Fix | Delete
if ( ! empty( $extra_data ) ) {
[3962] Fix | Delete
$user_data_to_export = array_merge( $user_data_to_export, $extra_data );
[3963] Fix | Delete
}
[3964] Fix | Delete
}
[3965] Fix | Delete
[3966] Fix | Delete
$data_to_export[] = array(
[3967] Fix | Delete
'group_id' => 'user',
[3968] Fix | Delete
'group_label' => __( 'User' ),
[3969] Fix | Delete
'group_description' => __( 'User&#8217;s profile data.' ),
[3970] Fix | Delete
'item_id' => "user-{$user->ID}",
[3971] Fix | Delete
'data' => $user_data_to_export,
[3972] Fix | Delete
);
[3973] Fix | Delete
[3974] Fix | Delete
if ( isset( $user_meta['community-events-location'] ) ) {
[3975] Fix | Delete
$location = maybe_unserialize( $user_meta['community-events-location'][0] );
[3976] Fix | Delete
[3977] Fix | Delete
$location_props_to_export = array(
[3978] Fix | Delete
'description' => __( 'City' ),
[3979] Fix | Delete
'country' => __( 'Country' ),
[3980] Fix | Delete
'latitude' => __( 'Latitude' ),
[3981] Fix | Delete
'longitude' => __( 'Longitude' ),
[3982] Fix | Delete
'ip' => __( 'IP' ),
[3983] Fix | Delete
);
[3984] Fix | Delete
[3985] Fix | Delete
$location_data_to_export = array();
[3986] Fix | Delete
[3987] Fix | Delete
foreach ( $location_props_to_export as $key => $name ) {
[3988] Fix | Delete
if ( ! empty( $location[ $key ] ) ) {
[3989] Fix | Delete
$location_data_to_export[] = array(
[3990] Fix | Delete
'name' => $name,
[3991] Fix | Delete
'value' => $location[ $key ],
[3992] Fix | Delete
);
[3993] Fix | Delete
}
[3994] Fix | Delete
}
[3995] Fix | Delete
[3996] Fix | Delete
$data_to_export[] = array(
[3997] Fix | Delete
'group_id' => 'community-events-location',
[3998] Fix | Delete
'group_label' => __( 'Community Events Location' ),
[3999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function