コード例 #1
0
function wp_connect_twitter()
{
    if (!class_exists('twitterOAuth')) {
        include dirname(__FILE__) . '/OAuth/twitter_OAuth.php';
    }
    $to = new twitterOAuth(T_APP_KEY, T_APP_SECRET, $_GET['oauth_token'], $_SESSION['oauth_token_secret']);
    $tok = $to->getAccessToken($_REQUEST['oauth_verifier']);
    $to = new twitterOAuth(T_APP_KEY, T_APP_SECRET, $tok['oauth_token'], $tok['oauth_token_secret']);
    $twitter = $to->OAuthRequest('http://api.twitter.com/1/account/verify_credentials.json', 'GET', array());
    if ($twitter == "no auth") {
        return wp_noauth();
    }
    $twitter = json_decode($twitter);
    $username = $sina->screen_name;
    $email = $username . '@twitter.com';
    $tid = "ttid";
    $uid = ifab(get_user_by_meta_value('twitterid', $username), email_exists($email));
    $userinfo = array($tid, $username, $twitter->name, $twitter->profile_image_url, $twitter->url, $username, $tok['oauth_token'], $tok['oauth_token_secret']);
    if ($uid) {
        wp_connect_login($userinfo, $email, $uid);
    } else {
        wp_connect_login($userinfo, $email);
    }
}
コード例 #2
0
ファイル: go.php プロジェクト: liangwei1988/wordpress
                $to = new sohuOAuth(SOHU_APP_KEY, SOHU_APP_SECRET, $_SESSION['keys']['oauth_token'], $_SESSION['keys']['oauth_token_secret']);
                break;
            case "netease":
                $to = new neteaseOAuth(APP_KEY, APP_SECRET, $_SESSION['keys']['oauth_token'], $_SESSION['keys']['oauth_token_secret']);
                break;
            case "douban":
                $to = new doubanOAuth(DOUBAN_APP_KEY, DOUBAN_APP_SECRET, $_SESSION['keys']['oauth_token'], $_SESSION['keys']['oauth_token_secret']);
                break;
            case "tianya":
                $to = new tianyaOAuth(TIANYA_APP_KEY, TIANYA_APP_SECRET, $_SESSION['keys']['oauth_token'], $_SESSION['keys']['oauth_token_secret']);
                break;
            case "twitter":
                $to = new twitterOAuth(T_APP_KEY, T_APP_SECRET, $_SESSION['keys']['oauth_token'], $_SESSION['keys']['oauth_token_secret']);
                break;
            default:
        }
        $redirect_to = $_SESSION['wp_url_bind'];
        $last_key = $to->getAccessToken($_REQUEST['oauth_verifier']);
        if (!$last_key['oauth_token']) {
            wp_die("出错了,没有oauth_token或oauth_token不合法,请<a href='{$redirect_to}'>返回</a>重试!");
        }
        $update = array('oauth_token' => $last_key['oauth_token'], 'oauth_token_secret' => $last_key['oauth_token_secret']);
        $tok = 'wptm_' . $callback;
        if ($redirect_to == WP_CONNECT) {
            update_option($tok, $update);
        } elseif ($_SESSION['user_id']) {
            update_usermeta($_SESSION['user_id'], $tok, $update);
        }
        header('Location:' . $redirect_to);
    }
}