magento显示"注册以便在此产品重新有库存时获得通知"链接以获取简单相关产品

Pra*_*ant 4 magento

如何为可配置产品的相关产品显示"注册以便在此产品重新有库存时获得通知"链接.

比方说,我们有一件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?如果是这样,那么网址末尾的那些键呢?

请指导.

谢谢

Pra*_*ant 7

我在缺货相关产品旁边添加了此链接:

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)

希望这可以帮助!