鱼眼 / 模块URL重写优化器
一个用于停止在配置中禁用“使用分类路径为产品URL”设置时为产品生成分类路径的重写URL的Magento模块。
1.1.0
2022-10-27 15:32 UTC
Requires
- php: ^7.4 || ^8.0
- magento/module-catalog-url-rewrite: ^100.1
This package is auto-updated.
Last update: 2024-08-27 22:16:44 UTC
README
概述
一个用于停止在配置中禁用“使用分类路径为产品URL”设置时为产品生成分类路径的重写URL的Magento模块。
特性
- 停止创建包含分类路径的产品无用的URL重写
- 仅在“使用分类路径为产品URL”设置为“否”时适用
注意:此扩展将仅阻止基于分类路径的URL重写被创建。删除现有URL重写需要单独管理(尽管可能在未来的版本中添加)。
问题
为了突出显示问题(以及此模块的目的),请查看以下2个场景
未启用模块
- 'Joust Duffle Bag'产品位于2个分类('装备'和'包袋')中
- 为此产品创建了4条产品URL重写记录
- 1条用于直接产品URL
- 3条用于分类路径URL(2条用于产品关联的分类和根分类...)
- 总共创建了580条产品URL重写记录(使用Magento默认的示例数据,189个可见产品,39个分类)
启用模块后
- 'Joust Duffle Bag'产品现在仅有一条直接路径的URL重写记录
- 总数减少到189条产品URL重写记录(即每个可见产品1条)
- 将此扩展到数千个产品、分类、网站和商店视图,则可能在
url_rewrite
表中节省大量空间!
兼容性
- PHP 7.x
- Magento开源/商业版2.1.x / 2.2.x(可能在旧版本上工作,但未经测试)
安装
composer require fisheye/module-url-rewrite-optimiser
php bin/magento module:enable Fisheye_UrlRewriteOptimiser
php bin/magento setup:upgrade
清理
如果您安装此扩展以防止生成包含分类路径的产品重写,并希望通过删除它们来清理现有重写,请运行此查询;
DELETE FROM url_rewrite WHERE is_autogenerated = 1 AND request_path LIKE '%/%' AND target_path LIKE '%/category/%' AND target_path LIKE '%/product/%' AND entity_type = 'product' AND metadata LIKE '%category_id%';
贡献
欢迎问题、分支和拉取请求 :)