2016-10-27 102 views
0

我製作OnBeforeinitialize掛鉤。如果用戶在數據庫中不存在,我需要在那裏註冊新用戶的代碼。MediaWiki註冊新用戶的擴展

應該使用哪個MediaWiki類和函數?

回答

0

即使我不知道,你真正想做什麼,用戶的數據應該來自哪裏,以及爲什麼你想在BeforeInitialize鉤子中這樣做(事實上,任何有用的信息真正知道並理解你想達到的目標是什麼都沒有,因此,你將毫無保證地得到你的具體問題的答案,它在你的用例中就像你期望的那樣工作)。但是,要創建新用戶,可以使用User類的createNew函數。如果用戶已經存在於數據庫中,您應該檢查。

編輯: 的使用示例:

$user = User::createNew('Testuser', [ 'email' => '[email protected]_source.com' ]); 
+0

請你顯示代碼示例如何正確使用函數User :: createNew()? –

+0

添加了編輯... – Florian

1

如果您需要創建用戶,沒準你正在做的事情是錯誤的。應在登錄/註冊時創建用戶(使用PrimaryAuthenticationProvider通知系統創建它們),或者根據請求數據(使用SessionProvider)進行身份驗證時創建用戶。也有User::newSystemUser,但它只適用於腳本。