renderer = $renderer; $this->features_controller = $features_controller; $this->settings = $settings; } /** * Set common data for template and display template * @param string $template * @param array $data */ function displayPage($template, array $data = []) { $defaults = [ 'feature_flags' => $this->features_controller->getAllFlags(), 'referral_id' => $this->settings->get(ReferralDetector::REFERRAL_SETTING_NAME), ]; try { if (class_exists(Debugger::class)) { DIPanel::init(); } echo $this->renderer->render($template, $data + $defaults); } catch (\Exception $e) { $notice = new WPNotice(WPNotice::TYPE_ERROR, $e->getMessage()); $notice->displayWPNotice(); } } }