Everyone gets frustrated with slow-loading websites, and a fast website generally results in more visitors to your site.
Website performance can vary dramatically because of several different factors, including:
- shared website servers hosting many websites at once
- server computer speed & configuration
- server bandwidth/Internet speed
- visitor’s bandwidth/Internet speed
- visitor’s computer memory & speed
These are just a few things, and we haven’t even gotten to the data of your site itself!
If you’ve noticed your site loads slowly, or you just want to try to increase speed as much as possible, there are a number of items you’ll want to check.
Image size
You probably have lots of photos on your site, right? Images have a big impact on loading speed, so this the first item to address.
Even though ProPhoto already uses downsized versions of of your original uploads when possible, it is still extremely import to size and compress your images for the web before you upload them. Because of the sheer number of images on your site and how many display on a single page, preparing your images for the web might be the single most important thing you can do to improve your site’s performance. Every image you use should be sized to the smallest size that will work and be compressed as much as possible. Don’t optimize only images inserted into posts, pages or galleries. Make sure to properly prepare images uploaded in the customizer, including images used in backgrounds, graphic widgets, and tiles.
As a general rule, creating images for the web should nearly always involve optimization on your computer. This means that you’ll use software like Photoshop or similar to export images properly for the web, applying compression to your photos and graphics. This is a great video explaining Photoshop’s built-in optimizer called “Save As for Web and Devices”:
For those without Photoshop a popular tool is BlogStomp. It’s much more economical and makes sizing and compression (as well as the creation of composite images) a snap. Make sure to test at large browser sizes since images in a responsive site can grow.
It’s not possible for us to suggest a recommended file size, but instead, the best approach is always to have the smallest file size without sacrificing too much visual quality. Experiment and see what looks good to you. For images that will be in galleries or are intended to occupy the full content width of a page, we recommend you start with 3000px in width.
Image Lazyloading
ProPhoto offers an image lazyloader so that images that are never seen aren’t loaded in the browser. This makes for faster page loads. Lazyloading is always on for galleries, which is a big help for galleries with lots of images which might not be viewed by each visitor.
For images that are inserted into posts & pages, lazyloading can be turned on so that as the visitor scrolls the page, images are loaded on-demand. This option is in “ProPhoto > Settings > Site Settings > Misc”.
Image Quantity
Even with lazyloading, it still may be helpful to break up posts with tons of images into smaller posts, or simply insert fewer images, making your site as efficient as possible. If using the optional proofing plugin for galleries, consider using child galleries for very large galleries. An added bonus is that it’s easier to browse a group of 100 or 200 images then a group of 1000.
Posts per page
If your blog displays lots of posts per-page, the page will load more slowly. A lot of posts on one page means a lot of images loading on one page 🙂 You may want to experiment with reducing the number of posts per-page. This setting can be found in WordPress under “Settings” > “Reading”
An alternate approach is to use Excerpt View for your posts – either the standard or grid type. This way, only one image needs to be loaded per-post, and the content of each post is trimmed down to a few lines, enticing your visitor to view the page directly. Of course, the standard and grid excerpts change the look & feel of your blog pages, so this option might not fit the look you want for your blog.
Caching
Caching improves the speed of a website by providing saved information to the browser. ProPhoto already optimizes images so your site loads quickly, but all the stuff going on behind-the-scenes can take time, too – pulling text from the database, running scripts, etc. To help with this, ProPhoto caches some of it’s own proprietary information, like for grids, galleries and customization settings.
Enable ProPhoto cache
Visit your “ProPhoto > Settings > Site Settings > Misc > ProPhoto page cache” screen and turn on the page cache feature, seen here:
This will allow ProPhoto to store a copy of each of your site pages after they have been visited by someone, so the next time that page needs to be loaded, it will use the cached file to load much more quickly. If changes are made to that page or to a part of your design which would affect the page, a new cache will be made the next time someone visits the page.
You can also click the Purge page cache button in this area to clean all cache files from the server manually, though this is rarely ever needed since ProPhoto does this automatically when needed.
Use a caching plugin
A caching plugin can be used instead of the ProPhoto page cache option above. Many caching plugins for WordPress exist and you can try any you like, just be aware that there can be a lot of options, some of which can interfere with ProPhoto. We’ve seen many users have success with WP Super Cache and W3 Total Cache, but there are many others which should work, too.
As a general rule, if you run into problems, clear the plugin cache and test again.
Plugins
Some WordPress plugins can be straight-up memory hogs. While most plugins are helpful, some end up adding a good deal of code to your page, which slows down the site as the server is trying to process the code.
If you’re running plugins on your site, try deactivating all of them at once to see if that helps. If it does, turn them back on one-by-one to find the culprit(s).
Sometimes a badly-coded plugin can really hurt site performance, so you’ll need to weigh the benefits between using the plugin and having faster loading times, or you may want to find a similar plugin to do the job.
Embedded scripts
Embedded javascript in text widgets, the header or in WordPress pages can be resource intensive. If this applies to you, you’ll can experiment with removing widgets with scripts or the scripts themselves from your site to see if that helps. Go to “ProPhoto > Customizer > Layout” to remove widget or adjust widget code. Also look in “ProPhoto > Settings > Advanced”
Custom fonts
ProPhoto makes it easy to apply custom fonts to your site. But as in most things, moderation is key. Each font file is loaded on every page, adding a fraction of a second to the loading speed. Definitely use the fonts that are important for your design but don’t overdo it. Take care to limit the number of custom fonts being used.
Your web server
If you’ve tried all of the fixes above and you’re still not having any luck, there is a good chance that your web server could be the culprit.
Gzip compression
Contact your hosting company tech support about this and them ask about “gzip compression” for your web server. Gzip is a method of compressing files (making them smaller) for faster network transfers. Your hosting tech support should be able to turn on this compression feature for your web server (it’s often on by default) and should be able to confirm when it is working for your site.
If your host support team can’t enable this feature, you might consider moving your site to a hosting company who can enable this option. Gzip compression is now quite standard and is an important part of a fast loading website.
PHP version
Request that your host move you to a recent version of PHP, as newer versions are faster (and more secure). Ideally, you would be on PHP 7 but if that’s not available, go for at least 5.6. We have seen a number of cases where updating to PHP 7 has made resulted in a marked improvement.
Hosting configuration
Having a low value for PHP “memory_limit” can slow things down. Make sure that your configuration is set to a memory limit of 512M. Contact your host for help making this change. Often it involves editing a special file at the root of your site called “php.ini.” Search for “memory_limit” and set it to 512M.
Hosting plan
If you’ve tried everything listed above, and still aren’t having any luck, go in WordPress to “Appearance” > “Themes” and activate a different WordPress theme for your site (preferably a default WordPress theme like “Twenty Sixteen” if you have it). Reload your site several times and see if it makes a big difference. If there is a big improvement, then contact us and we’ll be happy to take a look.
But, if changing to a different theme makes no difference, and you’re still waiting for things to work, then you’ll want to contact your web host technical support and explain your situation. Let them know that you’ve tested your site with several different themes activated and that you’ve deactivated plugins (if applicable), but that you’re still not having any luck. They may ask you to consider a different hosting plan that works better with WordPress. And that might be a good option. WordPress sites now account for almost 25% of all websites running in the entire world, so most hosts are working on hosting plans that work well with WordPress. If you are a really heavy user with lots of proofing galleries or lots of sites you might need to move to a higher performing plan with more space, processing power and memory.