2013-02-19 2 views
1

프로모션 또는 장바구니 규칙을 만들 때 규칙의 구문 분석 및 적용이 코드에서 이루어지는 위치를 원합니다.프로모션 규칙이 magento 코드로 적용되는 곳

나는 그것이 여기에 있다는 것을 알고있다 : Mage_SalesRule_Model_Rule 그러나 그것을 완전히 알아낼 수는 없다.

-hnx.

답변

0

글쎄, Mage_SalesRule_Model_Validator 클래스 process에서 시작할 수 있습니다.
모든 장바구니 품목을 처리하고 장바구니 규칙을 적용 할 수 있는지 확인하십시오. 어떤 규칙이 적용되었는지 쉽게 알 수 있습니다.
룰은 validate 메소드를가집니다.

/** 
* Validate rule conditions to determine if rule can run 
* 
* @param Varien_Object $object 
* 
* @return bool 
*/ 
public function validate(Varien_Object $object) 
{ 
    return $this->getConditions()->validate($object); 
} 

이 호출은 Mage_Rule_Model_Condition_Combine 클래스의 조건부 구문 분석을 시작합니다.

Condition 클래스 계층 구조로 작동합니다 (Mage_SalesRule_Model_Rule_Condition_ * 참조).
또한 $rule->getConditions()->asArray()으로 전화하여 조건 구조를 빠르게 볼 수 있습니다.

+0

Thnx ... 정말 도움이되었습니다 ... – ANKIT

관련 문제