Watch Quick Video
Blog And Shop SEO URL
The Blog And Shop SEO URL app replaces Odoo's default,
ID-heavy URLs with clean, readable web addresses. By default, Odoo appends a database ID to every product,
category, and blog link (e.g., /shop/desk-1). This module safely intercepts Odoo's core routing map to
strip out these IDs, resulting in aesthetically pleasing, keyword-focused URLs (e.g., /shop/desk).
Search engine crawlers prioritize clean, descriptive URLs. By removing numerical database artifacts, you
drastically improve your chances of ranking higher in Google and other search engines. The module provides
a new "Website Url" field directly on your products allowing you to manually override and customize
exactly how your links appear to the public.
Built with advanced routing safeguards, the module automatically handles legacy redirects, ensuring that
old Google links or bookmarks containing the numeric ID gracefully redirect users to your new, clean URL
structure without ever causing a 404 crash.
Key Features
1. Blogs list view (Before) — duplicate blog names exist across multiple websites before the module enforces unique urls.
2. eCommerce Categories list (Before) — categories share the same name "cat" across different websites, causing ambiguous routing without unique urls.
3. Product form (Before) — the Sales tab shows the eCommerce Shop section without any Website url field, relying on Odoo's default numeric ID-based URLs.
4. Products backend list (Before) — multiple products sharing the same name "my product" across different websites, highlighted to show url conflict.
5. Blog Post Pages list (Before) — Website URLs still contain numeric IDs (e.g., /blog/myblog-4/my-blog-post-9), demonstrating the messy default Odoo URL structure.
6. Blog Post Pages list for My Website 2 (Before) — numeric IDs remain in all blog post URLs across a second website, confirming the problem exists site-wide.
7. Blogs list (After) — the module now enforces unique blog urls per website (e.g., myblog, myblog-1), preventing duplicate URL collisions across all sites.
8. Blog Post Pages list (After) — all blog post URLs are now completely clean and ID-free (e.g., /blog/myblog/my-blog-post), fully SEO-optimized and human-readable.
9. eCommerce Categories list (After) — categories now have unique urls per website (e.g., cat, cat-1), ensuring clean and conflict-free category URLs across all sites.
10. Products backend list (After) — duplicate product names are automatically resolved with unique urls per website (e.g., my product, my product-1), preventing routing conflicts.
11. Product form with Website url field (After) — the new "Website url" field is now visible on the Sales tab, showing the auto-generated clean url "my-product" ready for customization.
12. Live Shop page — the status bar confirms a clean product hover URL (/shop/warranty) with zero numeric IDs, and category tabs display without any database identifiers.
13. Clean Product URL — the individual product page (Warranty) is now accessible at a keyword-rich, ID-free URL (/shop/warranty), ideal for search engine indexing.
14. Clean Category URL — the eCommerce category page (Chairs) loads at /shop/category/chairs with a clean breadcrumb trail, completely free of numeric database IDs.
15. Clean Product Detail URL — the product page (Office Chair Black) is served at /shop/office-chair-black with a descriptive breadcrumb (All Products / Chairs / Office Chair Black), boosting SEO rankings.
16. Blog listing page — the status bar previews a clean blog post URL (/blog/travel/maui-helicopter-tours) with no numeric IDs, confirming all blog links are SEO-friendly.
17. Clean Blog Category URL — the Travel blog category page loads at a clean, readable address (/blog/travel) with absolutely no numeric database IDs in the URL.
18. Clean Blog Tag Filter URL — filtering posts by multiple tags generates a clean URL (/blog/tag/adventure,hotels) with human-readable tag names instead of numeric IDs.
19. Clean Blog Post URL — the live blog post (Sierra Tarahumara) is accessible at /blog/travel/sierra-tarahumara, a perfectly structured, ID-free URL that search engines love.
20. Clean Auto-Generated Product URL — the product "my product-1" is live at /shop/my-product-1, showing the module's auto-generated, ID-free url working perfectly on the frontend.
21. Custom Numeric url — the Website url field on this product is manually set to "123", showing that any custom value (even numeric) can be used as a fully controlled, override url.
22. Custom url Live on Frontend — after manually setting the Website url to "123" in the backend (see screenshot 21), the same product is now instantly accessible at /shop/123, confirming any custom url value works as a live URL.
23. Duplicate Name Validation — the module intelligently blocks duplicate names with a clear errors maintaining URL uniqueness across all websites.
Our solutions focus on your problems
- Odoo Implementation
- Odoo Customization
- ERP Development and Implementation
- Odoo Ipass Cloud
- AI for Odoo
- Odoo Apps
- Aws Marketplace Products
- Business Engines
Our Pricing includes User Manual, 90 Days Support (Monday-Friday 10am to 7pm IST) and One time Setup
• Works & tested on standard installations of Odoo with no third party apps,
• Free support only for odoo installations with no third party apps,
• Paid support available for Odoo installations with third party apps.
Prefortune is a Odoo Official Partner, Odoo Development company. Our philosophy is to use Open Source tools and technologies to provide cost effective and green solutions for our customers.
Prefortune Technologies LLP is working on web development, Mobile development, and Odoo ERP.
If you need any help or want more additional features, you may contact us through:
Alternative Products
These other products might interest you