Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
RendererList.php
Go to the documentation of this file.
1 <?php
7 
13 {
19  protected $rendererTemplates = [];
20 
30  public function getRenderer($type, $default = null, $rendererTemplate = null)
31  {
33  $renderer = $this->getChildBlock($type) ?: $this->getChildBlock($default);
34  if (!$renderer instanceof BlockInterface) {
35  throw new \RuntimeException('Renderer for type "' . $type . '" does not exist.');
36  }
37  $renderer->setRenderedBlock($this);
38 
39  if (!isset($this->rendererTemplates[$type])) {
40  $this->rendererTemplates[$type] = $renderer->getTemplate();
41  } else {
42  $renderer->setTemplate($this->rendererTemplates[$type]);
43  }
44 
45  if ($rendererTemplate) {
46  $renderer->setTemplate($rendererTemplate);
47  }
48  return $renderer;
49  }
50 }
$type
Definition: item.phtml:13