add_user_meta () vs update_user_meta ()


10

Aku sedang melihat dokumentasi untuk add_user_meta()vs update_user_meta().

Jika meta_key saat ini tidak ada untuk pengguna, akan update_user_meta()secara otomatis menambahkan meta_key untuk pengguna itu atau Anda harus mendefinisikan meta_key dengan yang add_user_meta()pertama?



Mengabaikan hal itu. Saya mengalami masalah dengan meta yang tidak ditambahkan dan tidak tahu apakah add_user_meta()perlu didefinisikan terlebih dahulu.
Tim Plummer

1
Jadi, dipecahkan?
s_ha_dum

Bagian ini, ya - Terima kasih. Masih harus melakukan debug ...: /
Tim Plummer

Jawaban:


15

Anda telah menemukan bahwa menggunakan update_user_meta()jika bidang meta untuk pengguna tidak ada, itu akan ditambahkan. yaitu update_user_meta()dapat melakukan tugasadd_user_meta()

Namun, perbedaan di antara mereka adalah return values

update_user_meta ()

mengembalikan False jika tidak ada perubahan yang dilakukan (jika nilai baru sama dengan nilai sebelumnya) atau jika pembaruan gagal, umeta_id jika nilainya berbeda dan pembaruan berhasil.

CATATAN: per v3.4.2 mengembalikan umeta_id saat sukses (bukan true) dan false saat gagal


add_user_meta ()

mengembalikan id kunci utama untuk sukses . Tidak ada nilai (kosong) untuk kegagalan. ID kunci utama untuk sukses.


Saya ingin menambahkan bahwa add_user_meta tidak dapat memperbarui user_meta yang sudah ada jika flag unik yang diteruskan disetel ke true.
TurtleTread

1

Terima kasih atas penjelasan Anda, saya hanya akan menambahkan milik Anda update_user_meta()juga mengembalikan true jika pembaruan berhasil terjadi.

Singkatnya - Ini mengembalikan Meta ID jika kunci tidak ada, benar pada pembaruan yang berhasil, false pada kegagalan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.