4

構成可能な製品の関連製品について、「この製品が再入荷したときに通知を受け取るためにサインアップする」リンクを表示するにはどうすればよいですか。

たとえば、Tシャツ(構成可能な製品)があり、ミディアム、ラージ、エクストララージ(シンプル関連製品)の3つのサイズで販売しています。

ラージサイズの在庫がなくなった場合、在庫が戻ったときに通知を受け取るようにユーザーにサブスクライブさせるにはどうすればよいですか。

adminでこの設定をすでに設定していることに注意してください。

System > Configuration > Catalog > Allow Alert When Product Comes Back in Stock - Yes

このアラートのURLは次のようになっていることに気付きました(私のストアにある単純な製品の1つです)。

http://localhost/mystore/index.php/productalert/add/stock/product_id/1/[some key]/[some key],,/

問題の関連製品の製品IDを渡して、このURLを直接呼び出す方法はありますか?もしそうなら、URLの最後にあるそれらのキーはどうですか?

ご案内ください。

ありがとう

4

3 に答える 3

7

在庫切れの関連商品の横に次のリンクを追加しました。

http://localhost/mysite/index.php/productalert/add/stock/product_id/[associated_product_id]/uenc/[any_key]/

例えば

http://localhost/mysite/index.php/productalert/add/stock/product_id/17/uenc/MTM0MzcyMDk0Mw==/

それは私の仕事をします。

唯一のことは、アラートレコードが正常に追加された後、通常の場合と同じページではなく、ホームページにリダイレクトされることです。

これは[any_key]によるもので、magentoと同じように現在のページのURL [any_key]を暗号化できれば、アラートレコードの保存に成功した後、同じページにリダイレクトすることもできます。何か案は?

ありがとう

やっと手に入れた!

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 + '/';

お役に立てれば!

于 2012-07-31T07:57:49.820 に答える
3

URLを取得するMagentoの方法は次のとおりです。

Mage::helper('productalert')->setProduct($_product)->getSaveUrl('stock')

于 2015-07-17T13:40:10.193 に答える
1

Magentoはすでに管理パネルから在庫切れを設定する機能を利用していますが、残念ながら一部のインスタンスに限定されているため、管理パネルからこれを設定することはできません。上記のコードで行うことはできますが、手動タスクであり、できません。リンクで何度も何度も実行されます。したがって、顧客に製品在庫アラート機能を設定する特定の要件があり、顧客がそれをサブスクライブできる場合は、既製の拡張機能を使用する方がよいと思います。これは、Magento 2の適切に管理された拡張機能であり、より多くの管理可能な機能を備えた製品アラートおよびサインアップ/サブスクリプション機能を設定するのに役立ちます。Magento2の在庫切れ通知拡張機能へのリンク-https ://www.mconnectmedia.com/out-of-stock-alert-magento2.html

于 2016-06-10T09:13:48.397 に答える