/** * Output LearnDash Achievements * * @param WP_User $user * * @since 1.1.0 */ function badgeos_gravityforms_learner_profile($user) { $type = null; $achievement_types = badgeos_get_network_achievement_types_for_user($user->ID); // Eliminate step cpt from array if (($key = array_search('step', $achievement_types)) !== false) { unset($achievement_types[$key]); $achievement_types = array_values($achievement_types); } $profile_types = get_posts(array('post_type' => 'achievement-type', 'posts_per_page' => -1, 'meta_key' => '_badgeos_show_in_learndash_profile', 'meta_value' => '1')); $profile_achievement_types = array(); foreach ($profile_types as $achievement_type) { $achievement_name_singular = get_post_meta($achievement_type->ID, '_badgeos_singular_name', true); $profile_achievement_types[] = sanitize_title(substr(strtolower($achievement_name_singular), 0, 20)); } $achievement_types = array_diff($achievement_types, $profile_achievement_types); $atts = array('type' => implode(',', $achievement_types), 'limit' => '10', 'show_filter' => 'false', 'show_search' => 'false', 'group_id' => '0', 'user_id' => $user->ID, 'wpms' => badgeos_ms_show_all_achievements()); echo '<h2>' . __('Achievements Earned', 'badgeos-learndash') . '</h2>'; echo badgeos_achievements_list_shortcode($atts); }
/** * Create array of blog ids in the network if multisite setting is on * * @since 1.2.0 * @return array Array of blog_ids */ function badgeos_get_network_site_ids() { global $wpdb; if (badgeos_ms_show_all_achievements()) { $blog_ids = $wpdb->get_results($wpdb->prepare("SELECT blog_id FROM " . $wpdb->base_prefix . "blogs", NULL)); foreach ($blog_ids as $key => $value) { $sites[] = $value->blog_id; } } else { $sites[] = get_current_blog_id(); } return $sites; }