Domanda

Ho cercato di capire proprio dove nel massiccio giungla di Wordpress comprendono classi della tabella usermeta si unisce sul tavolo degli utenti e, se sì, come funziona?

L'unica cosa di confusione circa la tabella di usermeta per me è che si sta usando campi chiave / valore per i campi del database e dei valori non attuali come first_name o cognome. Come Wordpress sapere quali campi per tirare fuori per impostazione predefinita e ci sono ganci, le azioni e filtri per l'aggiunta e il recupero dei dati dal campo usermeta?

È stato utile?

Soluzione

Non sto al 100% quello che stai chiedendo, sembra che alcune domande? Ma ecco qui:

 $meta_value = get_user_meta($user_id, $key, $single);

Ad esempio:

 $first_name = get_user_meta($user_id, 'first_name', true);

Per quanto riguarda l'aggiunta di ganci penso che questa risposta potrebbe essere quello che stai cercando?

UPDATE

Sulla base di alcuni commenti di follow-up io aggiungo:

  1. La funzione get_user_metavalues($user_ids) da /wp-includes/user.php restituisce un array di array di dati utente.

  2. I valori recupera funzione get_userdata() utente utilizzando get_user_metavalues($user_ids) da /wp-includes/pluggable.php e ritorna un oggetto dati utente.

  3. Utente Meta è gestito attraverso le funzioni di metadati generici si trovano in /wp-includes/meta.php quindi se siete alla ricerca di un JOIN SQL tra wp_users e wp_usermeta non sono suscettibili di trovare uno. Questo file include le seguenti funzioni:

add_metadata($meta_type,$object_id,$meta_key,$meta_value,$unique=false)
update_metadata($meta_type,$object_id,$meta_key,$meta_value,$prev_value='')
delete_metadata($meta_type,$object_id,$meta_key,$meta_value='',$delete_all=false)
get_metadata($meta_type,$object_id,$meta_key='',$single=false)
update_meta_cache($meta_type,$object_ids)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a wordpress.stackexchange
scroll top