*/ class ContentObjectService { /** * @var ContentObjectRenderer */ protected $contentObjectRenderer; /** * StdWrapService constructor. * @param ContentObjectRenderer|null $contentObject */ public function __construct(ContentObjectRenderer $contentObject = null) { $this->contentObjectRenderer = $contentObject ?? GeneralUtility::makeInstance(ContentObjectRenderer::class); } /** * This method use $name and $conf and passes it directly to cObjGetSingle. * * @param string $name * @param array $conf * @return string */ public function renderSingleContentObject($name = '', $conf = []) { return $this->contentObjectRenderer->cObjGetSingle($name, $conf); } /** * Very often cObjGetSingle is used with 'field' as $name and 'field.' as $conf with this * method you can pass the array and the $key that is used to access $conant and $conf from $array. * * @param array $array * @param string $key * @return string */ public function renderSingleContentObjectByArrayAndKey($array = [], $key = '') { $name = isset($array[$key]) ? $array[$key] : []; $conf = isset($array[$key . '.']) ? $array[$key . '.'] : ''; if (!is_array($conf)) { return $name; } return $this->renderSingleContentObject($name, $conf); } }