function weixin_robot_get_weixin_query_id()
{
    _deprecated_function(__FUNCTION__, '3.9', 'weixin_robot_get_user_query_id');
    $query_key = weixin_robot_get_user_query_key();
    if (isset($_GET[$query_key])) {
        return $_GET[$query_key];
    } elseif (isset($_COOKIE[$query_key])) {
        return $_COOKIE[$query_key];
    } else {
        return '';
    }
}
function weixin_robot_credit_reply()
{
    global $wechatObj;
    $weixin_openid = $wechatObj->get_fromUsername();
    $query_id = weixin_robot_get_user_query_id($weixin_openid);
    $query_key = weixin_robot_get_user_query_key();
    $profile_link = home_url('/?weixin_user&profile&' . $query_key . '=' . $query_id);
    $credit = weixin_robot_get_credit($weixin_openid);
    $credit_reply = apply_filters('weixin_credit_reply', '你现在共有[credit]积分,点击这里查看<a href="[profile_link]">积分历史</a>。', $weixin_openid);
    $credit_reply = str_replace(array('[credit]', '[profile_link]'), array($credit, $profile_link), $credit_reply);
    echo sprintf($wechatObj->get_textTpl(), $credit_reply);
    $wechatObj->set_response('credit');
}
function weixin_robot_init($wp)
{
    // 定义数据库表名
    global $wpdb;
    $wpdb->weixin_messages = $wpdb->prefix . 'weixin_messages';
    if (isset($_GET['yixin'])) {
        $wpdb->weixin_messages = $wpdb->prefix . 'yixin_messages';
    }
    $wpdb->weixin_custom_replies = $wpdb->prefix . 'weixin_custom_replies';
    $wpdb->weixin_qrcodes = $wpdb->prefix . 'weixin_qrcodes';
    $wpdb->weixin_users = $wpdb->prefix . 'weixin_users';
    $wpdb->weixin_credits = $wpdb->prefix . 'weixin_credits';
    $wpdb->weixin_checkin = $wpdb->prefix . 'weixin_checkin';
    $wpdb->weixin_redeems = $wpdb->prefix . 'weixin_redeems';
    $wpdb->weixin_redeem_codes = $wpdb->prefix . 'weixin_redeem_codes';
    $wpdb->weixin_postviews = $wpdb->prefix . 'weixin_postviews';
    // 被动响应微信用户消息
    if (isset($_GET['weixin']) || isset($_GET['yixin']) || isset($_GET['signature'])) {
        global $wechatObj;
        if (!isset($wechatObj)) {
            $wechatObj = new wechatCallback();
            $wechatObj->valid();
            exit;
        }
    }
    // 将用户的 query_id 保存到 cookie 里面
    $query_key = weixin_robot_get_user_query_key();
    if (!empty($_GET[$query_key])) {
        weixin_robot_set_query_cookie($_GET[$query_key]);
    }
    // 微信用户中心
    if (isset($_GET['weixin_user'])) {
        if (isset($_GET['profile'])) {
            if (file_exists(TEMPLATEPATH . '/weixin/weixin-user-profile.php')) {
                include TEMPLATEPATH . '/weixin/weixin-user-profile.php';
            } else {
                include WEIXIN_ROBOT_PLUGIN_DIR . '/template/weixin-user-profile.php';
            }
            exit;
        }
    }
}
function weixin_robot_set_query_cookie($query_id)
{
    $query_key = weixin_robot_get_user_query_key();
    $expire = time() + 60 * 60 * 24 * 365;
    setcookie($query_key, $query_id, $expire, COOKIEPATH, COOKIE_DOMAIN);
    if (COOKIEPATH != SITECOOKIEPATH) {
        setcookie($query_key, $query_id, $expire, SITECOOKIEPATH, COOKIE_DOMAIN);
    }
}
function weixin_robot_url_add_query_id($url)
{
    if ($weixin_url = get_post_meta(get_the_ID(), 'weixin_url', true)) {
        $url = $weixin_url;
    }
    global $wechatObj;
    if (isset($wechatObj)) {
        $weixin_openid = $wechatObj->get_fromUsername();
        if ($use_openid = get_post_meta(get_the_ID(), 'use_openid', true)) {
            return add_query_arg('weixin_openid', $weixin_openid, $url);
        } else {
            $query_id = weixin_robot_get_user_query_id($weixin_openid);
            $query_key = weixin_robot_get_user_query_key();
            return add_query_arg($query_key, $query_id, $url);
        }
    } else {
        return $url;
    }
}