static function init($params = array()) { self::$version = '2.1.4'; self::$postType = 'portfolio'; self::$postTypeSlug = apply_filters('nimble_portfolio_posttype_slug', 'portfolio'); self::$taxonomy = 'nimble-portfolio-type'; self::$taxonomySlug = apply_filters('nimble_portfolio_taxonomy_slug', 'portfolio-filter'); self::$dirPath = dirname(__FILE__); self::$dirUrl = self::path2url(self::$dirPath); self::$options = null; add_theme_support('post-thumbnails', array(self::$postType)); add_image_size('portfolio_col_thumb', 100, 100, true); add_filter('attribute_escape', array(__CLASS__, 'renameMenuTitle'), 10, 2); register_activation_hook(__FILE__, array(__CLASS__, 'onActivate')); register_deactivation_hook(__FILE__, array(__CLASS__, 'onDeactivate')); add_action('init', array(__CLASS__, 'registerPostType')); add_action('init', array(__CLASS__, 'tinymceShortcodeButton')); add_shortcode('nimble-portfolio', array(__CLASS__, 'getPortfolio')); add_action('wp_head', array(__CLASS__, 'enqueueStyle'), 1); add_action('wp_head', array(__CLASS__, 'enqueueScript')); add_filter('manage_' . self::$postType . '_posts_columns', array(__CLASS__, 'adminPostsColumns')); add_action('manage_' . self::$postType . '_posts_custom_column', array(__CLASS__, 'adminPostsCustomColumn')); // Custom Fields for Taxonomy add_action(self::$taxonomy . '_edit_form_fields', array(__CLASS__, 'taxonomyEditFormField')); add_action(self::$taxonomy . '_add_form_fields', array(__CLASS__, 'taxonomyAddFormField')); add_action('edited_' . self::$taxonomy, array(__CLASS__, 'saveTaxonomyValue')); add_action('create_' . self::$taxonomy, array(__CLASS__, 'saveTaxonomyValue')); add_action('manage_edit-' . self::$taxonomy . '_columns', array(__CLASS__, 'taxonomyColumnHeader')); add_action('manage_' . self::$taxonomy . '_custom_column', array(__CLASS__, 'taxonomyCustomValue'), 10, 3); add_action('quick_edit_custom_box', array(__CLASS__, 'taxonomyQuickEditField'), 10, 3); // Admin Handlers add_action('admin_head', array(__CLASS__, 'adminHead')); add_action('admin_menu', array(__CLASS__, 'adminOptions')); add_action('current_screen', array(__CLASS__, 'adminScreen')); add_action('save_post', array(__CLASS__, 'updateData'), 1, 2); add_action('wp_ajax_nimble_portfolio_tinymce', array(__CLASS__, 'ajaxTinymceShortcodeParams')); add_action('wp_ajax_nimble_portfolio_tinymce_skin_change', array(__CLASS__, 'ajaxTinymceSkinChange')); add_action('wp_ajax_nimble_portfolio_tinymce_post_type_change', array(__CLASS__, 'ajaxTinymcePostTypeChange')); add_action('wp_ajax_nimble_portfolio_shortcode_skin_change', array(__CLASS__, 'ajaxShortcodeGenSkinChange')); add_action('wp_ajax_nimble_portfolio_shortcode_post_type_change', array(__CLASS__, 'ajaxShortcodeGenPostTypeChange')); do_action('nimble_portfolio_init'); }