Magento 제품 속성은 매우 융통성이 있지만 제품마다 동적 인 가치가 있다는 것은 제품별로 하나의 속성이 필요하다는 것을 의미합니다.별로 의미가 없으므로 이러한 속성 값이 제품 내에서 공통점을 공유한다고 가정합니다. 당신은 제한된 수의 속성 (또는 하나?)을 갖게 될 것입니다. 이러한 각 속성에 대해 사전에 속성 및 백엔드 모델을 작성한 다음 cron 작업 또는 이벤트를 사용하여 API의 속성 값 옵션을 갱신하고 데이터베이스 또는 일부 다른 메소드에서 로컬로 캐시하십시오.
$installer->addAttribute('catalog_product', 'my_attr_code', array(
'label' => 'Attribute Name',
'required' => false,
'input' => 'select',
'source' => 'namespace/source',
'default' => 'none',
'position' => 1,
'sort_order' => 3,
));
을 또는 eav_attribute
테이블에 대한 자신의 SQL 삽입 문을 롤 :이 같은 모듈 설치에 속성을 추가 할 수 있습니다. 새 속성을 백엔드에 설정된 속성에 지정하여 제품에서 사용할 수 있도록하십시오.그런 다음 방법 Mage_Eav_Model_Entity_Attribute_Source_Table
(당신이 당신의 속성 값에 대한 선택 입력을 원하는 가정) 확장 및 최소 구현 My_Namespace_Model_Source
에서 모델을 만들 :
getAllOptions()
getOptionText($value)
을 그래서이 로컬 캐시 된 동적 옵션에서 끌어 것이며, 대부분 새 속성은 Magento에서와 같이 작동합니다. 이러한 방법은 한 페이지로드에서 여러 번 공격 될 수 있으므로 지능형 캐싱을 사용해야합니다. 제품 생성 또는 편집 페이지가 표시되기 바로 전에 관찰 된 이벤트가있을 수 있습니다. 그렇지 않으면 클래스 또는 컨트롤러를 무시하거나 Magento cron 작업을 사용하십시오.
편집 : 기존 Magento 속성 모델을 사용하고 기존 API를 통해 옵션 값을 만들 수도 있지만 동기화를 수행하거나 다른 이유로 인해 추가 메타 데이터가 필요할 수 있다고 가정합니다. 커스텀 백엔드 모델.
대답을 수락합니까? – ColinM
@ 콜린 남 끝난. :) –