簡體   English   中英

管理員在編輯用戶頁面上發送的Wordpress獲取發布變量

[英]Wordpress get post variable sent on edit user page by admin

我想在我的插件(或functions.php)中檢測是否發送了一個變量POST。 我的意思是,當管理員更改用戶角色時,將發送ROLE變量。

<select name="role" id="role">
<option value="shop_manager">Shop manager</option>
<option value="customer">Customer</option>
<option selected="selected" value="level_1">Level 1</option>
<option value="subscriber">Subscriber</option>
<option value="contributor">Contributor</option>
<option value="author">Author</option>
<option value="editor">Editor</option>
<option value="administrator">Administrator</option><option value="">— No role for this site —</option>

add_action('edit_user_profile', 'CheckPost', 10, 1);//loading on user-edit.php

$rolemodified = $_POST['role'];
function CheckPost(){
if( !empty($rolemodified) ){ echo "ROLE: $rolemodified ";  } 
}

我想檢索此$ _POST ['role']; 或在警報中顯示

echo "<script type='text/javascript'>alert('post:');</script>";

謝謝

我認為這是一個可變范圍問題。

$rolemodified在您的函數中不可用。

嘗試將其作為全局變量添加到函數中,如下所示:

add_action('edit_user_profile', 'CheckPost', 10, 1);//loading on user-edit.php

$rolemodified = $_POST['role'];
function CheckPost() {
    global $rolemodified; // or set $rolemodified here
    if( !empty($rolemodified) ){ echo "ROLE: $rolemodified ";  } 
}

編輯:我只是注意到您也在使用edit_user_profile掛鈎。 您將需要使用edit_user_profile_update鈎子來獲取發布值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM