define_constants(); $this->add_actions(); } protected function define_constants() { $plugin_data = get_file_data( __FILE__, [ 'Plugin Name', 'Version' ], 'acfist' ); self::$plugin_basename = plugin_basename( __FILE__ ); self::$plugin_name = array_shift( $plugin_data ); self::$plugin_slug = strtolower( self::$plugin_name ); self::$version = array_shift( $plugin_data ); self::$plugin_dir = trailingslashit( plugin_dir_path( __FILE__ ) ); self::$plugin_url = trailingslashit( plugin_dir_url( __FILE__ ) ); } protected function add_actions() { add_action( 'plugins_loaded', [ $this, 'init' ] ); } public function init() { if ( ! $this->is_acf_active() ) { add_action( "after_plugin_row_{$this->plugin_basename()}", [ $this, 'add_plugin_notice' ] ); return; } load_plugin_textdomain( 'acfist', false, $this->plugin_dir() . '/languages' ); add_action( 'admin_init', [ $this, 'admin_init' ] ); do_action( 'acfist_init', $this ); } public function admin_init() { $this->load_files( [ 'admin-column/class', ] ); } public function add_plugin_notice() { ?>