add_user_meta () vs update_user_meta ()


10

Sto guardando la documentazione per la 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 o devi prima definire la meta_key add_user_meta()?



Trascurato quello. Avevo problemi con i metas non aggiunti e non sapevo se add_user_meta()dovevano essere definiti per primi.
Tim Plummer,

1
Quindi, risolto allora?
s_ha_dum,

Questa parte, sì - Grazie. Devo ancora eseguire il debug ...: /
Tim Plummer il

Risposte:


15

Hai già scoperto che utilizzando update_user_meta()se il campo meta per l'utente non esiste, verrà aggiunto. cioè update_user_meta()può fare il compito diadd_user_meta()

Tuttavia, la differenza tra loro è il return values

update_user_meta ()

restituisce False se non è stata apportata alcuna modifica (se il nuovo valore era uguale al valore precedente) o se l'aggiornamento non è riuscito, umeta_id se il valore era diverso e l'aggiornamento ha esito positivo.

NOTA: dalla v3.4.2 restituisce umeta_id in caso di successo (anziché true) e false in caso di errore


add_user_meta ()

restituisce l' id chiave primaria per il successo . Nessun valore (vuoto) per errore. ID chiave primaria per il successo.


Voglio aggiungere che add_user_meta non può aggiornare user_meta esistente se il flag univoco passato è impostato su true.
TurtleTread

1

Grazie per la tua spiegazione, aggiungerò al tuo update_user_meta()anche il ritorno vero se si è verificato un aggiornamento riuscito.

In breve: restituisce Meta ID se la chiave non esisteva, vero in caso di aggiornamento riuscito, falso in caso di errore.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.