/** * Constructor * * @since 1.0 */ public function __construct() { $this->define_constants(); $this->includes(); add_action('init', array($this, 'load_plugin_textdomain')); add_action('admin_init', array($this, 'install_upgrade_check')); add_action('admin_notices', array($this, 'admin_notices')); add_action('widgets_init', array($this, 'register_widget')); add_action('after_setup_theme', array($this, 'register_nav_menus')); add_filter('wp_nav_menu_args', array($this, 'modify_nav_menu_args'), 9999); add_filter('wp_nav_menu', array($this, 'add_responsive_toggle'), 10, 2); add_filter('wp_nav_menu_objects', array($this, 'add_widgets_to_menu'), 10, 2); add_filter('megamenu_nav_menu_objects_before', array($this, 'apply_depth_to_menu_items'), 5, 2); add_filter('megamenu_nav_menu_objects_before', array($this, 'apply_megamenu_settings_to_menu_items'), 6, 2); add_filter('megamenu_nav_menu_objects_before', array($this, 'apply_megamenu_classes_to_menu_items'), 7, 2); add_filter('megamenu_nav_menu_css_class', array($this, 'prefix_menu_classes')); add_filter('black_studio_tinymce_enable_pages', array($this, 'megamenu_blackstudio_tinymce')); add_action('admin_enqueue_scripts', array($this, 'admin_enqueue_scripts'), 9); // add 'go pro' link to plugin options $plugin = plugin_basename(__FILE__); add_filter("plugin_action_links_{$plugin}", array($this, 'upgrade_to_pro_link')); register_deactivation_hook(__FILE__, array($this, 'delete_version_number')); add_shortcode('maxmenu', array($this, 'register_shortcode')); add_shortcode('maxmegamenu', array($this, 'register_shortcode')); if (is_admin()) { new Mega_Menu_Nav_Menus(); new Mega_Menu_Widget_Manager(); new Mega_Menu_Menu_Item_Manager(); new Mega_Menu_Settings(); } $mega_menu_style_manager = new Mega_Menu_Style_Manager(); $mega_menu_style_manager->setup_actions(); }
/** * Constructor * * @since 1.0 */ public function __construct() { $this->define_constants(); $this->includes(); add_filter('wp_nav_menu_args', array($this, 'modify_nav_menu_args'), 9999); add_filter('wp_nav_menu', array($this, 'add_responsive_toggle'), 10, 2); add_filter('megamenu_nav_menu_css_class', array($this, 'prefix_menu_classes')); add_action('init', array($this, 'load_plugin_textdomain')); add_filter('wp_nav_menu_objects', array($this, 'add_widgets_to_menu'), 10, 2); add_action('admin_notices', array($this, 'admin_notices')); add_action('megamenu_after_save_settings', array($this, 'clear_caches')); add_action('megamenu_after_save_settings', array($this, 'regenerate_css')); add_action('megamenu_after_widget_add', array($this, 'clear_caches')); add_action('megamenu_after_widget_save', array($this, 'clear_caches')); add_action('megamenu_after_widget_delete', array($this, 'clear_caches')); add_action('megamenu_after_theme_save', array($this, 'regenerate_css')); add_action('megamenu_after_theme_delete', array($this, 'regenerate_css')); add_action('megamenu_after_theme_revert', array($this, 'regenerate_css')); add_action('megamenu_after_theme_duplicate', array($this, 'regenerate_css')); add_action('megamenu_after_theme_create', array($this, 'regenerate_css')); add_action('megamenu_after_install', array($this, 'record_version_number')); add_action('megamenu_after_install', array($this, 'regenerate_css')); add_action('megamenu_after_update', array($this, 'record_version_number')); add_action('megamenu_after_update', array($this, 'regenerate_css')); register_deactivation_hook(__FILE__, array($this, 'delete_version_number')); add_shortcode('maxmenu', array($this, 'register_shortcode')); add_action('after_switch_theme', array($this, 'regenerate_css')); if (is_admin()) { new Mega_Menu_Nav_Menus(); new Mega_Menu_Widget_Manager(); new Mega_Menu_Theme_Editor(); $this->install_upgrade_check(); } $mega_menu_style_manager = new Mega_Menu_Style_Manager(); $mega_menu_style_manager->setup_actions(); }