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/minifyIn 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 %}
Attempted to load class "JSMinPlus" from the global namespace. Did you forget a "use" statement? Minify is installed through composer fine (I can see the code in the vendor directory), do we need to register it in symfony in AppKernel.php (normally you use new to add a bundle) or something like that?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.