假設我們有一個母親網站。然後我們在第三方網站上有一個用戶註冊表和一個正在處理整個註冊過程的用戶註冊系統,最後會在母站點的數據庫中發送用戶登錄信息(mysql插入,同樣沒有user_register功能)。由於有兩個完全不同的瀏覽器會話,因此在註冊期間或註冊後,不會在母網站上掛鉤任何操作。註冊後更改user_nicename
所以,讓我們說我們將存儲在登錄數據庫中的用戶喜歡[email protected]
(怪異,是),並具有一個名稱和出現像[email protected]
問題的user_nicename:
是什麼最好的方法,wp動作/函數被掛鉤,一旦用戶被存儲在母站點的數據庫中,編寫一個函數來更改用戶nicename,如aaa-bbb
自動當然。
是否有一個函數/鉤建議這種情況下?
下面的代碼並沒有幫助我,因爲正如我上面說,我認爲當一個第三方網站的註冊被處理user_register動作不能被觸發:
add_action('user_register', 'myplugin_registration_save');
function myplugin_registration_save($user_id) {
$info = get_userdata($user_id);
$args = array(
'ID' => $user_id,
'user_nicename' => $info->first_name . '-' . $info->last_name
);
wp_update_user($args);
}
嗨。謝謝您的回答。我無法訪問網站One的代碼。是否有任何其他解決方案,而不是cron工作,以更改用戶已經插入到數據庫後,在網站二user_nicename? –
您需要一些東西來觸發更改。在插入用戶之後,必須在兩個站點中的某個站點上運行某些內容,或者必須通過cron作業手動檢查更改。想想這樣:如果我在郵箱中放了一封信,你怎麼知道它在那裏?要麼我必須告訴你,我把它放在那裏,否則你必須打開郵箱然後看。這裏同樣的事情。有些事情必須發生,說「嘿,新用戶添加」,以便您可以運行您的代碼。 – wunderdojo
是的,符合邏輯,但是如果只有一個簡單的mysql插入,我該如何編碼?我如何檢測? –