Cum să obții numărul de telefon al utilizatorului curent

23 dec. 2015, 12:06:57
Vizualizări: 23.6K
Voturi: 1

Încerc următorul cod:

<?php $phone = get_user_meta($current_user->ID,'phone_number',true); echo $phone; ?>

Dar nu funcționează

3
Comentarii

Ce ai încercat pentru a depana problema? Ai verificat, de exemplu, input-ul?

birgire birgire
23 dec. 2015 12:12:20

1. Verifică dacă numărul de telefon este introdus în profilul utilizatorului 2. Verifică dacă numărul de telefon există în baza de date 3. Verifică dacă meta_key-ul tău este corect 4. Folosește echo pentru ID-ul utilizatorului pentru a te asigura că există și este corect 5. Notează numărul de telefon și dacă pagina s-a încărcat, deschide fereastra de dezvoltator, selectează codul sursă, apasă ctr+F și introdu numărul tău - poate doar l-ai afișat într-un element ascuns sau este greu de văzut

N00b N00b
23 dec. 2015 12:21:25

"Nu funcționează" nu este suficientă informație. Ai activat depanarea? Primești vreo eroare? Ești sigur că $current_user este un obiect utilizator valid și în scope? Este numele câmpului cu siguranță phone_number?

TheDeadMedic TheDeadMedic
23 dec. 2015 13:25:04
Toate răspunsurile la întrebare 5
0
<?php
  // numărul 9 reprezintă ID-ul utilizatorului
  $all_meta_for_user = get_user_meta( 9 );
  print_r( $all_meta_for_user );

// găsește cheia pe care o cauți
Array ( 
    [first_name] => Array ( [0] => Tom ) 
    [last_name] => Array ( [0] => Auger) 
    [nickname] => Array ( [0] => tomauger ) 
    [description] => etc.... 
)

// stochează-o într-o variabilă
$last_name = $all_meta_for_user['last_name'][0];

// afișează-o
echo $last_name;
23 dec. 2015 12:22:28
0

Dacă nu parcurgeți toți utilizatorii și doriți doar să obțineți metadatele phone_number ale utilizatorului curent, puteți încerca următoarele.

$current_user_id = get_current_user_id();
$phone = get_user_meta($current_user_id,'phone_number',true);
echo $phone;

NOTĂ: Acest lucru va funcționa doar pentru utilizatorii autentificați.

De asemenea, verificați cheia meta phone_number. În mod implicit, WordPress nu are o astfel de cheie meta, după câte știu eu.

23 dec. 2015 13:26:51
0

WordPress are o comandă scurtă pentru a obține ID-ul utilizatorului curent, de care probabil ai nevoie – get_current_user_id(). Folosind această funcție, ar trebui să poți obține informațiile necesare. Mai jos este un bloc de cod demonstrativ care verifică valorile returnate de funcții și aplică o logică condițională în cazul în care ai nevoie:

$uid = get_current_user_id();
if (!empty($uid)) {
  $phone = get_user_meta($uid,'phone_number',true); 
  if (!empty($phone)) {
    echo $phone;
  } else {
    echo 'Utilizatorul nu are un număr de telefon stocat în baza de date';
  }
} else {
  echo 'Utilizatorul nu este autentificat';
}
23 dec. 2015 17:57:08
0
<?php $phone = get_user_meta($current_user->ID,'phone',true); echo $phone;?>

era "phone" și nu "phone_number"

24 dec. 2015 06:36:24
0
// Obține numărul de telefon al utilizatorului din meta-database
$phone = get_user_meta($user_id, 'billing_phone', true);
// Afișează numărul de telefon
echo $phone;
3 feb. 2020 15:03:58