If you using Magento 2.2.4 version for your web store and face problem about not able to apply new theme or change theme. That is because Magento 2.2.4 know issue. Here is github URL for same, you can find more information there.
If you want to fix your own with directly quick solution in core file ( preferable is override or create a magento extension):
Replace below code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
/** * Store the area associated with a template so that it will be returned by getDesignConfig and getDesignParams * * @param string $templateId * @return $this * @throws \Magento\Framework\Exception\MailException */ public function setForcedArea($templateId) { if ($this->area) { throw new \LogicException(__('Area is already set')); } $this->area = $this->emailConfig->getTemplateArea($templateId); return $this; } |
With below code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
/** * Store the area associated with a template so that it will be returned by getDesignConfig and getDesignParams * * @param string $templateId * @return $this * @throws \Magento\Framework\Exception\MailException */ public function setForcedArea($templateId) { if (!isset($this->area)) { $this->area = $this->emailConfig->getTemplateArea($templateId); } return $this; } |
Now you can change or apply Magento 2.2.4 theme. Enjoy 🙂