顧客グループが特別価格を持っている場合、画像を表示したい
-
12-12-2019 - |
質問
顧客が特定のグループにログインしていて、そのグループに特別な価格がある場合は、製品の隅に画像を表示します。
顧客がログインしているかどうかを確認するためのコードを持っています。また、それらがどのグループにいるかを確認しています。そして、私はそれが真実である場合にこれを追加しました。これは私がこれに持っているコードです。
<?php
$_isLoggedIn = $this->helper('customer')->isLoggedIn();
if($_isLoggedIn == true){
$_myGroupId = Mage::getSingleton('customer/session')->getCustomerGroupId();
if($_myGroupId == 5){
?><div class="special"> </div><?php
}
}
?>
.
しかし、その製品もその顧客グループの特別価格を持っているかどうかを確認するために別のIFステートメントが必要です。このコードを使用してprice.phtmlの前にこれをやったことがあります
<?php $login = Mage::getSingleton( 'customer/session' )->isLoggedIn(); //Check if User is Logged In
if($login && Mage::getSingleton('customer/session')->getCustomerGroupId()==5)
{
$groupPrices = $_product->getData('group_price');
$Groupprice= $groupPrices;
if (is_null($groupPrices)) {
$attribute = $_product->getResource()->getAttribute('group_price');
if ($attribute){
$attribute->getBackend()->afterLoad($_product);
$groupPrices = $_product->getData('group_price');}}
/* check group price exit nor not */
if (!is_null($groupPrices) || is_array($groupPrices)) {
foreach ($groupPrices as $groupPrice) {
if($groupPrice['cust_group'] == Mage::getSingleton('customer/session')->getCustomerGroupId()){
$Groupprice = $groupPrice['website_price'];
$Groupprice=$groupPrice['cust_group'];
break;}} }
/* $Groupprice is null mean group price is not exit*/
if(!is_null($Groupprice)){
//group price exits ?>
<span class="price-label"><?php echo "Your Special Price " ?></span><?php}?>
.
しかし、このコードはView.phtmlでは機能しません。私は少し遊びをしています、そして私はそれを働かせるように思われることはできません、誰かが私の元のif文に別のif文を追加するのを手伝ってくれることができました。
私が明確でないのなら私に知らせてください。そして事前にありがとうございました。
解決
こんにちはあなたは商品オブジェクトを$ _productに変更する必要があります。その後、アフターロード機能をロードしなかった
<?php
$login = Mage::getSingleton( 'customer/session' )->isLoggedIn();
//Check if User is Logged In
if($login)
{
$groupPrices = $_product->getData('group_price');
$Groupprice= $groupPrices;
/* check group price exit nor not */
if (!is_null($groupPrices) || is_array($groupPrices)) {
foreach ($groupPrices as $groupPrice) {
/* match with current customer group */
if($groupPrice['cust_group'] == Mage::getSingleton('customer/session')->getCustomerGroupId()){
echo $Groupprice = $groupPrice['website_price'];
echo "<br/>";
echo $Groupprice=$groupPrice['cust_group'];
break;
}
}
}
/* $Groupprice is null mean group price is not exit*/
if(!is_null($Groupprice)){
//group price eixts
?>
<span class="price-label"><?php echo "Special Group Price " ?></span>
<?php
}else{
//Group price is exits.
?>
<span class="price-label"><?php echo "Now" ?></span>
<?php }
?>
. 所属していません magento.stackexchange