v8x-v9x Advanced SEO Friendly URLs - Remove ID & Pretty URL

caovillanueva

Member
XNullUser
Joined
Dec 3, 2021
Messages
10
Reaction score
43
Points
13
NullCash
70
Improve SEO by removing IDs from URLs. Support same URL schema - even only in routes - without ending .html or slash. Support parent categories in Product, Category, CMS and CMS Category URLs.

From:

 

Attachments

  • v2.4.0-fsadvancedurl.zip
    620.7 KB · Views: 8

moonfire

Well-known member
Diamond
Elite
XNullUser
Joined
May 3, 2021
Messages
1,230
Reaction score
488
Points
83
NullCash
1,635
Version 2.4.0 - 11/12/2022
Minor
PrestaShop compatibility: 1.7.8.0 - 8.0.4
PrestaShop 8.x.x Compatibility
Post automatically merged:

Thanks for the share! Its very much appreciated.
 

irrigation

Member
XNullUser
Joined
Jul 26, 2022
Messages
36
Reaction score
0
Points
6
Location
Spain
NullCash
1
does it works fot 8.2.1? I had serious problem with previous version of this module.
 

manu69

Active member
XNullUser
Joined
Jan 13, 2019
Messages
807
Reaction score
71
Points
28
NullCash
0
Thanks for the share! Its very much appreciated.
 

Giangig

New member
XNullUser
Joined
Jun 13, 2022
Messages
9
Reaction score
0
Points
1
NullCash
4
This is a really interesting Prestashop module
 

allindiaholidays

Member
XNullUser
Joined
Apr 28, 2024
Messages
42
Reaction score
0
Points
6
Location
india
NullCash
0
Nice! Thanks for the share, mate.
Post automatically merged:

Thank you very much for sharing this module
 

sassa

Active member
Elite
XNullUser
Joined
Jun 10, 2022
Messages
97
Reaction score
189
Points
33
NullCash
1,517
Great ! Thank you very much for sharing this module
 

sansanich

Well-known member
Master
Diamond
Elite
XNullUser
Joined
Apr 28, 2021
Messages
112
Reaction score
637
Points
93
NullCash
2,448
Модуль не підходить для 9 версії.

Отримую
1769587534566.png
та інші ...

Fatal error: Declaration of ProductControllerCore::canonicalRedirection(string $canonical_url = ''): void must be compatible with FrontController::canonicalRedirection($canonical_url = '')


GPT

На обох скрінах видно дві різні проблеми, але обидві мають одну першопричину: модуль дуже старий (орієнтований на PS 1.7.x) і його override-и не сумісні з PrestaShop 9 + PHP 8.x.

✅ Warning: Undefined array key "layered_rule"

Це означає, що модуль у файлі modules/fsadvancedurl/fsadvancedurl.php намагається взяти правило маршруту:
$default_routes[$multilang_route]['rule'];
але в масиві $default_routes немає ключа layered_rule, тому PHP попереджає “Undefined array key”.
У PS 9 набір route’ів/імена route’ів відрізняються від PS 1.7, а layered_rule (маршрут для layered navigation / faceted) може бути відсутній або інакше названий.
👉 Тобто: модуль очікує структуру роутів зі старої версії PrestaShop.

❌ Скрін 2 — фатал на фронті canonicalRedirection(...) must be compatible...
Повідомлення:
Declaration of ProductControllerCore::canonicalRedirection(string $canonical_url = ''): void must be compatible with FrontController::canonicalRedirection($canonical_url = '')
Це класична помилка несумісності сигнатур методів через override.
У вашому модулі є override:
fsadvancedurl/override/classes/controller/FrontController.php
і там метод оголошений так:
protected function canonicalRedirection($canonical_url = '')
А в PS 9 в ProductControllerCore він уже має строгі типи:
canonicalRedirection(string $canonical_url = ''): void
Через те, що override-батько (FrontController) має ширшу/іншу сигнатуру, PHP 8 валить сайт фаталом, і модуль “на фронті” не може нормально працювати.
 
Top