modules[ $module_name ] = $class_name::instance(); } } } /** * Get Modules. * * @param string $module_name Module Name. * * @since 0.0.1 * * @return Module_Base|Module_Base[] */ public function get_modules( $module_name = null ) { if ( $module_name ) { if ( isset( $this->modules[ $module_name ] ) ) { return $this->modules[ $module_name ]; } return null; } return $this->_modules; } /** * Required Files. * * @since 0.0.1 */ private function require_files() { require UAEL_DIR . 'base/module-base.php'; } /** * Constructor. */ public function __construct() { $this->require_files(); $this->register_modules(); } }