cdnAssetUrl = $cdnAssetUrl; } public function getProperties() { return [ 'title' => $this->getTitle(), 'content' => $this->getContent(), 'description' => $this->getDescription(), 'categories' => $this->categories, 'inserter' => $this->inserter, 'blockTypes' => $this->blockTypes, 'source' => $this->source, 'viewportWidth' => $this->viewportWidth, ]; } abstract protected function getContent(): string; abstract protected function getTitle(): string; protected function getDescription(): string { return ''; } }