onclick-add-value-to-mysql(wordpress)前端

polhcujo  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(215)

我试着做一个按钮,当点击时,会给wordpress中的用户meta添加一个值。到目前为止,我的情况是:

<form method="post">
    <input type="submit" name="test" id="test" value="RUN" /><br/>
</form>

我的测试功能:

function test()
{
    $user_id = 11;
    $kscoins = '1000';
    update_user_meta($user_id, '_ywpar_user_total_points', $kscoins);
}

但这似乎不管用。另外,如何将值添加到当前值?
示例:如果值为 500 我能补充一下吗 500 多多益善 1000 ?

jhkqcmku

jhkqcmku1#

正如我在评论中提到的,您需要向钩子添加一个函数,比如 init 或者 wp_loaded ,类似于这样的内容(我还没有测试过,但如果由于某种原因无法工作,您可以进一步调查):

function addUserPoints()
{
    # Don't do anything if nothing submitted
    if(empty($_POST['test']))
        return false;
    # Get the current user's id
    $id = get_current_user_id();
    # If no one logged in, stop
    if(empty($id))
        return false;
    # Get the points for the current user
    $getPoints = get_user_meta($id, '_ywpar_user_total_points', true);
    # If no points, add the 500
    if(empty($getPoints))
        add_user_meta($id, '_ywpar_user_total_points', 500);
    # If there are points already, sum them and update
    else
        update_user_meta($id, '_ywpar_user_total_points', ($getPoints + 500));
}

# Add your function to an hook

add_action('wp_loaded', 'addUserPoints');

相关问题