未在Wordpress 3.4中登录用户ID

时间:2012-12-25 11:54:04

标签: php wordpress

我正在使用Paypal插件并根据我的要求修改它。为此,我想在payment.php页面上获取当前用户的用户ID;我尝试过各种功能,例如wp_get_current_user()is_logged_in()get_current_user_id()等,但我没有在付款页面中获取用户ID。

我在其他网页上获取用户ID。

以下是付款代码页

public static function insert_payment( $data, $transaction_id = 0 ) {
        global $wpdb;

        $sql = "SELECT transaction_id
                FROM " . $wpdb->prefix . "wpuf_transaction
                WHERE transaction_id = '" . $wpdb->escape( wpuf_clean_tags( $transaction_id ) ) . "' LIMIT 1";

        $result = $wpdb->get_row( $sql );
        $tran = $wpdb->escape( wpuf_clean_tags( $transaction_id ) );
    if($tran !="")
    {

        if ( !$result ) 
        {
                $log_user_id=get_current_user_id(); // Not Getting user id here
                $log_user_id = $data['user_id'];
                $find_user_id = $wpdb->get_row("SELECT user_id FROM " . $wpdb->prefix . "wpuf_transaction WHERE user_id=".$log_user_id);                
                $find_user_id123 =  $find_user_id->user_id;
                if($find_user_id123=='')
                {
                    $wpdb->insert( $wpdb->prefix . 'wpuf_transaction', $data );
                    do_action( 'wpuf_payment_received', $data );
                }
                else
                {
                     $wpdb->update( $wpdb->prefix . 'wpuf_transaction', $data, array('user_id' => $log_user_id) );
                }
        }

}
}

任何帮助将不胜感激;在此先感谢。

2 个答案:

答案 0 :(得分:1)

试试这个,

global $current_user;
get_currentuserinfo();
$log_user_id = $current_user->ID;

答案 1 :(得分:0)

你可能会喜欢,有时我们会得到一些语法错误拼写错误:

reference