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() { ?>

ACFist requires Advanced Custom Fields v5.9.0+

plugin_dir() . 'includes/' . $directory_name ); $file_names = glob( $path . '*.php' ); foreach ( $file_names as $filename ) { if ( file_exists( $filename ) ) { require_once $filename; } } } public function load_files( $file_names = array() ) { foreach ( $file_names as $file_name ) { $this->load_file( $file_name ); } } public function load_file( $file_name = '' ) { if ( file_exists( $path = $this->plugin_dir() . 'includes/' . $file_name . '.php' ) ) { require_once $path; } } } } function acfist() { return new ACFist(); } acfist();