I do not have access to java or node on my shared host. Is there a way to minify server side, so I can continue to use assetic, without these engines? Uglify uses node and yui-compressor (deprecated anyway) uses java.
Thanks!
I do not have access to java or node on my shared host. Is there a way to minify server side, so I can continue to use assetic, without these engines? Uglify uses node and yui-compressor (deprecated anyway) uses java.
Thanks!
There seem to be 2 filters using only PHP code:
You will need to install the minify php library through composer, and then use the cssmin
and jsminplus
assetic filters.
Just for clarify the steps:
composer require mrclay/minify
In symfony app/config/config.yml
add to assetic config:
# some stuff
assetic:
filters:
# possible another filters
minifycsscompressor: ~
jsminplus: ~
{% stylesheets
<your assets>
filter='minifycsscompressor'
%}
<link rel="stylesheet" href="{{ asset_url }}">
{% endstylesheets %}
{% javascripts
<your assets>
filter='jsminplus'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
I know this is an old topic, but I would like to add a small correction to @AdrianBrault's answer for anyone who stumbles onto this.
When installing the said minify library, you need to use the minifycsscompressor
filter, which uses the MinifyCssCompressorFilter class. The cssmin
uses a different minification library.