প্রোগ্রামযুক্তভাবে কাস্টম অ্যাট্রিবিউট সেটটিতে কাস্টম বৈশিষ্ট্য যুক্ত করুন Add


10

হাই এই আমাকে কেউ সাহায্য করতে পারে?

আমি একটি কাস্টম অ্যাট্রিবিউট সেট এবং কাস্টম বৈশিষ্ট্য হিসাবে তৈরি করেছি

$installer = $this;
/* @var $installer Mage_Eav_Model_Entity_Setup */
$installer->startSetup();

//Create Attribute set with Based on Default attribute set
//$installer->removeAttributeSet(Mage_Catalog_Model_Product::ENTITY, 'New Attr Set');
/*
$skeletonID=$installer->getAttributeSetId('catalog_product','Default');
$entityTypeId = Mage::getModel('catalog/product')
->getResource()
->getEntityType()
->getId(); //product entity type

$attributeSet = Mage::getModel('eav/entity_attribute_set')
->setEntityTypeId($entityTypeId)
->setAttributeSetName("New Attr Set");

$attributeSet->validate();
$attributeSet->save();

$attributeSet->initFromSkeleton($skeletonID)->save();


//Create attribute new_attr
//$installer->removeAttribute('catalog_product', 'new_attr');
$data= array (
'attribute_set' =>  'New Attr Set',
'group' => 'General',
'label'    => 'New Attr',
'visible'     => true,
'type'     => 'int', // multiselect uses comma-sep storage
'input'    => 'boolean',
'system'   => false,
'required' => false,
'user_defined' => 1,//defaults to false; if true, define a group
'source' => 'eav/entity_attribute_source_boolean',
'default' => 1,
'global'        => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
 );

 $installer->addAttribute('catalog_product','new_attr',$data);
 */

এই কোডটি 'জেনারেল' গ্রুপে 'অ্যাটবিট' নতুন_আউটআর 'যুক্ত করে এবং তাই কাস্টম অ্যাট্রিবিউটটি সমস্ত' ডিফল্ট 'এর মতো অ্যাট্রিবিউট সেটে প্রদর্শিত হয়।

আমি কেবল 'জেনারেল' গ্রুপের অধীনে কাস্টম অ্যাট্রিবিউট 'new_attr' কেবলমাত্র কাস্টম অ্যাট্রিবিউট সেট 'নিউ অ্যাট্রিক সেট'-এ যুক্ত করতে চাই। এটা কি সম্ভব?


এটি কি অর্জন করাও সম্ভব?
ম্যাজেন্টো_নিউবি

উত্তর:


18

হ্যাঁ, এটি সম্ভব।

প্রথমে সমস্ত অ্যাট্রিবিউট সেটগুলিতে অ্যাট্রিবিউট যোগ করা এড়াতে আপনার মানগুলি ডেটা অ্যারেতে এই কীগুলি সেট করুন:

'user_defined'         => true,
'group'                => ''

তারপরে আপনার অ্যাট্রিবিউট সেটে অ্যাট্রিবিউট যুক্ত করুন:

$attributeSetId = $this->getAttributeSetId($entityTypeId, 'New Attr Set');
$this->addAttributeToSet($entityTypeId, $attributeSetId, 'General', 'new_attr', 10);

0

অ্যাট্রিবিউট সেটটিতে অ্যাট্রিবিউট (কোড দ্বারা) যুক্ত করার জন্য আমার ফাংশন

    public function addToAttributeSet($code, $attributeSetName = 'Default', $groupName = 'Details')
{
    try {
        $setup = new Mage_Eav_Model_Entity_Setup('core_setup');

        $attributeSetId = $setup->getAttributeSetId('catalog_product', $attributeSetName);
        $attributeGroupId = $setup->getAttributeGroupId('catalog_product', $attributeSetId, $groupName);
        $attributeId = $setup->getAttributeId('catalog_product', $code);

        $setup->addAttributeToSet($entityTypeId = 'catalog_product', $attributeSetId, $attributeGroupId, $attributeId);

        $this->_success[] = 'Added Attribute to SET ' . $attributeSetName . ' (' . $code . ')';
        return true;

    } catch (Exception $e) {
        $this->_errors[] = 'ERROR when added Attribute to SET ' . $attributeSetName . ' (' . $code . ')';
        $this->_errors[] = $e->getMessage();
        return false;
    }
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.