如何为可配置产品的相关产品显示"注册以便在此产品重新有库存时获得通知"链接.
比方说,我们有一件T恤(一种可配置的产品),我们以3种尺寸销售它 - 中型,大型和Xtra-Large(简易相关产品).
当大尺寸缺货时,我们如何让用户在订货时订阅它以进行通知.
请注意我已在admin中设置此设置:
System > Configuration > Catalog > Allow Alert When Product Comes Back in Stock - Yes
Run Code Online (Sandbox Code Playgroud)
我注意到这个警报的网址就像(它是我店里的一个简单产品):
http://localhost/mystore/index.php/productalert/add/stock/product_id/1/[some key]/[some key],,/
Run Code Online (Sandbox Code Playgroud)
有没有什么方法可以直接调用这个url,传递我们相关产品的产品ID?如果是这样,那么网址末尾的那些键呢?
请指导.
谢谢
我在缺货相关产品旁边添加了此链接:
http://localhost/mysite/index.php/productalert/add/stock/product_id/[associated_product_id]/uenc/[any_key]/
Run Code Online (Sandbox Code Playgroud)
例如
http://localhost/mysite/index.php/productalert/add/stock/product_id/17/uenc/MTM0MzcyMDk0Mw==/
Run Code Online (Sandbox Code Playgroud)
它完成了我的工作.
唯一的事情是,在成功添加警报记录后,它会重定向到主页,而不是正常情况下的同一页面.
这是由于[any_key],如果我们能够以某种方式加密当前页面url [any_key]就像magento一样,我们可以在成功保存警报记录后将其重定向到同一页面.有任何想法吗?
好的,我终于明白了!
uenc键[any_key]实际上是当前url的base64编码.
所以在https://github.com/carlo/jquery-base64的帮助下,我做到了:
var encodedUrl = $.base64.encode(window.location);
var redirectTo = 'http://localhost/mysite/index.php/productalert/add/stock/product_id/[associated_product_id]/uenc/' + encodedUrl + '/';
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!