2013-01-23 5 views

cevap

6

görün, denemek ne olabilir magento geçerli:

Yönetici 2 alanlarını oluşturma - Katalog> ->tierprice_to_date ve tierprice_from_date için Öznitelik ve eklemek Öznitelik Kümelerinizde price grubu. /app/design/frontend/base/default/template/catalog/product/view.phtml

if(date between tierprice_from_date and tierprice_to_date){ 
    echo $this->getTierPriceHtml(); 
} 

yılında

Sonra ürün kullanarak sepetine eklendiğinde fiyat kontrol gözlemci ile özel bir modül oluşturmak olay 'sales_quote_add_item':

oluşturun: app/kod/yerel/MageIgniter/TierPriceDateRange/etc/config.xml

<?xml version="1.0"?> 
<config> 
    <modules> 
     <MageIgniter_TierPriceDateRange> 
      <version>1.0.1</version> 
     </MageIgniter_TierPriceDateRange> 
    </modules> 

    <global> 
     <models> 
      <tierpricedaterange> 
       <class>MageIgniter_TierPriceDateRange_Model</class> 
      </tierpricedaterange> 
     </models> 
     <events> 
      <sales_quote_add_item> 
       <observers> 
        <tierpricedaterange_observer> 
         <type>singleton</type> 
         <class>tierpricedaterange/observer</class> 
         <method>updatePrice</method> 
        </tierpricedaterange_observer> 
       </observers> 
      </sales_quote_add_item> 
     </events> 
    </global> 
</config> 

oluşturun: app/kod/yerel/MageIgniter/TierPriceDa teRange/Model/

class MageIgniter_TierPriceDateRange_Model_Observer 
{ 
    public function updatePrice($observer) { 
    if(date NOT between tierprice_from_date and tierprice_to_date){ 
     $cartItem = $observer->getEvent()->getQuoteItem(); 
     // check if a tier price was apply and change it back to the original price (none tier price) 
     $product = Mage::getModule('catalog/product')->load($product->getId()); 

     if($cartItem->getPrice() == $product->getTierPrice($cartItem->getQty())){ 
      $new_price = $product->getPrice(); 
      $product->setOriginalCustomPrice($new_price); 
      $product->save(); 
     } 
    } 
    return $this; 
} 

Observer.php

oluşturun: app/etc/modules/MageIgniter_TierPriceDateRange.xml

<?xml version="1.0"?> 
    <config> 
      <modules> 
        <MageIgniter_TierPriceDateRange> 
          <active>true</active> 
          <codePool>local</codePool> 
        </MageIgniter_TierPriceDateRange> 
      </modules> 
    </config> 

Sonra berrak önbellek varsa.

+0

'isStoreDateInInterval' işlevinin kullanılmasını öneririm. Kullanım: 'Mage :: app() -> getLocale() -> isStoreDateInInterval (null, tierprice_from_date, tierprice_to_date' – Ian

+0

, lütfen her müşteri grubuna yeni fiyat özelliklerini nasıl sıralayabilirim? Her müşteri grubu için veriler –

+0

@RohitGoel Bkz. http://stackoverflow.com/questions/18241595/how-do-you-add-custom-attributes-to-customer-groups-in-magento –

2

Bu, standart Magento yapılandırması içinde mümkün değildir. Bunu mümkün kılmak için özel bir modül oluşturmanız (veya sizin için geliştirmeniz) gerekir. Bu dahilinde varsayılan olarak mümkün olmadığından

da http://www.magentocommerce.com/boards/viewthread/230679/

+0

evet bir modül oluşturma konusunda yardım istedim. Yine de teşekkürler :) –

+0

Lütfen her bir müşteri grubuna yeni fiyat özelliklerini nasıl sıralayabilirim? Her müşteri grubu için farklı veriler eklemem gerekiyor. –