/** * Initialize the plugin by setting localization and loading public scripts * and styles. * * @since 1.0.0 */ private function __construct() { $this->settings = get_option(GT_SETTINGS . '-settings'); $glossary_term_cpt = array('taxonomies' => array('glossary-cat'), 'map_meta_cap' => true, 'menu_icon' => 'dashicons-book-alt', 'supports' => array('thumbnail', 'editor', 'title', 'genesis-seo', 'genesis-layouts', 'genesis-cpt-archive-settings')); if (!empty($this->settings['slug'])) { $glossary_term_cpt['rewrite']['slug'] = $this->settings['slug']; } if (isset($this->settings['archive'])) { $glossary_term_cpt['has_archive'] = false; } register_via_cpt_core(array(__('Glossary Term', GT_TEXTDOMAIN), __('Glossary Terms', GT_TEXTDOMAIN), 'glossary'), $glossary_term_cpt); $glossary_term_tax = array('public' => true, 'capabilities' => array('assign_terms' => 'edit_posts')); if (!empty($this->settings['slug-cat'])) { $glossary_term_tax['rewrite']['slug'] = $this->settings['slug-cat']; } register_via_taxonomy_core(array(__('Term Category', GT_TEXTDOMAIN), __('Terms Categories', GT_TEXTDOMAIN), 'glossary-cat'), $glossary_term_tax, array('glossary')); if (isset($this->settings['search'])) { add_filter('pre_get_posts', array($this, 'filter_search')); } require_once plugin_dir_path(__FILE__) . '/includes/Glossary_a2z_Archive.php'; require_once plugin_dir_path(__FILE__) . '/includes/Glossary_Tooltip_Engine.php'; if (isset($this->settings['tooltip'])) { add_action('wp_enqueue_scripts', array($this, 'enqueue_styles')); } if (isset($this->settings['order_terms'])) { add_filter('pre_get_posts', array($this, 'order_glossary')); } if (isset($this->settings['tax_archive'])) { add_action('pre_get_posts', array($this, 'hide_taxonomy_frontend')); } add_filter('glossary-themes-url', array($this, 'add_glossary_url')); }
/** * Initialize the plugin by setting localization and loading public scripts * and styles. * * @since 1.0.0 */ private function __construct() { // Activate plugin when new blog is added add_action('wpmu_new_blog', array($this, 'activate_new_site')); // Create Custom Post Type https://github.com/jtsternberg/CPT_Core/blob/master/README.md register_via_cpt_core(array(__('Demo', $this->get_plugin_slug()), __('Demos', $this->get_plugin_slug()), 'demo'), array('taxonomies' => array('demo-section'), 'capabilities' => array('edit_post' => 'edit_demo', 'edit_others_posts' => 'edit_others_demo'), 'map_meta_cap' => true)); add_filter('pre_get_posts', array($this, 'filter_search')); // Create Custom Taxonomy https://github.com/jtsternberg/Taxonomy_Core/blob/master/README.md register_via_taxonomy_core(array(__('Demo Section', $this->get_plugin_slug()), __('Demo Sections', $this->get_plugin_slug()), 'demo-section'), array('public' => true, 'capabilities' => array('assign_terms' => 'edit_posts')), array('demo')); add_filter('body_class', array($this, 'add_pn_class'), 10, 3); //Override the template hierarchy for load /templates/content-demo.php add_filter('template_include', array($this, 'load_content_demo')); // Load public-facing style sheet and JavaScript. add_action('wp_enqueue_scripts', array($this, 'enqueue_styles')); add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts')); add_action('wp_enqueue_scripts', array($this, 'enqueue_js_vars')); /* * Define custom functionality. * Refer To http://codex.wordpress.org/Plugin_API#Hooks.2C_Actions_and_Filters */ add_action('@TODO', array($this, 'action_method_name')); add_filter('@TODO', array($this, 'filter_method_name')); add_shortcode('@TODO', array($this, 'shortcode_method_name')); }
/** * Register custom post-types. */ public function register_post_types() { register_via_cpt_core(array(__('Sample', '_s'), __('Samples', '_s'), '_s-samples'), array('menu_icon' => 'dashicons-smiley')); }
/** * Registers our custom post-types * * @since 0.5.0 */ public function register_post_types() { // label overrides go here $labels = array('menu_name' => __('Art Store', 'art-store')); register_via_cpt_core(array(__('Work', 'art-store'), __('Works', 'art-store'), 'art-store-work'), array('menu_icon' => 'dashicons-art', 'rewrite' => array('slug' => 'work'), 'labels' => $labels, 'supports' => array('title', 'editor', 'thumbnail'))); }