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; } }