provides, true ); } /** * Registers items with the container * * @return void */ public function register(): void { $this->getContainer()->add( 'plugin_family_model', PluginFamilyModel::class ); $this->getContainer()->add( 'plugin_family_controller', PluginFamilyController::class ); $this->getContainer()->add( 'settings', Settings::class ) ->addArgument( 'options' ); $this->getContainer()->add( 'settings_render', Render::class ) ->addArguments( [ new StringArgument( $this->getContainer()->get( 'template_path' ) . '/settings' ), 'plugin_family_model', ] ); $this->getContainer()->add( 'settings_page', Page::class ) ->addArguments( [ new ArrayArgument( [ 'slug' => WP_ROCKET_PLUGIN_SLUG, 'title' => WP_ROCKET_PLUGIN_NAME, 'capability' => 'rocket_manage_options', ] ), 'settings', 'settings_render', 'beacon', 'db_optimization', 'user_client', 'delay_js_sitelist', 'template_path', 'options', ] ); $this->getContainer()->addShared( 'settings_page_subscriber', Subscriber::class ) ->addArguments( [ 'settings_page', 'plugin_family_controller', ] ); } }