Как добавить magento frontend css в бэкэнд?
У меня есть блок, который появляется в бэкэнде и добавляет файл css с помощью обычной команды:
$this->getLayout()->getBlock('head')->addCss('mymodule/css/filename.css');
И это должно работать, за исключением того, что он ищет только файл в skin / adminhtml - и я хочу включить файл из skin / frontend, потому что именно там он сейчас находится.
Я временно преодолеваю это мерой грубой силы копирования файла из skin/frontend/default/mymodule/css/filename.css
в skin/adminhtml/default/mymodule/css/filename.css
, но я бы предпочел обратиться к нему напрямую. Есть ли способ заставить команду addCss выглядеть во внешнем интерфейсе вместо adminhtml?
1 ответ
Если это действительно новый файл CSS для пользовательского модуля, он должен находиться в скине / adminhtml / default / default / css /, как и любой другой отдельный ресурс скина.
Редактировать на основе комментария OP:
Поскольку это ваш новый файл, вы можете переключить область для core/design_package
Экземпляр из adminhtml для внешнего интерфейса, а затем вернуть его. Тем не менее, я предпочел бы увидеть таблицу стилей в skin / adminhtml / default / default /, которая вызывает
@import('../../../frontend/base/default/css/file.css');
Для этого варианта использования не существует абсолютной наилучшей практики, так что решать вам.