In short. Edit route patterns under Shop Parameters > Traffic & SEO > SEO & URLs > Schema of URLs, retaining the mandatory keywords shown beside each field.
Definition: A URL route pattern in PrestaShop is a template for a page address, combining fixed text with placeholders such as
{id}. Route patterns are edited in the Schema of URLs block, with the required placeholders retained.
As of October 2026, this entry follows the PrestaShop 8 documentation and uses the version 8.2.0 source for the required fields and examples.
Key facts
- PrestaShop's SEO and URLs guide states that Schema of URLs appears only when friendly URLs are enabled.
- The route form source marks mandatory keywords with an asterisk in each field's help text.
- The routing source requires product patterns to retain
id,id_product_attributeandrewrite.
Where are route patterns edited?
The route form places these settings under Shop Parameters > Traffic & SEO > SEO & URLs > Schema of URLs. Its fields include Route to products, Route to category, Route to supplier, Route to brand, Route to page, Route to page category and Route to modules. Each field has its own Keywords help text; the available placeholders depend on the selected route.
The user guide places individual product, category and static page friendly URLs in their respective configuration pages. Schema of URLs controls how the route is assembled. After editing a pattern and retaining its starred keywords, save the changes.
Which placeholders must remain?
The default route definitions and validateRoute() in Dispatcher.php require these placeholders:
| Route field | Required placeholders |
|---|---|
| Products | {id}, {id_product_attribute}, {rewrite} |
| Category | {id} |
| Supplier | {id} |
| Brand | {id} |
| Page | {id} |
| Page category | {id} |
| Modules | {module}, {controller} |
The form source adds the asterisk to the keyword's display label. The pattern itself uses braces around the keyword, without that asterisk.
How do separators work inside a pattern?
The versioned routing source defines this product pattern:
{category:/}{id}{-:id_product_attribute}-{rewrite}{-:ean13}.html
{category:/} appends a slash when the category value is present. {-:id_product_attribute} and {-:ean13} prepend a hyphen when their values are present. During URL generation, empty values produce no placeholder text or attached separator.
The product pattern can omit the optional category and barcode fields while retaining the required keywords:
{id}{-:id_product_attribute}-{rewrite}.html
Related terms
- How do I enable friendly URLs in PrestaShop?
- How do I configure canonical redirects in PrestaShop?
- How do I edit a PrestaShop product's search metadata?
FAQ
Why is Schema of URLs missing?
Check whether you have enabled friendly URLs. The SEO and URLs guide makes this a condition for displaying the block.
Should I type the asterisk into the pattern?
Use the keyword inside braces, such as {id}. The form source uses the asterisk as a mandatory-field marker in the help text.
Can I remove the product ID?
Keep {id} in the product pattern. The route validator treats it as required.
Sources
- PrestaShop, "SEO and URLs", undated
- PrestaShop, "UrlSchemaType.php", version 8.2.0
- PrestaShop, "Dispatcher.php", version 8.2.0
- PrestaShop, "Dispatcher.php, raw source", version 8.2.0
Check how a page reads to answer engines. Open the GEO score analyzer