0

我正在尝试为 Opencart 中的销售流程创建拆分测试路径,但无法修改迷你购物车的“查看购物车”网址。

这是对拆分路径的[希望]更清晰的解释:

?route=product/categorya&path=XX
?route=product/producta&product_id=XX
?route=checkout/carta

这一直有效:在checkout/carta我有“空购物车”和“继续购物”指向各自的链接:

?route=checkout/carta&empty=1

?route=product/categorya&path=XX

我什至让迷你购物车的“删除”正常工作,但“查看购物车”返回checkout/cart,这将完成剩下的过程。

我尝试了以下步骤但无济于事:

#catalog/controller/module/carta.php
class ContorllerModuleCarta extends Controller {
....
$this->data['cart'] = $this->url->link('checkout/carta');

#catalog/view/theme/mytheme/template/module/carta.tpl
<div id="carta">...

#catalog/view/javascript/common.js
/* Ajax Carta */
...
$('#carta').load('index.php?route=module/carta #carta > *');
...

我不确定我错过了什么,但会很感激任何方向。

4

1 回答 1

1

问题是您的代码是,您没有将它与 Opencart 连接。你可以用 2 种方法来做到这一点 -
第一种 - Opencart 从 common > header.php 文件加载购物车使用

        $this->children = array(
            'module/language',
            'module/currency',
            'module/cart'
        );

所以你的代码,carta.php 文件不会加载,所以它是你的代码的结尾。在此处添加您的模块代码,然后将其加载/回显到 header.tpl 文件并删除 $cart 否则将显示两个购物车。

        $this->children = array(
                'module/language',
                'module/currency',
                'module/carta'
            );

tpl代码

       <?php echo $carta; ?>

第二 - 如果您不想使用默认的 Opencart 购物车,那么只需将此行更改为 cart.php 文件,无需添加其他代码(需要 js 代码)

        $this->data['cart'] = $this->url->link('checkout/carta');

注意 - 请使用 vqmod/ ocmod 作为代码,直接更改核心文件是邪恶的。

于 2015-10-31T07:18:10.670 回答