Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Magento : System/Config Add Custom Value in MultiSelect

i have created one simple Module. i have created system.xml. there is one field Multiselect i want to add custom Value in multiselect field.

is it possible to add custom Value in multiselect field ?

 <Data translate="label">
 <label>Select Socail Media</label>
 <comment>Select Social Media To fdisplay ion Front Side</comment>
 <front_end_type>multiselect</front_end_type>
 <source_model>adminhtml/system_config_source_country</source_model>
 <sort_order>3</sort_order>
 <show_in_default>1</show_in_default>
 <show_in_website>1</show_in_website>
 <show_in_store>1</show_in_store>
 </Data>    

in Multiselect Options i want to add my Custom Option like: Data1, Data2 , Data3 etc..

how can i do that? is it possible?

like image 260
Jack Torris Avatar asked Sep 06 '13 05:09

Jack Torris


1 Answers

yes you can create like this way add below code to system.xml

<fields>
    <view_style translate="label">
        <label>Display Settings</label>
        <frontend_type>multiselect</frontend_type>
        <source_model>yourmodule/system_config_source_view</source_model>
        <sort_order>40</sort_order>
        <show_in_default>1</show_in_default>
    </view_style>
</fields>

create one file for multiselect option in your module in this path

your_namespace/yourmodel/Model/System/Config/Source/View.php

Add below code in your View.php

class YourNamespace_YourModule_Model_System_Config_Source_View 
{
    /**
     * Options getter
     *
     * @return array
     */
    public function toOptionArray()
    {
        return array(
            array('value' => 0, 'label' => Mage::helper('adminhtml')->__('Data1')),
            array('value' => 1, 'label' => Mage::helper('adminhtml')->__('Data2')),
            array('value' => 2, 'label' => Mage::helper('adminhtml')->__('Data3')),
        );
    }

    /**
     * Get options in "key-value" format
     *
     * @return array
     */
    public function toArray()
    {
        return array(
            0 => Mage::helper('adminhtml')->__('Data1'),
            1 => Mage::helper('adminhtml')->__('Data2'),
            3 => Mage::helper('adminhtml')->__('Data3'),
        );
    }
}

Also for more detail use this link

hope this will sure help you.

like image 151
liyakat Avatar answered Nov 15 '22 11:11

liyakat