21 private $alternativeExtensions;
33 array $alternativeExtensions = []
35 foreach ($alternativeExtensions as
$extension => $newExtensions) {
36 if (!is_string(
$extension) || !is_array($newExtensions)) {
37 throw new \InvalidArgumentException(
38 "\$alternativeExtensions must be an array with format: " 39 .
"array('ext1' => array('ext1', 'ext2'), 'ext3' => array(...)]" 43 $this->alternativeExtensions = $alternativeExtensions;
52 $path = parent::resolveFile($fallbackRule, $file,
$params);
54 $extension = pathinfo($file, PATHINFO_EXTENSION);
55 if (isset($this->alternativeExtensions[
$extension])) {
56 foreach ($this->alternativeExtensions[
$extension] as $newExtension) {
57 $newFile = substr($file, 0, strlen($file) - strlen(
$extension)) . $newExtension;
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
resolveFile(RuleInterface $fallbackRule, $file, array $params=[])
__construct(ReadFactory $readFactory, \Magento\Framework\View\Design\Fallback\RulePool $rulePool, array $alternativeExtensions=[])