寻找在我的基于Shopify的产品描述页面上实现AMP的可能解决方案。目前,我们正在使用一个第三方API。来自此API的响应有助于在PDP页面上打开包含jquery UI日历的i-frame。要打开此日历,我们需要输入一个有效的邮政编码,该邮政编码会触及API,并在回复时显示可用的投放日期。
PDP页面要求:
邮政编码: - 输入字段 国家特定的ajax要求对第三方API进行邮政编码验证。 API返回启用/禁用交货日期,交货地点类型,
投放日历: - 选择日期字段 Jquery UI日历 启用/禁用日期来自第三方API,根据邮政编码 Shopify设置也在PDP页面上实现,用于启用/禁用日期和在特定日期添加文本。
截至目前,我一直试图通过以下方法实施AMP,但没有成功。
Q1。如果我在AMP i-frame中打开我的日历,我如何在AMP页面的输入字段中获取任何选定的值?
Q2。当我输入邮政编码时,我会收到第三方API的回复,如何将此回复传递给我的日历,以便在AMP i-frame中打开可能的投放日期。
在PDP页面上,我们点击了一些第三方API(使用ajax请求),我们在其中发送产品详细信息以及需要交付产品的邮政编码,以及API的响应,我们获取交付的日期可能。根据回复日期,我们在日历中启用/禁用日期。
除此之外,我们在Shopify管理员中进行了一些设置以启用/禁用某些特定日期并为某些日期添加额外的附加费,我们需要在日历中传递所有这些设置。
基本上,所有主要功能都与API的ajax请求/响应一起使用,并在此基础上相应地安排日历日期。最后,当在日历上实现API响应和设置时,我们将用户选择的日历日期与其他字段值(邮政编码,数量,产品价格)一起传递到购物车页面。
答案 0 :(得分:0)
为您的产品快速激活AMP并仍允许自定义的最佳解决方案是AMP for Shopify Plugin。但要回答你的问题:
1)从iframe回传到AMP页面是不可能的。 AMP允许的唯一通信消息协议是iframe resize消息,该消息内置于原始AMP页面上的AMP Javascript中。这允许PostMessage从嵌入式iframe开始工作,但仅用于调整帧的大小,没有别的。
2)AMP表单可以从您的原始页面(或您的iframe)提交AJAX数据。但同样,从原始页面到嵌入式iframe的通信是不可能的。
AMP插件也无法解决这些问题,因为它们与AMP本身不兼容。如果仍然存在困惑,很乐意回答任何其他问题。