magento

分类下相关文章

magento 2.4 使用 SKU 搜索产品,返回一堆无关的产品

问题现象 Magento 2.4 中,使用类似 “ab-cd-e-9”这样的 SKU 去搜索时,会发现返回了几千个产品。 而排在前面的并不是我想要搜索的 SKU 完全匹配的产品,而是一些无关的产品。 "ab-cd-e-9”两侧加上双引号能解决,但是用户不会这样干。 之前处理过一例 magento 1.7 的远古版本的 SKU 搜索问题, 参考 Magento 网站中无法通过 SKU 搜索到产品的问题排查 解决方案是,改成 LIKE 的方式。但是 magento 2 之后没有了这个配置,直接使用了 Elasticsearch。在后台没法切换 MySQL 的搜索方案。 github is ...

阅读全文...

magento 页面加载速度优化

思路 使用 redis cache 启用 opcache 参考 https://magento.stackexchange.com/questions/321762/speed-when-its-not-cached 一个比较系统的介绍 https://magento.stackexchange.com/questions/369969/pagespeed-how-to-reduce-reduce-initial-server-response-time-and-eliminate-rend 官方的优化文档 https://magento.stackexchange.com/questio ...

阅读全文...

Golang 重构 Magento 电商网站之一,UI 设计

计划把现有的 Magento 网站使用 Golang 重构一下,替换掉 PHP。 主要是 Magento 的架构太复杂了,耗服务器资源也多,改动起来异常麻烦,还不如用 golang 重写得了。 毕竟只用到了简单的产品展示功能。界面让 AI 实现一下就行,添加上 golang 逻辑即可。 再配合上用的已经很成熟的 React Ant Design Pro 的管理后台,维护成本也很低。 先起个名字 就叫 gogento 吧 😅 AI 提示词 推荐使用 Claude 4 我想开发一个类似 Magento 风格及功能的在线电商网站,主要产品是XXX,内容是英文的,需要手机自适应,现在需要输出网页代码 ...

阅读全文...

magento 搜索结果第二页不显示内容,报 404 错误

magento 搜索关键词,如果返回的结果多于两屏幕,第一页显示正常,但是第二页开始,就无法打开,报 404 错误。 我对比了一下,URL 链接格式的差异: 第一页的链接格式 https://magento.sunzhongwei.com/catalogsearch/result/?q=iphone 第二页的链接格式 https://magento.sunzhongwei.com/catalogsearch/result/index/?p=2&q=iphone 第二页跟第一页的链接格式有明显的不同,多了个 index,这个链接我有点印象。 似乎之前为了防止用户搜索敏感词造成 Googl ...

阅读全文...

[Magento 2 定制化开发] 之十七:Magento 部署开发的自定义模块

开发了一个自定义的 Magento 扩展模块,需要部署到服务器上。 不记录不行了,根本记不住这么繁琐的操作。 打包 首先在本地,把目录打成 zip 包。 上传服务器位置 在 Magento 项目根目录的 app/code/ 目录下。 将前面的 zip 包解压。 unzip some_module.zip 启用模块 cd /path/to/magento php bin/magento module:enable Dir1_Dir2 php bin/magento setup:upgrade php bin/magento setup:di:compile php bin/magento se ...

阅读全文...

Magento 网站中无法通过 SKU 搜索到产品的问题排查

今天遇到一个奇怪的 Magento 网站的搜索问题。折腾了好久,终于找到了解决方案。记录一下排查过程和解决方法,以备后续参考。 问题现象 例如,一个产品的名称是: World Best Programming Language GO-JS-PHP 产品的 SKU 是 GO-JS-PHP 可以在网站搜索中输入 Best Programming 搜索到该产品,获取其他任意在标题中的词语都可以搜索到该产品。 但是,如果输入 SKU GO-JS-PHP 进行搜索,却无法搜索到该产品。 即便,删除该产品,重新创建并保存,也是上面一样的问题。 ☀️ 遇事不决问 AI 遇到这种问题,第一时间想到的是问问 ...

阅读全文...

Magento Shop By 过滤条件中禁用分类过滤

简单的做法是在 Magento 后台全局样式里,把分类过滤部分的 HTML 代码隐藏。 首先在网站的 HTML 页面中,找到 Shop By 分类部分的 class 特征。 然后将这部分隐藏即可。例如: .filter-options-item.filter-cat{ display: none; } 然后到 Magento 的后台,通过全局 CSS 样式来隐藏掉这部分的显示即可。参考: Magento 添加全局 CSS 样式 根据不同的子 website 设置不同的 style, 即可区分隐藏或者显示规则。 ...

