This bundle provides Sass compilation for multiple eZ Publish siteaccesses
You will need to install https://github.com/sensational/sassphp, (*1)
Either add xrow/sass-bundle
to you composer.json or run composer require xrow/sass-bundle
., (*2)
"require": { "xrow/sass-bundle": "~1.0", },
Make sure the Bundle is loaded in EzPublishKernel.php or AppKernel.php, (*3)
public function registerBundles() { $bundles = array( new Xrow\SassBundle\XrowSassBundle(), ); }
Configure the siteaccess settings in a loaded configuration file (i.e. Config.yml), (*4)
xrow_sass: siteaccess: my_siteaccess: settings: 'brand-primary': "#ffff00" my_second_siteaccess: settings: 'brand-primary': "#0000ff" my_siteaccess_group: file: "bootstrap/scss/bootstrap.scss" settings: 'gray-dark': "#00ff00" 'brand-primary': "#00ff00" 'brand-info': "#00ff00" 'my-color': "red"
You can specfiy file and settings for siteaccesses or siteaccessgroups, file specifies the SASS file to use, settings defines a list of SASS variables wich should be included., (*5)
If a siteacces is in a siteaccesgroup it will gain all settings defined in the associated siteaccesgroup., (*6)
Settings defined below a siteaccess will override settings defined in a siteaccessgoup., (*7)
If neither the siteaccess or the associated siteaccesgroup has file attribute specified, the siteaccess will be skipped., (*8)
Run:
ezpublish/console sass:compile
and your CSS files will be placed in web/css/{{siteaccessname}}.css, (*9)
To load the CSS, simply create a link tag like the following:, (*10)
html
<link rel="stylesheet" href="css/{{ ezpublish.siteaccess.name }}.css" />
, (*11)