AccessControl::NO_ACCESS_RESTRICTION, ]; /** @var ViewInBrowserController */ private $viewInBrowserController; public function __construct(ViewInBrowserController $viewInBrowserController) { $this->viewInBrowserController = $viewInBrowserController; } public function view(array $data) { try { $viewData = $this->viewInBrowserController->view($data); $this->_displayNewsletter($viewData); } catch (\InvalidArgumentException $e) { $this->_abort(); } } public function _displayNewsletter($result) { header('Content-Type: text/html; charset=utf-8'); echo $result; exit; } public function _abort() { WPFunctions::get()->statusHeader(404); exit; } }