阅读全文...

Magento 批量导入产品报错,原因出在 PNG 图片 sRGB 配置文件错误

在执行 Magento 批量导入 CSV 产品信息时,出现了错误。 报错信息 1.lmported resource (image) could not be downloded from external resource due to timeout or access permissions in row 1. 排除权限问题 在 pub/media 目录下(也可能在自定义的目录下,例如 pub/media//product),查看对应的图片的权限。发现没有问题。 不放心,执行了 cp 命令,复制了一份图片到另一目录下,也没有报错。 从浏览器中访问图片链接,发现可以正常访问。显示正常。 ...

阅读全文...

Manegto 设置某个分类下产品的排列顺序

最好能够随机排序,避免同类产品显示过于单一。 内置了哪些排序方式 Sort by Position Sort by Product Name Sort by Position 是什么意思 Sort by Position 是指按照产品在 Magento 后台的排序位置来排列产品。这个位置可以在每个产品的编辑页面中设置。 In Magento 2, the “Sort by Position” feature allows store administrators to control the display order of products within a category. Thi ...

阅读全文...

[Magento 2 定制化开发] 之十六:Magento 的 Newsletter 模块挪到页脚右下角

需求 Magento 首页 Newsletter 模块挪到页脚的右下角。 html 特征 class = form subscribe 代码文件 cd vendor/swissup grep "form subscribe" -r . 没有找到相关文件。 cd vendor/magento grep "form subscribe" -r . ./module-newsletter/view/frontend/templates/subscribe.phtml 处理方案 方案一: 注释掉 subscribe.phtml 中的相关代码 方案二: 在 x ...

阅读全文...

[Magento 2 定制化开发] 之十五:Magento 产品详情页面 In Stock 文字修改

需求 修改 Magento 产品详情页面 In Stock 文字 修改文件 ./vendor/magento/module-catalog/view/frontend/templates/product/view/type/default.phtml 注意,不是修改三方主题的文件。 执行命令使修改生效 php bin/magento cache:clean php bin/magento cache:flush 继续阅读 🌳 Magento 2 主题定制化开发系列教程 ...

阅读全文...

Magento 2.4 面包屑导航菜单的显示 Bug

Bug 现象 Magento 2.4 面包屑导航菜单链接的 title 显示不正确,包含了顶部菜单中所有链接的 title。 应该只显示对应产品分类的 title。 js 文件所在位置 这个应该是三方 Magento 主题 js 的 bug。js 文件在: vendor/swissup/module-breeze/view/frontend/web/js/components/breadcrumbs.js 复现步骤 先点击菜单中的一个子分类,然后再选择一个产品,进入之后才会出现。 bug 复现时的面包屑导航层级: 首页 大分类 子分类 当前产品 而这个大分类的 title 是错的,显示为整 ...

阅读全文...

Magento 添加全局 CSS 样式

进入 Magento 后台 Content - Configuration 。 选择 Global 或者某个指定 Store。 HTML Head 中的 Scripts and Style Sheets 添加配置: <style> .action.primary { background: #e74c3c !important; } </style> 保存后刷新缓存 ...

阅读全文...

Magento 子店铺域名修改

需求 把所有 a.sunzhongwei.com 改为 b.sunzhongwei.com code 保存在哪里 nginx: c.sunzhongwei.com.conf 修改策略 原 a 的 config 文件备份一份,新建一个 b 的配置文件。 把所有 a.sunzhongwei.com 改为 b.sunzhongwei.com,然后 https 的配置去掉。 改成 80 端口监听 通过 certbot 申请新的证书 重启 nginx 服务 magento 后台修改域名 登录 Magento 后台 进入 Stores > Configuration > General ...

阅读全文...

Magento .phtml 代码中获取当前域名,并条件输出菜单

不知道为啥,使用 Magento 的 Mage::app() 获取 store 信息会导致网站崩溃。。。 所以,直接使用纯 PHP 的方式获取当前域名。 纯 PHP 的实现 <?php //$storeName = Mage::app()->getStore()->getName(); // 这行会导致网站崩溃,所以换个 PHP 的方式获取域名 $domain = $_SERVER['HTTP_HOST']; ?> <span><?php echo $domain; ?></span> 条件输出菜单 <?php if ...

阅读全文...