首页 > 解决方案 > Prestashop 1.7 -> 未定义产品详细信息 jquery

问题描述

当我导航到产品详细信息页面时,我收到控制台错误

“未捕获的 ReferenceError:未定义 jQuery”

仅在这些页面上。head.tpl我已经尝试通过文件和文件添加依赖项,javascript.tpl但到目前为止没有成功。

示例网址:https ://naturata.pt/en/mesh/27-379-teste.html#/6-color-brown/43-size-34

标签: javascriptjqueryprestashop

解决方案


如果您仔细检查您的错误,您可以在第 1562 行看到这种情况。

您正在尝试使用 jquery 对象将数据发送到您的谷歌分析。然而,这甚至没有被使用。您不妨从产品详细信息模板中删除它。

<script type="text/javascript">
    jQuery(document).ready(function(){
    var MBG = GoogleAnalyticEnhancedECommerce;
    MBG.setCurrency('EUR');
    MBG.addProductDetailView({
        "id":0,
        "name":"null",
        "category":"null",
        "brand":"",
        "variant":"null",
        "type":"typical",
        "position":"0",
        "quantity":1,
        "list":"product",
        "url":"",
        "price":"0.00"
   });
});
</script>

如果您真的希望它工作,您可能希望将您的 jquery 传输到您的标题,以便在此脚本运行之前加载它。

您可能会做的另一件事是禁用分析模块。因为它没有被使用,这就是导致问题的原因。

或者查看该模型中呈现该代码以尝试解决该问题的函数。您可以将其从使用 Jquery 文档准备好更改为使用 js 准备好本机文档。

因此,在您的情况下,将其更改为:

document.addEventListener("DOMContentLoaded", function(event) { 
  var MBG = GoogleAnalyticEnhancedECommerce;
    MBG.setCurrency('EUR');
    MBG.addProductDetailView({
        "id":0,
        "name":"null",
        "category":"null",
        "brand":"",
        "variant":"null",
        "type":"typical",
        "position":"0",
        "quantity":1,
        "list":"product",
        "url":"",
        "price":"0.00"
   });
});

你可以在这里阅读更多关于它的信息:$(document).ready 没有 jQuery


推荐阅读