Speed Cache documentation
- I. SPEED CACHE INSTALL & UPDATE
- II. PERFORMANCE DASHBOARD
- III. MANAGE CACHED PAGES
- IV. RESOURCES MINIFICATION
- V. CDN INTEGRATION
- VI. SPEED CACHE SETTINGS
Speed Cache comes over the Joomla performance tools (Cache and Gzip) as a natural improvement with a lot of new performance tool, compatibility and features.
- New static cache
- Activate full browser caching
- Cache automatic generation
- Check for Joomla cache activation and duration
- Check for Gzip compression
- Add Expire Headers presence and duration
- Speed cache URL Autoindex activation
- Check PHP version
- Browser cache activation
- Auto Clear cache activation
I. SPEED CACHE INSTALL & UPDATE
Our component is Joomla 3.x compatible. All the features and 3rd party integrations are included in all memberships.
In order to install our component you have to download the extension .zip file and use standard Joomla installer.
1.2 Update & automatic updater
In order to update the extension you can install a new version over the old one by downloading the ZIP file from JoomUnited or use the automatic updater (recommended).
The automatic updater, which push the update notification, is embedded in the Joomla extension you've installed. So you'll get notified like any other extension in the dashboard or using the menu: Extension > Manage > Update menu.
Login to your account to update
You need to login to your JoomUnited account to update all your JoomUnited Joomla extensions. In order to login access the main configuration of the component then click on the Live update tab. At the bottom, you'll find a login button.
Enter your JoomUnited credentials, the same you use to login here @ www.joomunited.com
The button will turn orange, congrats! you can now update all the JoomUnited extensions on this website! If your membership is expired you'll get a renew link and a text that explain that.
II. PERFORMANCE DASHBOARD
After installing the component a dashboard will be accessible through the menu Components > Speed Cache.
The dashboard checks all the performance issues and enhancements you can apply on your Joomla website. All the parameters, except for Browser cache, can be fixed in one click using the buttons Fix it now.
- Check for Joomla cache activation and duration: check if the joomla cache is activated and time is at least set to 30'
- Check for Joomla Gzip compression
- Expire Headers presence and duration in the htaccess file
- Speed cache URL Autoindex activation: check if the URL automatic indexation in activated in Speed Cache configuration
- PHP version: check if PHP7+ is in use
- Browser cache activation: check if the Speed Cache browser cache is activated
- Auto Clear cache activation: check if the automatic cache cleaner is enbled
III. MANAGE CACHED PAGES
3.1 Add URLs to the cache system
To apply Speed Cache static cache and browser cache you need to add your website pages (URL) to the Speed Cache list. From the dashboard click on Manage cached URLs.
From here you'll see the URL list that are already in the cache system.
To add some URL to the cache, you've got 3 solutions:
- Use the button Import URL from menu
- Click on the Add new button add paste a custom URL
- Use some rules to include a set of URLs
The button Import URL from menu will open a lightbox, from which you can import one or several Joomla menu.
From the settings, you can also enable an option to add new menu elements automatically to the cached URLs list. In the case the default configuration values applies.
To add a custom URL to the cache, use the Add new button.
Finally just hit the button state to "publish" (add to cache) the URL (page). Adding a page to the cache will activate static cache and browser cache to the page.
The inclusion rules will help you to add a set of URLs to your cache system. For example, if you want to put in Speed Cache system all your news section where URL is starting by /news you can add the following rule:
The URL inclusion rules offers the possibility to use stars in your URLs, so you can put in cache thousands of URLs with a single request. Here's some useful example of usage
- Add a rule to include all URL based on a prefix (including this prefixed URL): www.domain.com/news*
- Add a rule to include all URL based on a prefix (excluding this prefixed URL): www.domain.com/news/*
- Include a part of an URL from cache: www.domain.com/news/*/themes
3.2 Exclude URLs from cache
The URL exclusion from cache is working in the same way, you can exclude URLs one by one or using rules. To exclude an URL open the tab Cache URL exclusion then New.
The URL exclusion rules offers the possibility to use stars in your URLs, so you can exclude from cache thousands of URLs with a single request. Here's some useful example of usage
- Add a rule to exclude all URL based on a prefix (including this prefixed URL): www.domain.com/news*
- Add a rule to exclude all URL based on a prefix (excluding this prefixed URL): www.domain.com/news/*
- Exclude a part of an URL from cache: www.domain.com/news/*/themes
3.3 Cache by page and user status
As you have noticed, in the URL list you can activate the cache for guest users and/or for logged in users. Indeed, Speed cache is able to handle the cache even for logged in users and therefore for all dynamic contents.
This is something that you can't handle with the Joomla - Page cache plugin.
The fact that you can activate cache for logged in users per page is very flexible and we recommend to run some test on frontend with users accounts on all dynamics content.
3.4 Clean all Joomla caches
Once a page is added to the cache, Joomla will create some cache files, Speed Cache generates static cache (HTML file), and file will be stored in user browser (browser cache).
The Speed Cache cache cleaning can remove all those files and cache in one click, you don't need to clean the Joomla cache separately.
In the setting you can also activate a parameter to clean automatically all those cache on actions. Indeed, on backend/frontend actions like save a content, all cache can be cleaned.
Plus you got a button available all over the Joomla administration to clean all cache in a click.
IV. RESOURCES MINIFICATION
Minification refers to the process of removing unnecessary or redundant data without affecting how the resource is processed by the browser - e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on.
From the dashboard click on Group and minify, then the Scan button to list your website files.
You can group all your JS, CSS and fonts files in a single click. The group file feature includes
- Group all JS files
- Group all CSS files
- Group Fonts
By default, the files listed are the CSS, JS and font contained in your template and some from the media. If you want to minify all the files that are loaded on frontend (on all pages), we recommend to list the files and open the settings.
From here you can select the server folders where your CSS, JS & Fonts are located, for example media/com_hikashop. then just hit the minify green switcher or use the Toggle State button.
V. CDN INTEGRATION
The use of CDN (Content Delivery Network) has been proven to be efficient especially if you have an international audience. It helps serving website media from a local source all over the world. A CDN integration is available with all the major CDN on the market like Cloudflare, Amazon Cloudfront, MaxCDN, KeyCDN and others.
To access, just click on CDN from the dashboard. Then you can add your information there.
VI. SPEED CACHE SETTINGS
6.1 General parameters
Speed cache got some settings accessible from the Dashboard > Configuration link
- The cache life time: Cache life time in minutes. After this delay the cache will be automatically cleared then regenerated
- Use browser cache: Use browser to cache page content. Increase page speed a lot by caching heavy page content, like images, on your hard drive. It can also be be cleared
- Cache file per user: A cache file will be created for each user, to be activated if your website require login. Apply only for logged in users and allow to exclude dynamic elements from cache like username
- Clear cache on admin actions: The cache will be deleted on certain actions on Joomla administration: save, apply, publish, unpublish or trash a content
- Clear cache on front actions: The cache will be deleted on certain actions on Joomla frontend: save, apply, publish, unpublish or trash a content
- Clear also Joomla's cache: In addition of the SpeedCache cache, the Joomla cache will be cleared too
6.2 Automatic cache preloading
The latest parameters are about the automatic cache regeneration. After being cleared, the cache can be be automatically preloaded based the URL list (require cURL extension to work, usually installed).
- Token for cache preloading: The token for cache preloading is used to authenticate the request to regenerate cache. You have also the URL you can use with you crontab to reload it regularly.
- Preload after clearing cache: After being cleared, the cache can be be automatically preloaded based the URL list (require cURL extension to work, usually installed).
- Add Cache-Provider header: it in response when the response is provided by Speed Cache. It can be used for debugging purpose.
- Automatic menu to cache: Automatically add new menus to the cached page list.
- Cache for desktop: Serve the cache for desktop for all devices: Recommended, unless wrong cache version is served
- Cache for tablet: Serve the cache for tablet: Recommended ONLY if you're experiencing wrong cache version served
- Cache for mobile: Serve the cache for mobile: Recommended ONLY if you're experiencing wrong cache version served
- Cache external script: Cache external resources such as script served from Google. Warning: make sure you monitor the performance before and after activation, in some case you may experience performance loss when activated!
- Load module by Ajax: Add an option in every module to activate AJAX loading (asynchrone), to be configured by module.
When "Load module by Ajax" is enable, you will see the parameters at Modules > Advanced tab.
- SpeedCache AJAX loading: Activate the module loading in AJAX (asynchrone) to avoid cache problems with this module
- AJAX auto refresh: Automatic module AJAX refresh period to avoid cache problems with this module
- AJAX refresh interval: Select the AJAX refresh interval for this module (minutes)
6.3 Lazy loading
To access Lazy loading, please go to Dashboard > Configuration link. This feature help you load progressively images when user scroll down the page, useful if you have long page with a bunch of images inside. First, you should enable this parameter, and then you will see these settings below:
- Exclude image less than (width px): Exclude from image lazy loading all images that have less than this width in pixel value. Useful to exclude small icons or logos
- Exclude image less than (height px): Exclude from image lazy loading all images that have less than this height in pixel value. Useful to exclude small icons or logos
- Lazy loading URL inclusion: Include only those URLs for the image lazy loading. You can also include a set of URLs by using rule like: www.website.com/news*
- Lazy loading URL exclusion: Exclude URLs from the image lazy loading. You can also exclude a set of URLs by using rule like: www.website.com/news*
6.4 Minify & group
To access Minify & group, go to Dashboard > Configuration link. Here you can enable group CSS, JS, fonts and Google fonts or exclude some JS and CSS files.
- Include folder: Include folder to get minify file
- Group CSS: Grouping several CSS files into a single file will minimize the HTTP requests number. Use with caution and test your website, it may generates conflicts.
- Group fonts and Google fonts: Group local fonts and Google fonts in a single file to be served faster.
- Defer CSS: Call CSS files at the end of the page load to eliminate render blocking elements
- Defer JS: Call JS files at the end of the page load to eliminate render blocking elements
- File exclusion: To avoid conflict or errors you may exclude files from the group process. Only relative path like in the example.
6.5 Default values
To access Default Values, go to Dashboard > Configuration link. These are the default values that applies to new URL when added in the Speed Cache system.
- Caching for guest: Caching this URL for guest users
- Preload for public: Preload this URL for public users
- Caching for logged in: Caching this URL for logged in users
- Preload for logged in: Preload this URL for logged in users
- Preload per user: Preload this URL per user
- Exclude cache for public: Exclude URL from cache for public users
- Exclude cache for logged in: Exclude URL from cache for logged in users
To access CDN, go to Dashboard > Configuration link. Then you activate CDN, and fill your CDN information here.
- CDN URL: add your CDN URL, without the trailing slash (at the end)
- CDN Content: Your Joomla content served through CDN resources, separated by comma
- Exclude Content: Exclude file type or directories from CDN network
- Relative path: Enabled by default, Enable/Disable the CDN for relative paths resources. Used for some compatibilities with specific Joomla plugins.
6.7 ImageRecycle integration
ImageRecycle is a 3rd party image compression service: https://www.imagerecycle.com/
We've added the service in the Speed Cache configuration because we consider it's a big performance improvement but it's not mandatory to use it. Our members can get a 20% OFF coupon on all membership from the configuration page.
After installing, you can compress the image and pdf files at Components > Image Recycle.
For more information you can go here: https://www.imagerecycle.com/cms/joomla
To access Import/Export, go to Dashboard > Configuration link. Now you can see Import/Export configuration.
Website optimization takes time and importing a file to get back all your extension configuration is faster. From here, you can Import or Export a json file.