/**
  * Registers Custom Post, Custom Taxonomy
  */
 public static function post_register()
 {
     WC_QD_Post_Types::register_donation_posttype();
     WC_QD_Post_Types::register_donation_category();
     WC_QD_Post_Types::register_donation_tags();
     add_rewrite_endpoint('donate-now', EP_ROOT);
     flush_rewrite_rules();
 }
        if (taxonomy_exists(WC_QD_CAT)) {
            return;
        }
        $labels = array('name' => _x('Project Categories', 'Taxonomy General Name', WC_QD_TXT), 'singular_name' => _x('Project Category', 'Taxonomy Singular Name', WC_QD_TXT), 'menu_name' => __('Categories', WC_QD_TXT), 'all_items' => __('All Categories', WC_QD_TXT), 'parent_item' => __('Parent Category', WC_QD_TXT), 'parent_item_colon' => __('Parent Category:', WC_QD_TXT), 'new_item_name' => __('New Category Name', WC_QD_TXT), 'add_new_item' => __('Add New Project Category', WC_QD_TXT), 'edit_item' => __('Edit Category', WC_QD_TXT), 'update_item' => __('Update Category', WC_QD_TXT), 'view_item' => __('View Category', WC_QD_TXT), 'separate_items_with_commas' => __('Separate Categories with commas', WC_QD_TXT), 'add_or_remove_items' => __('Add or remove Categories', WC_QD_TXT), 'choose_from_most_used' => __('Choose from the most used', WC_QD_TXT), 'popular_items' => __('Popular Categories', WC_QD_TXT), 'search_items' => __('Search Categories', WC_QD_TXT), 'not_found' => __('Not Found', WC_QD_TXT));
        $rewrite = array('slug' => 'donation/category', 'with_front' => true, 'hierarchical' => false);
        $args = array('labels' => $labels, 'hierarchical' => true, 'public' => true, 'show_ui' => true, 'show_admin_column' => true, 'show_in_nav_menus' => true, 'show_tagcloud' => true, 'rewrite' => $rewrite);
        register_taxonomy(WC_QD_CAT, array(WC_QD_PT), $args);
    }
    /**
     * Registers Donation Tags
     */
    public static function register_donation_tags()
    {
        if (taxonomy_exists('wcqd_tags')) {
            return;
        }
        $labels = array('name' => _x('Project Tags', 'Taxonomy General Name', WC_QD_TXT), 'singular_name' => _x('Project Tag', 'Taxonomy Singular Name', WC_QD_TXT), 'menu_name' => __('Tags', WC_QD_TXT), 'all_items' => __('All Tags', WC_QD_TXT), 'parent_item' => __('Parent Tag', WC_QD_TXT), 'parent_item_colon' => __('Parent Tag :', WC_QD_TXT), 'new_item_name' => __('New Tag Name', WC_QD_TXT), 'add_new_item' => __('Add New Tag', WC_QD_TXT), 'edit_item' => __('Edit Tag ', WC_QD_TXT), 'update_item' => __('Update Tags', WC_QD_TXT), 'view_item' => __('View Tag', WC_QD_TXT), 'separate_items_with_commas' => __('Separate Tags with commas', WC_QD_TXT), 'add_or_remove_items' => __('Add or remove Tags', WC_QD_TXT), 'choose_from_most_used' => __('Choose from the most used', WC_QD_TXT), 'popular_items' => __('Popular Tags', WC_QD_TXT), 'search_items' => __('Search Tags', WC_QD_TXT), 'not_found' => __('Not Found', WC_QD_TXT));
        $rewrite = array('slug' => 'donation/tags', 'with_front' => true, 'hierarchical' => false);
        $args = array('labels' => $labels, 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'show_admin_column' => true, 'show_in_nav_menus' => true, 'show_tagcloud' => true, 'rewrite' => $rewrite);
        register_taxonomy('wcqd_tags', array(WC_QD_PT), $args);
    }
    // Register Custom Status
    public static function register_post_status()
    {
        register_post_status('donation-completed', array('label' => _x('Completed', 'Order status', WC_QD_TXT), 'label_count' => _n_noop('Completed (%s)', 'Completed (%s)', WC_QD_TXT), 'public' => false, 'show_in_admin_all_list' => true, 'show_in_admin_status_list' => true, 'exclude_from_search' => true));
        register_post_status('donation-on-hold', array('label' => _x('Donation On Hold', 'Order status', WC_QD_TXT), 'public' => false, 'exclude_from_search' => false, 'show_in_admin_all_list' => true, 'show_in_admin_status_list' => true, 'label_count' => _n_noop('Donation On Hold <span class="count">(%s)</span>', 'DonationOn Hold <span class="count">(%s)</span>', WC_QD_TXT)));
        register_post_status('donation-refunded', array('label' => _x('Donation Refunded', 'Order status', WC_QD_TXT), 'public' => false, 'exclude_from_search' => false, 'show_in_admin_all_list' => true, 'show_in_admin_status_list' => true, 'label_count' => _n_noop('Refunded <span class="count">(%s)</span>', 'Refunded <span class="count">(%s)</span>', WC_QD_TXT)));
    }
}
WC_QD_Post_Types::init();