Skip to content

URL switch problem in a store with a redirection that exists in another store #39470

@Yoann-D

Description

@Yoann-D

Preconditions and environment

  • Magento version 2.4.7-p3
  • Do not use the $oldStore to fetch existing urlwrites

Steps to reproduce

  • Have multiple Websites and multiples stores
  • Create a custom redirection for a website A on a URL common to different websites (blog to blogs for example)
  • Go to Website B, and on the blog page, make a store switch

Expected result

The Rewrite url created for another website A must not have any link with Website B

Actual result

For code in file : vendor/magento/module-url-rewrite/Model/StoreSwitcher/RewriteUrl.php ligne 80
image

Currently my store IDs on my website B are 7 and 25.

The code returns me a redirect to website A

image

So we have $existingRewrite is yes and $currentRewrite is false . So we are sent back to the BaseUrl

image

The problem in the $existing write variable, we will not filter with the $oldStoreId

To correct this I added the $oldStoreId in the filter

image

Additional information

This my fix
switcher.zip

Release note

No response

Triage and priority

  • Severity: S0 - Affects critical data or functionality and leaves users without workaround.
  • Severity: S1 - Affects critical data or functionality and forces users to employ a workaround.
  • Severity: S2 - Affects non-critical data or functionality and forces users to employ a workaround.
  • Severity: S3 - Affects non-critical data or functionality and does not force users to employ a workaround.
  • Severity: S4 - Affects aesthetics, professional look and feel, “quality” or “usability”.

Metadata

Metadata

Labels

Area: FrameworkComponent: CmsUrlRewriteIssue: ConfirmedGate 3 Passed. Manual verification of the issue completed. Issue is confirmedPriority: P3May be fixed according to the position in the backlog.Progress: ready for devReported on 2.4.7-p3Indicates original Magento version for the Issue report.Reproduced on 2.4.xThe issue has been reproduced on latest 2.4-develop branchTriage: Dev.ExperienceIssue related to Developer Experience and needs help with Triage to Confirm or Reject it

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions