load_dependencies(); $this->init_hooks(); } /** * Load required files */ private function load_dependencies() { require_once UMZUGSLISTE_PLUGIN_DIR . 'includes/class-cpt.php'; require_once UMZUGSLISTE_PLUGIN_DIR . 'includes/class-admin-menu.php'; } /** * Initialize WordPress hooks */ private function init_hooks() { add_action( 'init', array( $this, 'init' ) ); } /** * Initialize plugin components */ public function init() { // Initialize CPT Umzugsliste_CPT::get_instance(); // Initialize admin menu if ( is_admin() ) { Umzugsliste_Admin_Menu::get_instance(); } } } /** * Activation hook */ function umzugsliste_activate() { // Initialize CPT to register post type require_once UMZUGSLISTE_PLUGIN_DIR . 'includes/class-cpt.php'; Umzugsliste_CPT::get_instance(); // Flush rewrite rules flush_rewrite_rules(); } register_activation_hook( __FILE__, 'umzugsliste_activate' ); /** * Deactivation hook */ function umzugsliste_deactivate() { // Flush rewrite rules flush_rewrite_rules(); } register_deactivation_hook( __FILE__, 'umzugsliste_deactivate' ); /** * Initialize plugin */ function umzugsliste_init() { return Umzugsliste::get_instance(); } add_action( 'plugins_loaded', 'umzugsliste_init' );