We have the Porto theme installed on Magento 18.104.22.168. It works well on the desktop version but loads very slow on a smart phone (even though it's a 100% responsive mobile friendly theme) because we have something like 40 products on the front page. What is the easiest way to keep the same responsive theme but limit the number of products that show up on the front page of mobile devices? We want to keep the same domain such as www.myDomain.com (same as the desktop verion) because of SEO.
My suggestion is to AJAX for additional products on devices that meet your requirements - in this case large-screen devices. With this approach, you would include the minimum amount of products on your homepage and then add a script to load additional products if the screen is larger than whatever point you feel is a reasonable division (maybe 800 or 1000 pixels?). The best may be to create a module with a custom controller to handle the request, but in this case, it isn't necessary. You could create a page with an "Empty" page template. Then, on that page, add a widget that had the remainder of the products in it.
<head /> which means they are render-blocking - they must fully download before anything on the page begins to render. If you can remove some of those files, or even move them to the end of the
<body /> it would enhance performance.
Responsive images can also be very beneficial.