Shift8 CDN Plugin
This is a plugin that integrates a 100% free CDN service operated by Shift8, for your Wordpress site. What this means is that you can simply install t …
This is a plugin that integrates a 100% free CDN service operated by Shift8, for your WordPress site. What this means is that you can simply install this plugin, activate and register with our CDN service and all of your static assets on your website will be served through our global content delivery network.
Community Support
If you need support, please head over to our community discourse forum for you to more easily access support resources.
Check out our new Shift8 CDN website
You can now create your own dashboard account to add/remove/manage your sites : Shift8 CDN. Note if you have a site created prior to this dashboard, you can submit a request on the support forums and we can migrate the site for you.
Instructions for setup
- Register for an account by CLICKING HERE
- Once your account is activated, go to the Shift8 CDN dashboard and click “Create Site”
- Enter your site URL exactly as it appears (i.e. https://www.yoursite.com) and click “Add”
- Once added successfully, click “View” to view the site details and copy the API key and CDN prefix
- Install this WordPress plugin and activate
- Go to the plugin settings page (Shift8 > CDN Settings) and enter the site url, API key and CDN prefix and then click “Save Changes”
- Once saved, you can click the “Check” button to ensure everything matches with our system
- Click the “Test URL” to ensure it actually works and if so , click “Enable Shift8 CDN” at the top of the settings page to enable. You can use this to quickly disable if there are any problems.
Instructions for upgrading from a version prior to 1.30
- It is important before you upgrade the plugin to disable the CDN and unregister your site. Your site needs to be unregistered before upgrading, otherwise we will have to manually migrate the site for you
- Once the “Enable Shift8 CDN” setting is disabled, and your site is unregistered, update the plugin via the WordPress plugin update system
- Once the plugin is updated, head to our site to register your account on our systems
- Enter your site URL exactly as it appears (i.e. https://www.yoursite.com) and click “Add”
- Once added successfully, click “View” to view the site details and copy the API key and CDN prefix
- Go back to the plugin settings page (Shift8 > CDN Settings) and enter the site url, API key and CDN prefix and then click “Save Changes”
- Once saved, you can click the “Check” button to ensure everything matches with our system
- Click the “Test URL” to ensure it actually works and if so , click “Enable Shift8 CDN” at the top of the settings page to enable. You can use this to quickly disable if there are any problems.
Newly added entpoints
New endpoints added :
- Frankfurt, Germany
- Ukraine
Free Content Delivery Network for your Static Content
Shift8 has rolled out a consistently-growing CDN with endpoints all over the world. This plugin will make your site load way faster by using latency-based and geographic-based DNS resolution for requests made to your site to be served by an endpoint closest to the user making the request. This means that a user making a request in Mumbai, India will hit the Mumbai server to download the static content from your website, improving performance remarkably.
Current endpoints in use (more added regularly) :
- USA – Northern California
- USA – Northern Virginia
- USA – Dallas, TX
- USA – Miami, FL
- Canada – Toronto
- Europe – London, England
- Europe – Stockholm, Sweden
- Europe – Warsaw, Poland
- Europe – Frankfurt, Germany
- Europe – Ukraine
- Asia Pacific – Hong Kong, China
- Asia Pacific – Tokyo, Japan
- Asia Pacific – Sydney, Australia
- Asia Pacific – Singapore
- Asia Pacific – Mumbai, India
- Latin America – Sao Paulo, Brazil
You can learn more about how the CDN was setup and how it works by reading our blog post.
Want to see the plugin in action?
You can view three example sites where this plugin is live :
Features
- 100% Free CDN for static assets on your site (CSS, JS, Images, Font files and more)
- Geographic and latency based DNS routing of requests to the nearest endpoint server across the globe
- Super easy set up : just install plugin, activate and register to start using within minutes.
Installation
This section describes how to install the plugin and get it working.
e.g.
- Upload the plugin files to the
/wp-content/plugins/shif8-cdn
directory, or install the plugin through the WordPress plugins screen directly. - Activate the plugin through the ‘Plugins’ screen in WordPress
- Navigate to the plugin settings page and define your settings
- Hit the “Register” button to register your site with our CDN network.
- Within a few minutes the change will propagate to all our systems across the network.
Screenshots
Geographic Endpoints for Content Delivery Network
Admin area settings
Before / After CDN performance improvement, taken from Pingdom
FAQ
I tested it on my site and its not working for me! Send us an email to [email protected] or post in the support forums here and we will help. We are constantly improving and updating the plugin also!
I noticed on lazy load images, the CDN isnt being used This is a known issue with how lazy loading is implemented in some scenarios. Currently if you want the CDN to be used for lazy load images, you have to turn lazy load off.
Changelog
1.00
1.01
- WordPress 5 compatibility
1.02
- Got rewrite working for CDN
1.03
1.04
- Fixed str_replace function
1.05
- Now rewriting wp-includes static assets
1.06
1.07
- Added DNS prefetch for CDN
1.08
- Added on/off switch to assist troubleshooting
1.09
- Fixed bug in ruleset where undefined constant was being used
1.10
- Added endpoints and instructional message on settings
1.11
- Updated success register message, hover on register button, incorporate test URL before enabling
1.12
- Fixed bug with register ajax query
1.13
- Expanded API queries and settings for plugin. Added tabbed settings, support tab as well as feature to check and synchronize settings and delete your CDN
1.14
- Fixed bug in static rules
1.15
- Added version query to admin static elements to force refresh on further updates
1.16
- Fixed bug with unregistered initial install
1.17
- Fixed bug to not accidentally stripping URI when replacing urls with CDN for those sites in sub-folders
1.18
- Fixed bug on url validation for registration
1.19
- Force save of email in case user hits register without saving
1.20
- Fixed bug in ajax query processing of data returned. Added progress bar animation for interactions with CDN API. Added more clear instructions for first registering.
1.21
- Fixed bug with static constant of API URL
1.22
- Rewriting all wp-content URLs which weren’t catching every static element prior
1.25
- Added option in admin settings for choosing which type of static files you want the CDN to serve
1.26
- Included webp extensions for media file CDN rewrite function
1.30
- Removed register API query
- Removed email field in settings
- Added instructions in settings area if unregistered
- Updated readme with new instructions
1.31
- Updated instruction note in settings page for registration
1.32
- Added a debug tab in the settings to allow gathering of debug information to assist in troubleshooting problems
1.33
- Removed apache and mysql info gathering for debug info tab
1.34
- Moved debug info into support tab
1.35
- Added ability to submit a purge request across the CDN network from the plugin settings page
1.36
- Implemented a function to submit CDN cache purge request from plugin settings page
1.37
1.38
1.39
1.40
- Site url now supports folders / paths
1.41
- Added support for SVG files
1.42
- Updated help to utilize tooltips, Scheduled cron task to poll and check CDN account status, Utilization of premium CDN endpoints with logic to switch between the two.
1.43
- Improved url rewriting function to accommodate forcing lazy loading of images to go through the CDN
- Will not instantiate the rewrite class unless the plugin enable option is set
1.44
- Minor update for free CDN hostname
1.45
- Fix for error handling on manual check / poll with api
1.46
- Centralize get_transient for api checks
- Improved conditional logic to properly rewrite suffix host
1.47
- Added WP-CLI command to enable/disable CDN
1.48
- Resolved issue with missing file
1.49
- Improved rewriting mechanism for CDN host rewrite, exclude file list now functioning.
1.50
- Implementation of WP-CLI cache flush command. You can now submit a purge request via the command line.
1.51
- Fixed problem with custom WP-CLI command registering
1.52
- Fixed edge case exception with admin JS textarea for hidden path field in CDN settings
1.53
- Fixed bug with image src rewriting to CDN urls
1.54
- Fixed stripping of query string for CDN urls when rewritten.
1.55
- New dash icon for WP Dashboard
1.56
- Improvements for PHP 8 compatibility
1.57
- WordPress 5.7 compatibility
1.58
- WordPress 5.8 compatibility
1.59
1.60
- WordPress 6.0 compatibility
1.61
1.62
- WordPress 6.1 compatibility
1.63
- WordPress 6.2 compatibility
1.64
1.65
- WordPress 6.3 compatibility
1.66
- Fix bug with exclude URLs
1.67
- Fix additional bug with exclude URLs
1.68
- Further improvements to the URL rewriting functions