Ejemplo n.º 1
0
 /**
  * Activation hook for the plugin.
  */
 function activate()
 {
     // Include our important bits
     $this->includes();
     // Create Badges achievement type
     if (!get_page_by_title('Badges', 'OBJECT', 'achievement-type')) {
         $badge_post_id = wp_insert_post(array('post_title' => __('Badges', 'badgeos'), 'post_content' => __('Badges badge type', 'badgeos'), 'post_status' => 'publish', 'post_author' => 1, 'post_type' => 'achievement-type'));
         update_post_meta($badge_post_id, '_badgeos_singular_name', __('Badge', 'badgeos'));
         update_post_meta($badge_post_id, '_badgeos_show_in_menu', true);
     }
     // Setup default BadgeOS options
     $badgeos_settings = ($exists = get_option('badgeos_settings')) ? $exists : array();
     if (empty($badgeos_settings)) {
         $badgeos_settings['minimum_role'] = 'manage_options';
         $badgeos_settings['submission_manager_role'] = 'manage_options';
         $badgeos_settings['submission_email'] = 'enabled';
         $badgeos_settings['debug_mode'] = 'disabled';
         update_option('badgeos_settings', $badgeos_settings);
     }
     // Setup default Credly options
     $credly_settings = (array) get_option('credly_settings', array());
     if (empty($credly_settings) || !isset($credly_settings['credly_enable'])) {
         $credly_settings['credly_enable'] = 'true';
         $credly_settings['credly_badge_title'] = 'post_title';
         $credly_settings['credly_badge_description'] = 'post_body';
         $credly_settings['credly_badge_short_description'] = 'post_excerpt';
         $credly_settings['credly_badge_criteria'] = '';
         $credly_settings['credly_badge_image'] = 'featured_image';
         $credly_settings['credly_badge_testimonial'] = 'congratulations_text';
         $credly_settings['credly_badge_evidence'] = 'permalink';
         $credly_settings['credly_badge_sendemail_add_message'] = 'false';
         update_option('credly_settings', $credly_settings);
     }
     // Register our post types and flush rewrite rules
     badgeos_flush_rewrite_rules();
 }
Ejemplo n.º 2
0
/**
 * Replace all instances of one achievement type with another.
 *
 * @since  1.4.0
 *
 * @param  string $original_type Original achievement type.
 * @param  string $new_type      New achievement type.
 * @return string                New achievement type.
 */
function badgeos_update_achievement_types($original_type = '', $new_type = '')
{
    // Sanity check to prevent alterating core posts
    if (empty($original_type) || in_array($original_type, array('post', 'page', 'attachment', 'revision', 'nav_menu_item'))) {
        return $new_type;
    }
    badgeos_update_achievements_achievement_types($original_type, $new_type);
    badgeos_update_p2p_achievement_types($original_type, $new_type);
    badgeos_update_earned_meta_achievement_types($original_type, $new_type);
    badgeos_update_active_meta_achievement_types($original_type, $new_type);
    badgeos_flush_rewrite_rules();
    return $new_type;
}