placeholderProvider = $placeholderProvider; } /** * @param $placeholders * @param $content * @param $context * * @return string|string[] */ public function getContent( $placeholders, $content, $context= null) { $toReplace = array(); $toReplaceWithValues = array(); if(!$context) { $context = Brizy_Content_ContextFactory::createEmptyContext(); } if ( $placeholders ) { foreach ( $placeholders as $contentPlaceholder ) { try { $placeholder = $this->placeholderProvider->getPlaceholder( $contentPlaceholder->getName() ); if ( $placeholder ) { $toReplace[] = $contentPlaceholder->getUid(); $toReplaceWithValues[] = $placeholder->getValue( $context , $contentPlaceholder ); } else { $toReplace[] = $contentPlaceholder->getPlaceholder(); $toReplaceWithValues[] = ''; } } catch ( Exception $e ) { continue; } } } $content = str_replace( $toReplace, $toReplaceWithValues, $content ); return $content; } }