Magento2: আরোহী না করে দামকে সাজিয়ে ডিফল্ট


11

ঠিক আছে তাই আমি আমার বিভাগগুলি দাম অনুসারে বাছাই করি। ম্যাজেন্টো 2 এটি আরোহণের মূল্যে ডিফল্ট। তবে আমি এটিকে দামকে নীচে নামার চেয়ে পছন্দ করব।

খুব নিশ্চিত যে আমি catalog_category_view.xmlআমার থিমটি কাস্টমাইজ করে এবং product_list_toolbarএটিতে একটি যুক্তি রেখে এই কাজটি করতে পারি তবে আমি এটি যথেষ্টভাবে বের করতে পারি না। কোন সাহায্য?


2
এই দুটি লিঙ্ক mage2.pro/t/topic/1095 এবং mage2.pro/t/topic/1087/2 ব্যবহার করুন । এটি আপনাকে সাহায্য করবে
মনশাবি বিড়লা

উত্তর:


24

ফাইলটি অনুলিপি করুন:

বিক্রেতা / Magento / মডিউল-ক্যাটালগ / দৃশ্য / ফ্রন্টএন্ড / লেআউট / catalog_category_view.xml

প্রতি

অ্যাপ্লিকেশন / ডিজাইন / ফ্রন্টএন্ড / {{Vender_Namespace}} / {{THEME_NAME}} / Magento_Catalog / লেআউট / catalog_category_view.xml

আপনার থিমের মধ্যে এবং এটিকে ফাইলটিতে যুক্ত করুন:

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="2columns-left" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceContainer name="content">
            <referenceBlock name="category.products.list">
                <action method="setDefaultDirection">
                    <argument name="dir" xsi:type="string">desc</argument>
                </action>
            </referenceBlock>
        </referenceContainer>
        <move element="category.view.container" destination="content" before="-"/>
    </body>
</page>

মনস্তবী যে লিঙ্কগুলিতে এই কার্যকারিতাটি নিয়ন্ত্রণ করে এমন ফাইলগুলির জন্য মূলের সঠিক অবস্থানগুলিতে নির্দেশ করেছেন তবে তারা কোনও সমাধান সরবরাহ করে না। আমি কোর কোডটিতে কোথাও এটি পাইনি তাই আমি এই ফাইলের কোডের উপর ভিত্তি করে অনুমান করেছি:

বিক্রেতা / Magento / মডিউল-ক্যাটালগ / ব্লক / পণ্য / ProductList / Toolbar.php

এবং অন্যান্য .xML ফাইলগুলিতে অন্য কনফিগারেশনে সিনট্যাক্স ব্যবহার করেছেন।

আমি $block->setDefaultDirection('desc')ফাইলটিতে কল করার চেষ্টা করেছি :

বিক্রেতা / Magento / মডিউল-ক্যাটালগ / দৃশ্য / ফ্রন্টএন্ড / টেমপ্লেট / পণ্য / তালিকা / টুলবার / sorter.phtml

ফাইল কিন্তু এটি কাজ করে না। আমি কেন তা খুঁজে বের করি নি, তবে ডিফল্টটি সেট করতে এক্সএমএল ব্যবহার করে কাজ করেছি, তাই আমি সবেমাত্র এগিয়ে চলেছি।


1
আপনার সমাধানটি সাইক্লিক্সিক্সে কেবল একটি দ্রুত প্রশ্ন দুর্দান্ত কাজ করে তবে আমি এটি কেবল কয়েকটি বিভাগে প্রয়োগ করতে চাই। আমি ভেবেছিলাম অ্যাডমিন প্যানেলের মধ্যে প্রতিটি বিভাগের জন্য কাস্টম লেআউট আপডেট বিভাগে রেফারেন্স কনটেনার বিভাগে ফেলে দিতে পারব তবে এর কোনও প্রভাব নেই। কোন ধারনা?
ক্যাফেইনঘিইউ

এখনও কোনও সমাধান বের করতে পারেনি, যখন আমি এটি করার আরও ভাল উপায় নিয়ে আসতে পারি তখন আমি এখানে পোস্ট করব।
সার্কেলিক্স

1
@ ব্যবহারকারী 1837290, আপনি কেবল referenceContainerনির্দিষ্ট নির্দিষ্ট বিভাগের প্রশাসকের "লেআউট আপডেট এক্সএমএল" ক্ষেত্রে শুরু করে শেষ করতে পারেন ing যতক্ষণ না আপনি আপনার থিমটিতে বিশ্বব্যাপী বাছাইকে ওভাররাইড করছেন না এটি কাজ করা উচিত। সংশ্লিষ্ট: magento.stackexchange.com/q/167048/2415
অপরিচ্ছন্ন paws

1
@ সাইক্লিক্সিক্সে আপনাকে কেবল একটি ব্লক উল্লেখ করার সময় নাম বৈশিষ্ট্য সরবরাহ করতে হবে
মিগুয়েল ফিলিপ গিলেন ক্যালো

1
কেবল মন্তব্য করতে এবং বলতে চেয়েছিলেন এটি এখনও ম্যাজেন্টো ২.৩ হিসাবে কাজ করে, এটি কেবল আমার জন্য সমস্যাটি সমাধান করেছে!
ড্যানিয়েল ব্ল্যাক

5

আপনি সংক্ষিপ্ত সংস্করণটিও ব্যবহার করতে পারেন। নির্দিষ্ট বিভাগগুলির জন্য আপনি পৃথক ফাইলগুলি ব্যবহার করতে পারেন: ক্যাটালগ_শ্রেণী_ভিউ_আইডি_এক্সএমএল

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="2columns-left" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
    <referenceBlock name="category.products.list">
        <action method="setDefaultDirection">
            <argument name="dir" xsi:type="string">desc</argument>
        </action>
    </referenceBlock>
</body>
</page>

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