3

所以我不能让这个 prestashop 模块快速查看我试图为每个产品添加点击。

我在 /modules/quicklook 下的基本目录中有该模块。

文件如下

/modules/quicklook.php

class QuickLook extends Module {

private $_html= '';

function __construct() {
    $this->name = 'quicklook';
    $this->tab = 'other';
    $this->version = '0.2.0';
    $this->author = 'Carl';
    parent::__construct();
    $this->displayName = $this->l('Quick Look');
    $this->description = $this->l('AJAX Quick Look');
}

public function install() {
    parent::install();
    if(!$this->registerHook('header')) return false;
    return true;
}

public function getContent()
                        {
                                $this->_displayForm();
                                return $this->_html;
                        }



public function ajaxCall() {

                $this->smartyOutputContent($this->getTemplatePath() . 'quicklook.tpl');
        }

} 

/modules/quicklook.tpl

包括来自 product.tpl 的所有内容。

/modules/quicklook-ajax.tpl 包括:

include(dirname(__FILE__).'/../../config/config.inc.php');
include(dirname(__FILE__).'/../../init.php');
include(dirname(__FILE__).'/quicklook.php');

$quicklook = new QuickLook();
echo $quicklook->ajaxCall();

然后调用我在product-list.tpl中添加的模块:

<script type="text/javascript">
function QuickLook() {
        $.ajax({
                                        url: '{$base_dir}modules/quicklook/quicklook-ajax.php',
                                        type: 'get',
                                        data: 'ajax=true',
                                        success: function(data) {
                                                console.log('success');
                                                $('#ajax').text(data);
                                        }
                                });
    return false;
    }
</script>

然后到我添加的每个产品的链接

onclick="QuickLook();"

我越来越

Failed to load resource: the server responded with a status of 404 (Not Found) 

对于未定义的..并且产品没有加载。

所以基本上我试图让每个产品的a href链接执行调用ajax桥文件的javascript,然后调用quicklook.php,然后调用显示产品的quicklook.tpl,希望我的思路是正确的(这个是我第一次尝试模块!)。

非常感谢一些正确方向的指导。在这一点上,我不确定出了什么问题。:(

4

1 回答 1

1

1) 首先检查是否存在 quicklook-ajax.php 文件。

2) 检查通过 url: {$base_dir}modules/quicklook/quicklook-ajax.php 获取访问权限的可能性,否则您也会收到 404 错误。

3)最好的方法是为此目的创建自己的控制器(如何做到这一点:http://blog.belvg.com/how-to-implement-a-controller.html)并使用 Link::getModuleLink()获取网址。

问候

于 2013-08-29T11:39:14.423 回答