1 回答

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊
更新:找到解決方案
所以我不認(rèn)為profile_update
鉤子按其應(yīng)有的方式工作,或者我使用它是錯(cuò)誤的。我發(fā)現(xiàn)它是profile_update
在帖子/用戶的更新被推送之前觸發(fā)的,這意味著如果我要檢查元的值,它們將是舊的值,即使在 WP 文檔中它說它傳遞舊值對(duì)于用戶作為被調(diào)用函數(shù)的變量,我感到很有趣,這意味著如果我在函數(shù)中查詢?cè)?,它將是更新的元值?/p>
如果您需要一個(gè)鉤子來檢查任何(甚至用戶)metavalue
上是否有任何鉤子,更重要的是在更新推送到數(shù)據(jù)表后觸發(fā),請(qǐng)使用(WP Docs)。post type
updated_{YOUR POST TYPE}_meta
所以而不是
add_action(?'profile_update',?'site_refProfile_existingUser',?10,?2);
我用過這個(gè)
add_action(?'updated_user_meta',?'site_refProfile_existingUser',10,?2);
如果您要更新用戶的元數(shù)據(jù),還要確保在您的函數(shù)中remove_action
在開始和add_action
結(jié)束時(shí),否則我認(rèn)為它將陷入無限循環(huán)
function site_refProfile_existingUser( $meta_id, $user_id) {
? ? remove_action( 'updated_user_meta', 'site_refProfile_existingUser',10, 2);
? ? // your code.....
? ? add_action( 'updated_user_meta', 'site_refProfile_existingUser',10, 2);
}
(無限循環(huán)的事情是一個(gè)假設(shè),因?yàn)樗鞍l(fā)生在我使用另一個(gè)鉤子時(shí))
- 1 回答
- 0 關(guān)注
- 114 瀏覽
添加回答
舉報(bào)