SFCC image cleaner to remove the unused images and also optimize the ones that are still being used.
It helps to improve the speed of the site import/export as it's usually main cause of slowness.
It also gives a text report with the following information:
- Total images referenced in the XML
- Total images in the image folder
- Total images that were copied
- Total images that were not copied because they are not used
- Total images in XML not found in the folder
- Total size of the optimized image folder
npm install -g sfcc-images-cleaner
A Command-line Interface is available and can be used as the example below:
source-catalog-folder: relative path of the catalog folder where the images are.
output-folder: relative path of the folder where you want to have the cleaned folder.
sfcc-images-cleaner <source-catalog-folder> <output-folder>
sfcc-images-cleaner ../default-catalog/ ../default-clean-catalog --file=catalog.xml
This option is mandatory and needs to be filled. It is the XML file where you want to map with your catalog image folder.
2 types of cleaning exists:
- catalog
- library
In case the catalog type is chosen, you must be passing the catalog.xml
as file
value
This will search for all images that can be found in the images
attributes
sfcc-images-cleaner <source-catalog-folder> <output-folder> --file=catalog.xml-
Library can be very complex as it contains various types of custom attributes
and values.
It will parse all the content and find any image path. The regexp
is defined in sfcc.config.js
and can be adapted to your own need.
This will mostly check the images within content that has the online-flag
set to true and skip the others.
sfcc-images-cleaner <source-catalog-folder> <output-folder> --file=library.xml --type=library
Output an image optimised version of the cleaned folder.
Optim option can be passed to enable the feature. Be aware that can take time depending on the number of images you have
sfcc-images-cleaner ../default-catalog/ ../default-clean-catalog --file=catalog.xml --optim
Quality can be defined from a range 0
(worst) to 100
(perfect).
By default, if nothing is passed the value 60 is taken. The option can work only if optim
options is set
sfcc-images-cleaner ../default-catalog/ ../default-clean-catalog --file=catalog.xml --optim --quality=80
You can export the results into a worksheet. You can define the format yourself but by default it is CSV if you forget the extension.
The file is created in the output folder
sfcc-images-cleaner ../default-catalog/ ../default-clean-catalog --file=catalog.xml --export=myFile
sfcc-images-cleaner ../default-catalog/ ../default-clean-catalog --file=catalog.xml --export=myFile.csv
sfcc-images-cleaner ../default-catalog/ ../default-clean-catalog --file=catalog.xml --export=myFile.xlsx