为了账号安全,请及时绑定邮箱和手机立即绑定

PrestaShop 1.7 如何在产品页面上获取 id_product_attribute?

PrestaShop 1.7 如何在产品页面上获取 id_product_attribute?

PHP
湖上湖 2021-06-11 10:05:29
id_product_attribute 在 URL 中可用 - 值“10”: http://localhost/presta/women/2-10-brown-(...).html#/2-size-m我需要从当前产品页面获取当前 id_product_attribute。可能来自 $_GET,或来自 DOM 元素,或 presta shop 变量 - 但我必须在添加到购物车之前将其传递给 JavaScript 函数(即使最终客户没有将产品添加到购物车 - 这就是为什么我可以不使用钩子:“actionCartSave”)我可以从钩子 displayAfterProductThumbs 访问这个值 - 但是获取当前值有问题。为了获得正确的价值,我需要:1)在产品页面选择产品属性(尺寸、颜色)2)刷新页面触发钩子“displayAfterProductThumbs”3)读取数据但我需要它而不刷新。在文档中,我什么也找不到。试图寻找短语:id_product_attribute、id_combination、idCombination、ipa。关于 id_product_attribute(在 Google 上找到)的大多数信息都与 SEO 相关,并且“出于 SEO 目的,在 url 中包含 id_product_attribute 并不是一个好主意”。
查看完整描述

2 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

有一个名为 displayProductAdditionalInfo 的钩子。在模块中注册钩子,并在参数中获取产品详细信息。当我们更改产品的组合时,此代码将运行。因此 idProductAttribute 将在组合更改时自动更新。


public function hookDisplayProductAdditionalInfo($params)

{

    if isset($params['product']) {

        //  Now return the input type hidden with idproductattribute 

       return '<input type="hidden" name="id_product_attribute" id="product_attribute_info" value="'.$params['product']['id_product_attribute'].'"/>';

    }

}

现在点击添加到购物车阻止默认操作并从输入隐藏字段中获取 idProductAttribute。


查看完整回答
反对 回复 2021-06-13
  • 2 回答
  • 0 关注
  • 142 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信