প্রতিটি ব্লক, বা গ্রুপের গ্রুপগুলি config.xml
এই জাতীয় মডিউলের ( <global>
ট্যাগের অভ্যন্তরে) ফাইলে ঘোষিত হয় ।
ক্যাটালগ মডিউলটির একটি উদাহরণ এখানে
<blocks><!-- marks definition of a block group -->
<catalog><!-- unique alias for blocks in the module -->
<class>Mage_Catalog_Block</class><!-- class prefix for all blocks -->
</catalog>
</blocks>
এর অর্থ হ'ল একটি ব্লকটি উপসটি থেকে শুরু করে বাকী ক্লাসের পথটি catalog/class_name_here
যেখানে উলাম ব্যবহার করে তা ইনস্ট্যান্ট করা যেতে পারে class_name_here
।
এর অর্থ catalog/class_name_here
ডিফল্টরূপে ম্যাপ করা হবে Mage_Catalog_Block_Class_Name_Here
।
একটি ব্লক পুনর্লিখনের জন্য আপনাকে এমন একটি মডিউল তৈরি করতে হবে যা আপনি Magento_Catalog
আমার উদাহরণে ( ) পরিবর্তন করার চেষ্টা করছেন সেই মডিউলের উপর নির্ভর করে ।
এবং আপনাকে config.xml
এটি <global>
ট্যাগের আওতায় যুক্ত করতে হবে ।
<blocks>
<catalog><!-- alias of the block group you are rewriting -->
<rewrite><!-- reserved tag: specify that you are rewriting something -->
<class_name_here>YourNamespace_YourModule_Block_Your_New_Class_Here</class_name_here> <!-- tag: the rest of the alias of the class you are rewriting. value: the name of your class that rewrites the core class -->
</rewrite>
</catalog>
</blocks>
তারপরে ক্লাস তৈরি করুন YourNamespace_YourModule_Block_Your_New_Class_Here
(জেডএফ ফোল্ডার কাঠামো অনুসরণ করে) এবং এই ক্লাসটি মূল বর্গকে বাড়িয়ে দিন।
class YourNamespace_YourModule_Block_Your_New_Class_Here extends Mage_Catalog_Block_Class_Name_Here
{
//your awesome code here
}
আপনার হয়ে গেলে, সংকলনটি অক্ষম করুন এবং এটি আবার সক্ষম করুন (যদি প্রয়োজন হয়) এবং ক্যাশে সাফ করুন।
এটি বিমূর্ত ব্লকের জন্য কাজ করবে না।
এটি কেবল ক্লাসগুলির জন্য কাজ করে যা তাত্ক্ষণিকভাবে কাজ করে।
উদাহরণ
এর অনুমান করা যে আপনার ফাইল পুনর্লিখন চান অ্যাপ্লিকেশন \ কোড \ কোর \ পুরোনো যাদুকর \ ক্যাটালগ \ ব্লক \ পণ্যের \ দেখুন \ বিকল্প \ টাইপ \ Select.php যা বর্গ হয়েছে Mage_Catalog_Block_Product_View_Options_Type_Select
আপনার নিজের মডিউলে Marius_Test ।
তারপরে আপনার এই প্রবেশের প্রয়োজন হবে আপনার config.xml
:
<blocks>
<catalog>
<rewrite>
<product_view_options_type_select>Marius_Test_Block_Catalog_Block_Product_View_Options_Type_Select</product_view_options_type_select>
</rewrite>
</catalog>
</blocks>
অ্যাপ্লিকেশন \ কোড \ স্থানীয় \ Marius \ টেস্ট \ ব্লক \ ক্যাটালগ \ পণ্যের \ দেখুন \ বিকল্প \ টাইপ \ Select.php :
class Marius_Test_Block_Catalog_Product_View_Options_Type_Select extends Mage_Catalog_Block_Product_View_Options_Type_Select
{
//your awesome code here
}
Mage_Catalog_Block_Product_View_Options_Type_Select
মধ্যে \ কোড \ স্থানীয় \ WR \ EPO \ ব্লক \ ক্যাটালগ \ ব্লক \ পণ্যের \ দেখুন \ বিকল্প \ টাইপ \ Select.php অ্যাপ্লিকেশন । আমি এটির মতো চেষ্টা করেছিলাম: কোডেপেন.আইও