system.xml
ফাইলগুলির জন্য এটি শ্রেণিবদ্ধ ফাইলগুলির মতো কাজ করে না। system.xml
ফাইল Magento সক্রিয় মডিউল থেকে সংগ্রহ করা হয়। কেবল local
ফোল্ডারে একটি অনুলিপি করার অর্থ এটি মডিউলটিতে নেই, কারণ মডিউল ঘোষণার ফাইলটি এখনও বলে যে মডিউল core
কোডপুলের অন্তর্গত ।
আপনি যদি কোনও বিভাগে নতুন ক্ষেত্র যুক্ত করতে চান বা কিছু ক্ষেত্রকে ওভাররাইড করতে চান তবে আপনার নিজের নিজস্ব মডিউল তৈরি করতে হবে।
আপনি কীভাবে বিভাগে একটি নতুন ক্ষেত্র যুক্ত Catalog->Frontend
করতে পারেন এবং একই বিভাগে আপনি কীভাবে ওভাররাইড করতে পারেন তার একটি উদাহরণ এখানে ।
ধরা যাক আপনার মডিউলটি বলা হয়েছে Easylife_Catalog
।
আপনার নিম্নলিখিত ফাইলগুলির প্রয়োজন হবে:
app/etc/modules/Easylife_Catalog.xml
- ঘোষণার ফাইল
<?xml version="1.0"?>
<config>
<modules>
<Easylife_Catalog>
<active>true</active>
<codePool>local</codePool>
<depends>
<Mage_Catalog />
</depends>
</Easylife_Catalog>
</modules>
</config>
app/code/local/Easylife/Catalog/etc/config.xml
- কনফিগারেশন ফাইল
<?xml version="1.0"?>
<config>
<modules>
<Easylife_Catalog>
<version>0.0.1</version>
</Easylife_Catalog>
</modules>
</config>
app/etc/local/Easylife/Catalog/etc/system.xml
- সিস্টেম-> কনফিগারেশন ফাইল
আসুন ধরা যাক আপনি List Mode
কেবলমাত্র বিশ্বব্যাপী স্তরে (কোনও ওয়েবসাইট এবং স্টোর দর্শন স্তর নয়) ফিল্ডটি উপলভ্য করতে চান । সেটিংয়ের পথটি catalog/frontend/list_mode
। তারপরে এই system.xml
চেহারাটি দেখতে পাবেন:
<?xml version="1.0"?>
<config>
<sections>
<catalog><!-- first part of the path -->
<groups>
<frontend><!-- second part of the path -->
<fields>
<list_mode><!-- third part of the path -->
<show_in_website>0</show_in_website><!-- this will override the core value -->
<show_in_store>0</show_in_store><!-- this will override the core value -->
</list_mode>
</fields>
</frontend>
</groups>
</catalog>
</sections>
</config>
এখন ধরা যাক আপনি custom
একই কনফিগার বিভাগে নতুন একটি ক্ষেত্র যুক্ত করতে চান । এখন উপরের এক্সএমএল হয়ে যায়
<?xml version="1.0"?>
<config>
<sections>
<catalog><!-- first part of the path -->
<groups>
<frontend><!-- second part of the path -->
<fields>
<list_mode><!-- third part of the path -->
<show_in_website>0</show_in_website><!-- this will override the core value -->
<show_in_store>0</show_in_store><!-- this will override the core value -->
</list_mode>
<custom translate="label"><!-- your new field -->
<label>Custom</label>
<frontend_type>text</frontend_type>
<sort_order>1000</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
</custom>
</fields>
</frontend>
</groups>
</catalog>
</sections>
</config>
আমি জানি না এই পদ্ধতিটি ব্যবহার করে কনফিগারেশন থেকে কিছু ক্ষেত্র সরানোর কোনও পদ্ধতি আছে কিনা। আমি এটি সন্ধান করেছি কিন্তু কিছুই পেলাম না।