This tutorial will guide you on how to enable and manage SEO-friendly URLs in Prestashop 1.7.x.
By default, PrestaShop’s deep URLs (that is, specific pages rather than online the domain name) are rather uninformative to both the customer and search engines: a URL such as http://www.myprestashop.com/product.php?id_product=27 does not help visitors know what product is on that page. Friendly URLs are the way to achieve that, and get for instance http://www.myprestashop.com/2-music-players/27-ipod-nano-green.
As you can see in the second example above, both categories and products can have a friendly URL: in the example above, id_category=2 becomes 2-music-players, and id_product=27 becomes 27-ipod-nano-green. While the ID number cannot be removed by default, the words can be either generated from the category/product name, or written by hand. This is done directly in the configuration page for the product or the category (in the Catalog menu): the “Friendly URL” field can be found directly on the main configuration page of a category and under the “SEO” tab of the configuration page of a product.
Friendly URLs only work with a server setup that supports URL rewriting (through the Apache Web Server mod_rewrite feature, for instance). Make sure to check that your server does (ask your hosting provider!), as it can make your shop completely unavailable to customers if you enable friendly URLs and the server does not support it!
In order to enable SEO-friendly URLs
Login to your PrestaShop admin panel.
Open the CONFIGURE > Shop Parameters > Traffic section.
Scroll down to Set up URLs section and find Friendly URL. Change this option to YES if you know that your server supports URL rewriting.
Accented URL. PrestaShop is able to produce URL with special characters, for products with non-ASCII names. You can disable that option here.
Redirect to Canonical URL. A given PrestaShop page can have many URLs, most often when there are parameters to consider: for instance, http://example.com/product.php?id=5&option1 and http://example.com/product.php?id=5&option2 point to the very same product, only one difference. Since you want your product to have a single URL and not many duplicate ones, you should enable Canonical URLs. Canonical URLs are a way to eliminate self-created duplicate content – which can dramatically bring your search engine rank down, as this is considered spam. To avoid search engines thinking you are spamming their index, PrestaShop uses standard rel=”canonical” link tag to indicate which is the one base URL for a given content. While it is highly recommended to enable this option, it also depends on your theme actually implementing correctly the <link> header tag. Ask the theme designer for more information.
There are three options:
No redirection. You might get duplicate URLs.
301 Move Permanently. Returns the HTTP 301 status code, pointing to the main URL and notifying search engines that this is the only URL to take into account.
302 Moved Temporarily. Returns the HTTP 302 status code, pointing to the main URL and notifying search engines that the main URL might change later.
Disable Apache’s MultiViews option. Apache is the most popular web server and is most likely the one your web host uses for your site (although you should check this for yourself). Multiviews is a content negotiation system: when enabled, the web server tries to serve the user a page in what it thinks is the best matching language version, under the same URL. Unfortunately, this might bring trouble to PrestaShop’s friendly URLs feature. If this is the case, you can try to disable multi-views with this option.
Disable apache mod security. mod_security is a module of the Apache web server, which acts as a firewall, protecting your server from intrusions. It can, however, block some key features, or even produce errors in some configuration. In such case, disable that firewall here.
Check out the great variety of our PrestaShop templates!
Feel free to check the detailed video tutorial below: