Differenza tra add_user_meta() e update_user_meta()

27 ago 2013, 18:11:59
Visualizzazioni: 27.8K
Voti: 13

Sto esaminando la documentazione di add_user_meta() vs update_user_meta().

Se la meta_key corrente non esiste per un utente, update_user_meta() aggiungerà automaticamente la meta_key per quell'utente oppure è necessario prima definire la meta_key con add_user_meta()?

4
Commenti

Cosa non è chiaro nella documentazione? "Se il meta field per l'utente non esiste, verrà aggiunto."

s_ha_dum s_ha_dum
27 ago 2013 18:18:34

Mi era sfuggito. Avevo problemi con i meta che non venivano aggiunti e non sapevo se add_user_meta() dovesse essere definito prima.

Tim Plummer Tim Plummer
27 ago 2013 18:19:42

Quindi, problema risolto?

s_ha_dum s_ha_dum
27 ago 2013 18:25:47

Questa parte, sì--Grazie. Devo ancora fare il debug... :/

Tim Plummer Tim Plummer
27 ago 2013 18:38:59
Tutte le risposte alla domanda 2
1
22

Hai già scoperto che utilizzando update_user_meta() se il campo meta per l'utente non esiste, verrà aggiunto. Ovvero update_user_meta() può svolgere il compito di add_user_meta()

Tuttavia, la differenza tra loro sono i valori restituiti

update_user_meta()

restituisce False se non è stata apportata alcuna modifica (se il nuovo valore era lo stesso del valore precedente) o se l'aggiornamento è fallito, umeta_id se il valore era diverso e l'aggiornamento ha avuto successo.

NOTA: a partire dalla versione 3.4.2 restituisce l'umeta_id in caso di successo (invece di true) e false in caso di fallimento


add_user_meta()

restituisce L'id della chiave primaria in caso di successo. Nessun valore (vuoto) in caso di fallimento. Id della chiave primaria in caso di successo.

28 ago 2013 16:26:57
Commenti

Voglio aggiungere che la funzione add_user_meta non può aggiornare un user_meta esistente se il flag unique passato è impostato a true.

TurtleTread TurtleTread
14 mar 2018 17:14:15
0

Grazie per la tua spiegazione, aggiungerò solo alla tua che update_user_meta() restituisce anche true se l'aggiornamento è avvenuto con successo.

In breve - Restituisce l'ID Meta se la chiave non esisteva, true in caso di aggiornamento riuscito, false in caso di fallimento.

9 apr 2015 15:56:05