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

caovillanueva

Member
XNullUser
Joined
Dec 3, 2021
Messages
12
Reaction score
63
Points
13
NullCash
161
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: 11

moonfire

Well-known member
Diamond
Elite
XNullUser
Joined
May 3, 2021
Messages
1,251
Reaction score
495
Points
83
NullCash
1,638
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
827
Reaction score
71
Points
28
NullCash
16
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
108
Reaction score
194
Points
43
NullCash
1,576
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
640
Points
93
NullCash
2,458
Модуль не підходить для 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