wp = $wp; } public function init($shouldDisplay): ?Notice { if (!$shouldDisplay || $this->wp->getTransient(self::OPTION_NAME)) { return null; } return $this->display(); } private function display(): ?Notice { return null; } public function disable() { $this->wp->setTransient(self::OPTION_NAME, true, self::DISMISS_NOTICE_TIMEOUT_SECONDS); } }