顧客ごとに異なる価格を請求したいクライアントがいます。一部の製品は 43% 割引され、他の製品は 47% 割引され、プロモーション コードはドル額の割引または % の割引に対してのみ機能します。顧客がログインして、ログインに基づいた特別価格を表示することは可能ですか?
質問する
681 次
1 に答える
3
はい、できます。アカウントの種類ごとに異なるセキュア ゾーン サブスクリプションをセットアップする必要があります。少しコーディングが必要です。
たとえば、「小売」と「卸売」のセキュア ゾーンを設定できます。次に、javascript/jQuery を使用{module_subscriptions}
して、非表示の div にタグを貼り付けることで、ユーザーのサブスクリプション レベルを判断できます。ユーザーがログインすると、タグはユーザーが購読しているセキュア ゾーンのリストを出力し、それを使用して表示する価格を決定できます。
HTML:
<!--stick this before the closing body tag in your template-->
<div id="userSecureZones" style="display: none;">
<!--outputs all secure zone subscriptions when logged in -->
{module_subscriptions}
</div>
<!--When the page loads, BC will replace the {module_subscriptions}
with something like this-->
<div id="userSecureZones" style="display: none;">
<li>
<ul>
<!--each one of these represents a zone a user is subscribed to-->
<li class="zoneName">
<a href="/Default.aspx?PageID=14345490">Retail Zone</a>
</li>
<li class="zoneName">
<a href="/Default.aspx?PageID=15904302">Wholesale Zone</a>
</li>
</ul>
</li>
</div>
コード:
function getSecureZone() {
var loggedIn = !!parseInt('{module_isloggedin}');//true or false
if (!loggedIn)//user is not logged in
return false;//
var subscription = "";
var zonesList = new Array();
//grab the zones from our hidden div
var $zones = $('#userSecureZones .zoneName a');
//add each zone a user is subscribed to the zonesList array
$zones.each(function () {
var zoneName = $(this).text().toUpperCase();
//add each one to the array
zonesList.push(zoneName);
});
//set the subscription variable to the zone the user is subscribed to
//if a user can only be subscribed to one zone, then this part is simple
//if a user is subscribed to multiple zones then list the zone
//you want to take precedence last.
if (zonesList.indexOf("RETAIL ZONE")!=-1){
subscription = "RETAIL";
}
if (zonesList.indexOf("WHOLESALE ZONE")!=-1){
subscription = "WHOLESALE";
}
return subscription;//return the zone
}
使用中で:
$(function(){
var plan = getSecureZone();
if(plan=="RETAIL"){
//your code here
}
if(plan=="WHOLESALE"){
//your code here
}
});
于 2013-10-27T23:51:45.493 に答える