我使用 wpregister_rest_route()函式創建了一些自定義休息路線。所有路線都可以正常作業,但我需要清理將傳遞給其他 wp 函式并創建用戶的輸入。我已經閱讀了有關map_deep()功能的資訊,但是當我需要使用wp_insert_user()or時,wp_update_user()我將為用戶元和用戶基本資訊(如電子郵件等)提供嵌套陣列,并且我需要應用sanitize_email或其他清理功能。
如果我直接在將傳遞給wp_insert_user()或wp_update_user()函式的已定義陣列中呼叫清理函式,它們會起作用嗎?
<?php
//example
wp_insert_user(
'user_email' => sanitize_email( $request->get_param('email') ),
'meta_input' => array(
'gamer_tag' => sanitize_text_field( $request->get_param('gamer_tag') )
)
);
?>
uj5u.com熱心網友回復:
是的,清理功能將在您的代碼片段中運行。
注意:您的代碼片段中存在問題,您沒有傳遞array或者object您直接撰寫陣列鍵和值,您需要將鍵包裝在陣列中
正確的代碼在這里:
<?php
wp_insert_user(
array( // You were missing this array wrap
'user_email' => sanitize_email( $request->get_param( 'email' ) ),
'meta_input' => array(
'gamer_tag' => sanitize_text_field( $request->get_param( 'gamer_tag' ) ),
),
)
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/511127.html
標籤:phpWordPress
上一篇:給出ACF欄位最低值的更智能方法
下一篇:如何在php中為腳本添加屬性
