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

如何在Prestashop 1.7结账页面调整支付方式的显示顺序

Prestashop 1.7 结账页面支付方式排列顺序修改教程

方法一:后台优先级配置修改(无需改代码,优先使用)

  • 登录Prestashop 1.7管理后台,进入「模块」-「模块管理器」页面
  • 筛选出所有已启用的支付类模块,依次点击每个支付模块的「配置」按钮
  • 找到配置项里的 优先级/排序权重 选项,填写整数数值:数值越小,对应支付方式在结账页的展示位置越靠前
  • 所有支付方式的优先级调整完成后,点击后台右上角的「清除缓存」按钮,刷新前端结账页面即可看到排序生效

方法二:主题模板覆写修改(适用于无后台排序配置的场景)

  • 进入网站文件目录,找到当前使用主题的结账模板路径:themes/[你的主题名]/templates/checkout/_partials/payment-methods.tpl,如果该路径下无对应文件,可以从默认经典主题路径themes/classic/templates/checkout/_partials/payment-methods.tpl复制文件到对应主题目录下
  • 编辑该tpl文件,在支付方式遍历循环的代码前添加自定义排序逻辑,示例代码如下:
{* 自定义排序规则:按自定义的模块标识顺序排列 *}
{$sort_rule = ['alipay', 'wxpay', 'stripe', 'paypal']}
{$sorted_payments = []}
{* 先按自定义规则筛选排序 *}
{foreach from=$sort_rule item=module_key}
  {foreach from=$payment_options item=pay_option}
    {if strpos($pay_option.module_name, $module_key) !== false}
      {$sorted_payments[] = $pay_option}
    {/if}
  {/foreach}
{/foreach}
{* 未加入自定义规则的支付方式追加到列表末尾 *}
{foreach from=$payment_options item=pay_option}
  {if !in_array($pay_option, $sorted_payments)}
    {$sorted_payments[] = $pay_option}
  {/if}
{/foreach}
{* 将原有循环的$payment_options替换为$sorted_payments即可 *}
  • 保存文件后清理后台缓存,刷新前端页验证排序效果

注意:修改模板文件前请先备份原文件,避免操作失误导致页面异常。如果站点开启了CDN缓存,需要同步清理CDN缓存后再验证效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 00:12:00