我想從woocommerce編輯帳戶頁面中刪除電子郵件字段以防止用戶更改其電子郵件地址。從woocommerce編輯帳戶頁面刪除電子郵件
通過編輯myaccount/form-edit-account.php模板很容易刪除前端部分。但它只是從形式而已。
我想從後端刪除,所以沒有人可以將帶有電子郵件名稱的文本框添加到表單中並更改電子郵件。
後端功能,做編輯過程是在這裏
https://github.com/woothemes/woocommerce/blob/master/includes/class-wc-form-handler.php#L141
你可以看到,沒有過濾器或操作從處理中排除郵件。
任何幫助,將不勝感激。
解決方案(感謝@Reigel)
正如我所說的,我已經從模板文件中刪除的電子郵件領域,但惡意用戶可以用ACCOUNT_EMAIL注入一個輸入字段和更改電子郵件。我想要的是忽略POSTED電子郵件,如果有的話。
所以使用woocommerce_save_account_details_errors
行動,有可能做到這一點
類的例子
add_action('woocommerce_save_account_details_errors', array($this, 'remove_email_from_edit_account_process'), 10,
2);
public function remove_email_from_edit_account_process($errors, $user) {
if (! empty($user->user_email)) {
unset($user->user_email);
}
}
你的鏈接與我的問題無關。這是關於計費字段,但我的意圖是從後端進程中刪除account_email。 – eMehran