function weixin_robot_get_user($weixin_openid = '', $from = '') { if (!$weixin_openid) { $weixin_openid = weixin_robot_get_user_openid(); } if (!$weixin_openid) { return false; } if (strlen($weixin_openid) < 28) { return false; } $weixin_user = wp_cache_get($weixin_openid, 'weixin_user'); if ($weixin_user === false) { global $wpdb; $weixin_user = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$wpdb->weixin_users} WHERE openid=%s", $weixin_openid), ARRAY_A); if ($weixin_user) { if (weixin_robot_get_setting('weixin_advanced_api') && current_time('timestamp') - $weixin_user['last_update'] > 86400 * 30) { $weixin_user = weixin_robot_get_remote_user($weixin_openid); if ($weixin_user) { $wpdb->update($wpdb->weixin_users, $weixin_user, array('openid' => $weixin_openid)); wp_cache_set($weixin_openid, $weixin_user, 'weixin_user', 3600); } else { return false; } } } else { if ($from == 'local') { return false; } else { if (weixin_robot_get_setting('weixin_advanced_api')) { if ($from == '') { $weixin_user = weixin_robot_get_remote_user($weixin_openid); } } else { $weixin_user = array('openid' => trim($weixin_openid)); } if (isset($weixin_user['openid'])) { $wpdb->insert($wpdb->weixin_users, $weixin_user); $weixin_user = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$wpdb->weixin_users} WHERE openid=%s", $weixin_openid), ARRAY_A); wp_cache_set($weixin_openid, $weixin_user, 'weixin_user', 3600); } } } } return $weixin_user; }
<?php if (!is_weixin()) { wp_die('请在微信中访问该页!'); } $weixin_openid = weixin_robot_get_user_openid(); if ($weixin_openid == false) { wp_die('非法访问!'); } if (isset($_GET['update'])) { if (isset($_POST['update']) && wp_verify_nonce($_POST['weixin_user_act'], 'weixin_user')) { $weixin_user_new = array('name' => trim(wp_strip_all_tags($_POST['name'])), 'address' => trim(wp_strip_all_tags($_POST['address'])), 'phone' => trim(wp_strip_all_tags($_POST['phone']))); weixin_robot_update_user($weixin_openid, $weixin_user_new); $success = "ok"; } } else { global $wpdb; $weixin_credits = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$wpdb->weixin_credits} WHERE weixin_openid=%s ORDER BY id DESC LIMIT 0,30;", $weixin_openid)); } $weixin_user = weixin_robot_get_user($weixin_openid); if (empty($weixin_user['name']) && !empty($weixin_user['nickname'])) { $weixin_user['name'] = $weixin_user['nickname']; } ?> <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>用户中心</title> <meta name="HandheldFriendly" content="True"> <meta name="MobileOptimized" content="320">
function weixin_robot_enqueue_scripts() { global $post; $img = apply_filters('weixin_share_img', get_post_weixin_thumb($post, array(120, 120))); $link = apply_filters('weixin_share_url', get_permalink()); $title = apply_filters('weixin_share_title', get_the_title()); $desc = apply_filters('weixin_share_desc', get_post_excerpt($post)); $weixin_openid = weixin_robot_get_user_openid(); wp_enqueue_script('jquery'); wp_enqueue_script('weixin', WEIXIN_ROBOT_PLUGIN_URL . '/static/weixin-share.js', array('jquery')); wp_localize_script('weixin', 'weixin_data', array('appid' => '', 'fakeid' => '', 'img' => $img, 'link' => $link, 'title' => $title, 'desc' => $desc, 'credit' => $is_IIS ? 0 : weixin_robot_get_setting('weixin_credit'), 'ajax_url' => admin_url('admin-ajax.php'), 'nonce' => wp_create_nonce('weixin_share'), 'post_id' => get_the_ID(), 'weixin_openid' => $weixin_openid, 'notify' => weixin_robot_get_setting('weixin_share_notify'))); }