wake-up-neo.com

Wie erhalte ich die Benutzer-ID des aktuellen Profils, das in WP-Admin bearbeitet wird?

Gibt es eine Möglichkeit, die Benutzer-ID des zu bearbeitenden Profils in wp-admin abzurufen?

Ich weiß, dass es in der URL steht, wenn Sie einen Benutzer bearbeiten, EX: ./wp-admin/user-edit.php?user_id=427. Konnte immer $_GET['user_id'] zum Abrufen der Benutzer-ID verwendet werden, aber wie sieht es aus, wenn Sie Ihr eigenes Profil in wp-admin bearbeiten? Die Benutzer-ID wäre nicht in der URL enthalten. EX ./wp-admin/profile.php

Gibt es eine einfache oder umfassende Möglichkeit, die Benutzer-ID des aktuellen Benutzerprofils abzurufen, das in wp-admin bearbeitet wird?

5
Michael Ecklund

Auf dieser Seite ist eine globale Variable namens… $user_id verfügbar. Immer.

Von user-edit.php :

$user_id = (int) $user_id;
$current_user = wp_get_current_user();
if ( ! defined( 'IS_PROFILE_PAGE' ) )
    define( 'IS_PROFILE_PAGE', ( $user_id == $current_user->ID ) );

if ( ! $user_id && IS_PROFILE_PAGE )
    $user_id = $current_user->ID;
elseif ( ! $user_id && ! IS_PROFILE_PAGE )
    wp_die(__( 'Invalid user ID.' ) );
elseif ( ! get_userdata( $user_id ) )
    wp_die( __('Invalid user ID.') );
6
fuxia

Ein bisschen vereinfacht. Ich hatte keinen Zugriff auf eine Variable $ user_id.

// If is current user's profile (profile.php)
if ( defined('IS_PROFILE_PAGE') && IS_PROFILE_PAGE ) {
    $user_id = get_current_user_id();
// If is another user's profile page
} elseif (! empty($_GET['user_id']) && is_numeric($_GET['user_id']) ) {
    $user_id = $_GET['user_id'];
// Otherwise something is wrong.
} else {
    die( 'No user id defined.' );
}
2
Jake