You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Magento 2商品分类页面添加带购物车图标的加入购物车按钮?

在Magento 2商品分类页面添加带购物车图标的加入购物车按钮

单纯靠CSS很难稳定实现图标嵌入效果,默认加入购物车按钮由模板生成,推荐通过主题模板修改+CSS布局调整的方式解决,步骤如下:

1. 修改商品列表项模板文件

找到当前主题的商品列表项模板,路径一般为:
app/design/frontend/[你的厂商名]/[你的主题名]/Magento_Catalog/templates/product/list/item.phtml

如果主题没有该文件,从Magento默认Luma主题复制一份(路径vendor/magento/module-catalog/view/frontend/templates/product/list/item.phtml),放到上述主题目录下。

打开文件后,找到生成加入购物车按钮的代码块(通常是<?= $block->getAddToCartButtonHtml() ?>),替换为以下代码嵌入系统自带的购物车图标:

<?php $addToCartButton = $block->getAddToCartButtonHtml(); ?>
<?php if ($addToCartButton): ?>
    <div class="action tocart with-icon">
        <span class="cart-icon">
            <svg class="icon icon-cart" aria-hidden="true">
                <use xlink:href="<?= $block->getViewFileUrl('Magento_Theme::images/icons.svg#cart') ?>"></use>
            </svg>
        </span>
        <?= $addToCartButton ?>
    </div>
<?php endif; ?>

2. 添加CSS样式调整布局

在主题的CSS文件(比如app/design/frontend/[你的厂商名]/[你的主题名]/web/css/styles.css或_module.less)中加入以下样式,让图标和按钮文字对齐:

.product-item .action.tocart.with-icon {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
}

.cart-icon .icon-cart {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

/* 可选:悬停时的图标颜色变化 */
.product-item .action.tocart.with-icon:hover .icon-cart {
    fill: #e02b27; /* 替换为你需要的悬停颜色 */
}

3. 清理缓存并部署资源

修改完成后,执行命令清理缓存:

bin/magento cache:clean

如果是生产环境,还需部署静态资源:

bin/magento setup:static-content:deploy -f

这样分类页的加入购物车按钮就会稳定显示购物车图标,不会因为模板结构变动失效。

内容的提问来源于stack exchange,提问作者Soban Malik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 17:47:25