Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 1. User table
- $data['user'] = $wpdb->get_row($wpdb->prepare(
- "SELECT * FROM {$wpdb->users} WHERE ID = %d",
- $this->user_id
- ), ARRAY_A);
- // 2. User meta
- $data['user_meta'] = $wpdb->get_results($wpdb->prepare(
- "SELECT meta_key, meta_value FROM {$wpdb->usermeta} WHERE user_id = %d",
- $this->user_id
- ), ARRAY_A);
- // 3. Posts
- $data['posts'] = $wpdb->get_results($wpdb->prepare(
- "SELECT * FROM {$wpdb->posts} WHERE post_author = %d",
- $this->user_id
- ), ARRAY_A);
- // 4. Post meta
- if (!empty($data['posts'])) {
- $post_ids = array_column($data['posts'], 'ID');
- $placeholders = implode(',', array_fill(0, count($post_ids), '%d'));
- $data['post_meta'] = $wpdb->get_results($wpdb->prepare(
- "SELECT post_id, meta_key, meta_value
- FROM {$wpdb->postmeta}
- WHERE post_id IN ($placeholders)",
- ...$post_ids
- ), ARRAY_A);
- foreach ($data['post_meta'] as &$meta) {
- $unserialized = maybe_unserialize($meta['meta_value']);
- if ($unserialized !== $meta['meta_value']) {
- $meta['meta_value_unserialized'] = $unserialized;
- }
- }
- }
Advertisement