Пользовательские стили / темы Pimcore Admin
Я пытаюсь "скинуть" интерфейс администратора Pimcore 5. Основываясь на документации Pimcore 5, касающейся пользовательского интерфейса плагина (и других поисковиков, которые я в настоящее время не могу воспроизвести), я понимаю, что могу создать плагин (расширение), который перезаписывает CSS стили при загрузке, с теми, которые я определяю в файлах плагина.css.
Итак, я сгенерировал простой пакет (используя ./console pimcore:generate:bundle
) который выглядит следующим образом:
<?php
namespace CustomBundles\AdminStyleBundle;
use Pimcore\Extension\Bundle\AbstractPimcoreBundle;
class CustomBundlesAdminStyleBundle extends AbstractPimcoreBundle
{
public function getJsPaths()
{
return [
'/bundles/custombundlesadminstyle/js/pimcore/startup.js'
];
}
public function getCssPaths()
{
return [
'/bundles/custombundlesadminstyle/css/pimcore/AdminStyleOverwrites.css'
];
}
public function getEditmodeCssPaths()
{
return [
'/bundles/custombundlesadminstyle/css/pimcore/AdminStyleOverwrites.css'
];
}
}
Файл CSS AdminStylesOverwrites.css
похоже:
.x-panel-header, .x-header, .x-header-noborder, .x-docked, .x-unselectable, .x-panel-header-default, .x-horizontal, .x-panel-header-horizontal, .x-panel-header-default-horizontal, .x-top, .x-panel-header-top, .x-panel-header-default-top, .x-docked-top, .x-panel-header-docked-top, .x-panel-header-default-docked-top, .x-box-layout-ct, .x-noborder-trl {
background-color: #daf5ff;
padding-top: 2px;
padding-bottom: 2px;
}
.x-panel, .x-autowidth-table, .x-grid-header-hidden, .x-box-item, .x-accordion-item, .x-panel-default, .x-tree-panel, .x-tree-lines, .x-grid, .x-collapsed, .x-panel-collapsed, .x-panel-default-collapsed {
background-color: #daf5ff;
padding-top: 2px;
padding-bottom: 2px;
}
.x-panel-header-title-default, .x-accordion-hd, .x-panel-header-title {
background-color: #daf5ff;
padding-top: 2px;
padding-bottom: 2px;
}
Расширение / пакет загружается без ошибок, но после "Очистить кэш и перезагрузить" кажется, что стили не затрагиваются (администратор выглядит так же, и через "элемент проверки" соответствующая информация о стиле, например, не содержит цвет #daf5ff
,
Я понял что-то не так? Кто-нибудь когда-нибудь успешно разрабатывал / обшивал систему Pimcore 5?
Заранее большое спасибо! Габриель
1 ответ
Я понимаю, что я тоже опоздал к этому, но следующее может кому-то помочь. API событий Pimcore можно использовать для добавления css/js для настройки интерфейса администратора. В этом примере подписчик событий используется для прослушивания события пакета CSS_PATHS, а затем добавляется в пользовательский файл CSS.
namespace App\EventListener;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Pimcore\Event\BundleManagerEvents;
use Pimcore\Event\BundleManager\PathsEvent;
class PimcoreAdminListener implements EventSubscriberInterface
{
public static function getSubscribedEvents()
{
return [
BundleManagerEvents::CSS_PATHS => 'onCssPaths',
];
}
public function onCssPaths(PathsEvent $event)
{
$event->setPaths(array_merge($event->getPaths(), [
'/assets/css/my-pimcore-admin-customizations.css'
]));
}
}