আমি কীভাবে Mage_Page মডিউলটিতে একটি পৃষ্ঠা বিন্যাস যুক্ত করতে পারি?


11

আমি আপগ্রেড Magento পর আবিষ্কার করেন যে কোর Mage_Pageএর config.xmlম্যানুয়ালি সম্পাদিত হয়েছে, এবং এখন আমি একটি উপায় যে নেই ঊর্ধ্বলিপি কোর মধ্যে XML পরিবর্তন করতে খুঁজছি।

মূল XML এর উদাহরণ এখানে:

<config>
    <modules>
        <Mage_Page>
            <version>1.6.0.0</version>
        </Mage_Page>
    </modules>
    <global>
        <models>
            <page>
                <class>Mage_Page_Model</class>
            </page>
        </models>
        <blocks>
            <page>
                <class>Mage_Page_Block</class>
            </page>
        </blocks>
        <page>
            <layouts>
                <empty module="page" translate="label">
                    <label>Empty</label>
                    <template>page/empty.phtml</template>
                    <layout_handle>page_empty</layout_handle>
                </empty>
                <one_column module="page" translate="label">
                    <label>1 column</label>
                    <template>page/1column.phtml</template>
                    <layout_handle>page_one_column</layout_handle>
                    <is_default>1</is_default>

আমি অন্য লেআউট যুক্ত করতে চাইছি, one_columnবা মত empty। মুছে যাওয়ার config.xmlসঙ্গে app/code/local/Mage/Page/etc/config.xmlকাজ বলে মনে হচ্ছে না, আমি স্পর্শ কোর ছাড়াই এটি কাজ সম্পর্কে যেতে হবে?

উত্তর:


5

Mage_Page এর উপর নির্ভরতার সাথে একটি মডিউল তৈরি করুন এবং আপনার নিজের কনফিগারেশনে নতুন লেআউট যুক্ত করুন:

অ্যাপ্লিকেশন / ইত্যাদি / মডিউল / My_Layout.xml

<?xml version="1.0"?>
<config>
    <modules>
        <My_Layout>
            <active>true</active>
            <codePool>local</codePool>
            <depends>
                <Mage_Page />
            </depends>
        </My_Layout>
    </modules>
</config>

অ্যাপ্লিকেশন / কোড / স্থানীয় / আমার / লেআউট জন্য / etc / config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <My_Layout>
            <version>1.0.0</version>
        </My_Layout>
    </modules>
    <global>
        <page>
            <layouts>
                <my_layout module="page" translate="label">
                    <label>My Layout</label>
                    <template>page/mylayout.phtml</template>
                    <layout_handle>my_layout</layout_handle>
                </my_layout>
            </layouts>
        </page>
    </global>
    <frontend>
        <layout>
            <updates>
                <my_layout module="My_Layout">
                    <file>my_layout.xml</file>
                </my_layout>
            </updates>
        </layout>
    </frontend>
</config>

অ্যাপ্লিকেশন / ডিজাইন / ফ্রন্টএন্ড / বেস / ডিফল্ট / লেআউট / my_layout.xml

<?xml version="1.0"?>
<layout version="0.1.0">
    <my_layout translate="label">
        <label>All My Layout Pages</label>
        <reference name="root">
            <action method="setTemplate"><template>page/mylayout.phtml</template></action>
            <!-- Mark root page block that template is applied -->
            <action method="setIsHandle"><applied>1</applied></action>
        </reference>
    </my_layout>
</layout>

মডিউলটির জন্য কাস্টম লেআউট আপডেট ফাইলে সম্পর্কিত লেআউট আপডেট হ্যান্ডেল সরবরাহ করা ভাল। Ref মূল বিন্যাস কনফিগারেশন Mage_Pageমডিউল (লিঙ্ক) এবং সংশ্লিষ্ট আপডেট হ্যান্ডেল ঘোষণা (লিঙ্ক)
benmarks

@ বেনমার্কগুলি সম্পন্ন হয়েছে! :)
রিক কুইপার্স

1

অ্যাপ্লিকেশন / ইত্যাদি / লোকাল.এক্সএমএল করার জন্য আপনাকে যা প্রয়োজন তা যুক্ত করার বিকল্প রয়েছে, কেবল গ্লোবাল / পৃষ্ঠা / লেআউট নোড তৈরি করুন এবং সেখানে যা চান তা যুক্ত করুন। এটি সর্বাধিক মার্জিত সমাধান নয়, তবে যদি আপনি কোনও বিন্যাস টেম্পলেট যুক্ত করার উদ্দেশ্যে উত্সর্গীকৃত মডিউলটি তৈরি করতে না চান তবে এটি কাজ করে। যদি আপনি এই শিরোনাম কনফিগারেশনটি আরও বেশি দোকানে বিতরণ করার পরিকল্পনা করেন তবে এর জন্য স্থানীয় / সম্প্রদায় মডিউলটি করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.