我已經在 Wordpress 上創建了一個前端表單Elementor Pro,并且在提交時成功更新了登錄用戶的用戶元資料。
我現在想使用表單中提交的值計算一個單獨的自定義元欄位。
換句話說:當用戶提交自定義欄位的值時straight_speed,我想straight_speed_percent使用剛剛輸入的值自動計算,并將其保存給用戶。
目前, 的計算straight_speed_percent只能straight_speed乘以 100。
(自定義欄位straight_speed_percent已經創建)。
最初需要為 增加一個值straight_speed_percent,但如果重新提交并straight_speed更改表單,我希望更新該值。
我已經嘗試了以下代碼,但它似乎不起作用。任何幫助將不勝感激!
$current_user = wp_get_current_user();
$current_user->ID;
$straight_speed = get_user_meta ('straight_speed', $current_user);
$straight_acceleration_percent_value = $straight_speed * '100';
update_user_meta( $current_user, 'straight_acceleration_percent', '$straight_acceleration_percent_value' );
uj5u.com熱心網友回復:
您的代碼中存在一些語法和邏輯錯誤!
- 當您使用時,
get_user_meta您需要使用$current_user->ID和meta key。閱讀檔案了解更多詳情! - 當您將
$straight_speed變數保存到資料庫時,它將被保存為文本字串,因此當您從資料庫中取回它時,將其轉換為整數,然后進行乘法運算! $straight_acceleration_percent_value當您嘗試更新不正確的值時,您的變數周圍還有額外的引號!
使用以下代碼段:
$current_user = wp_get_current_user();
$straight_speed = get_user_meta($current_user->ID, 'straight_speed', true);
if ($straight_speed) {
$straight_acceleration_percent_value = (int)$straight_speed * 100;
update_user_meta($current_user->ID, 'straight_speed_percent', $straight_acceleration_percent_value);
}
這個答案已經過測驗并且作業正常!讓我知道它是否也適合你!
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/336505.html
標籤:php WordPress的 元数据 元素 用户元数据
