ব্লকের জন্য মডিউল লেআউট.এক্সএমএল ব্যবহার করে <শিরোনামে <সিএসএস এবং জেএস যুক্ত করা


9

সংক্ষিপ্তসার

আমি আমার গোষ্ঠীযুক্ত পণ্য দর্শন এবং আমার সাধারণ পণ্য দর্শনে একটি ব্লক যুক্ত করতে চাই। এই ব্লকে হোভার স্টেটসের জন্য কিছু দুর্দান্ত সরঞ্জামদণ্ড থাকবে, আমি একটি ছোট লাইব্রেরি ব্যবহার করছি যার সাথে একটি জেকুরি প্লাগইন এবং একটি সিএসএস স্টাইলশিট রয়েছে।

আমি এই দুটি সংস্থানটি কেবলমাত্র এই পৃষ্ঠাগুলিতে ম্যাজেন্টোর মধ্যে অন্তর্ভুক্ত করতে চাই।

মন্তব্য

  • আমি একটি কাস্টম থিম চালাচ্ছি;
  • ক্যাচিং অক্ষম করা হয়েছে ; এবং
  • আমার ফাইলগুলি /jsডিরেক্টরিতে থাকে;

এপর্যন্ত…

তবুও আমি জানতাম যে একটি উপায় layout.xmlআমার মডিউলটিতে ব্যবহার করা ছিল , প্রথমে এটি কাজ করে না তাই আমি ভেবেছিলাম আমার config.xmlনিজের লেআউট প্রয়োজনীয়তা সম্পর্কে ম্যাগেন্টোকে জানাতে আমার ভিতরে অতিরিক্ত কনফিগারেশন প্রয়োজন - এটি খুব কার্যকর হয়নি।

আমি যা বোঝাতে চাইছি তা দ্বারা কাজ করা হয়নি , আমার সম্পদ লোড হয়নি।

নীচে সংযুক্ত উত্সটি দয়া করে সন্ধান করুন।


অ্যাপ্লিকেশন / কোড / স্থানীয় / ভেন্ডর / নির্ধারণ করে / etc / layout.xml

<?xml version="1.0"?>
<layout>
    <default>
        <reference name="head">
            <action method="addJs">
                <script>vendor/qtip/jquery.qtip.min.js</script>
            </action>
            <action method="addCss">
                <stylesheet>vendor/qtip/jquery.qtip.min.css</stylesheet>
            </action>
        </reference>
    </default>
</layout>

অ্যাপ্লিকেশন / কোড / স্থানীয় / ভেন্ডর / নির্ধারণ করে / etc / config.xml

<?xml version="1.0"?>
<config>

    ...

    <frontend>
        <layout>
            <updates>
                <vendor_rating>
                    <file>layout.xml</file>
                </vendor_rating>
            </updates>
        </layout>
    </frontend>

    ...

</config>

উত্তর:


17

প্রথমে আপনার লেআউট ফাইলটি রাখা উচিত app/design/frontend/{interface}/{theme}/layout/
দ্বিতীয়ত। আপনি যদি কেবল দলবদ্ধ এবং সাধারণ পণ্য পৃষ্ঠাগুলিতে সিএসএস এবং জেএস ফাইলগুলি যুক্ত করতে চান তবে <default>লেআউট হ্যান্ডেলটি ব্যবহার করবেন না ।
আপনার লেআউটটি দেখতে এমনভাবে করুন:

<?xml version="1.0"?>
<layout>
    <my_handle><!-- declare a custom handle so you won't duplicate the code -->
        <reference name="head">
            <action method="addJs">
                <script>vendor/qtip/jquery.qtip.min.js</script>
            </action>
            <action method="addCss">
                <stylesheet>vendor/qtip/jquery.qtip.min.css</stylesheet>
            </action>
        </reference>
    </my_handle>
    <PRODUCT_TYPE_simple><!-- layout handle for simple products -->
        <update handle="my_handle" /> <!-- include the handle you declared above -->
    </PRODUCT_TYPE_simple>
    <PRODUCT_TYPE_grouped><!-- layout handle for grouped products -->
        <update handle="my_handle" /> <!-- include the handle you declared above -->
    </PRODUCT_TYPE_grouped>
</layout>

আপনাকে অনেক ধন্যবাদ, এটি অনেক অর্থবোধ করে। আমি অনুমান করি যেহেতু আমার config.xmlলেআউট এক্সএমএল ফাইলের নাম সংজ্ঞায়িত করা হয়েছে আমি কি এটিকে বলতে পারি?
ছাই

@Takingsides। হ্যাঁ. নামটি যা খুশি তা হতে পারে।
মারিয়াস

4

যেহেতু এটি এখনও পরিষ্কারভাবে উল্লেখ করা হয়নি:

ডিরেক্টরি

একটি কাস্টম মডিউলটির জন্য লেআউট এক্সএমএল ফাইলগুলি থিমটি স্বতন্ত্র হওয়া উচিত এবং এভাবেই স্থাপন করা উচিত

app/design/frontend/base/default/layout

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

ফাইলের নাম

মনে রাখবেন যে এই ফাইলগুলিকে মাঝে মধ্যে "লেআউট.এক্সএমএল ফাইল" হিসাবে উল্লেখ করা হয় তবে layout.xmlএটি আসলে কোনও ফাইলের নাম নয় যা আপনি সাধারণত কোনও ম্যাজেন্টো কোডে খুঁজে পাবেন। আপনি যদি আপনার layout.xmlফাইলটি সঠিক স্থানে রাখেন তবে আপনার কোডটি কাজ করে (উপরে দেখুন), তবে কনভেনশন হ'ল নিম্ন কেসির মডিউলটির নামটি ব্যবহার করা:

rating.xml

বা আরও ভাল

vendor_rating.xml

মনে রাখবেন যে সমস্ত মডিউল থেকে লেআউট XML ফাইলগুলি একটি একক ডিরেক্টরিতে থাকে, তাই নামটি অবশ্যই অনন্য হতে হবে!


1

আপনার বিন্যাস.এক্সএমএলটি ভিতরে যেতে হবে

অ্যাপ্লিকেশন / ডিজাইন / ফ্রন্টএন্ড / [আপনার কাস্টম প্যাকেজ] / [আপনার কাস্টম থিম] / লেআউট /


0

আপনার নির্দিষ্ট মামলার জন্য উপরে বর্ণিত হিসাবে আপনি এটি <default>ট্যাগগুলির মধ্যে ব্যবহার করবেন না তবে উদাহরণস্বরূপ আপনি সিএসএস ফাইলগুলি যুক্ত করতে পারেন যা আপনার রুট ম্যাজেন্টো / জেএস ডিরেক্টরিতে অন্তর্ভুক্ত থাকে app/design/frontend/vendor/theme/layout/local.xmlউদাহরণস্বরূপ:

<?xml version="1.0"?>

<layout version="0.1.0">
    <default>
        <reference name="head">
             <action method="addItem">
                <type>js_css</type>
                <stylesheet>css/styles.css</stylesheet>
                <params>media="all"</params>
            </action>
        </reference>
    </default>
</layout>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.