ম্যাজেন্টো 2: অন্য পিএইচটিএমএল ফাইলটিতে কাস্টম বিকল্পটি কীভাবে প্রদর্শিত হবে


14

আমরা এই অবস্থানটি অন্য পিএইচটিএমএল ফাইলে দেখাতে কাস্টম বিকল্পে কীভাবে ওভাররাইড করতে পারি। এখানে চিত্র বর্ণনা লিখুন

এই কোডটি যুক্ত করেছে যাতে ফাইলটি ওভাররাইড করে না checkout_cart_index.xmlকেবল ফাইলটিকে form.phtmlওভাররাইড করে default.phtml

  <?xml version="1.0"?>
  <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<!-- <update handle="checkout_cart_item_renderers"/> -->
<body>
    <referenceContainer name="content">
        <referenceBlock name="checkout.cart.form">
            <action method="setTemplate">
                <argument name="template" xsi:type="string">Bespoke_Bespoke::cart/form.phtml</argument>
            </action>
    </referenceBlock> 
     <referenceBlock name="checkout.cart.item.renderers.override">
    <action method="setTemplate">
        <argument name="template" xsi:type="string">Bespoke_Bespoke::cart/item/default.phtml</argument>
    </action>
</referenceBlock>
    </referenceContainer>
</body>

আমি checkout.cart.item.renderersইতিমধ্যে ওরফে 'সিম্পল' সহ একটি শিশু আছে সে সম্পর্কে আমি ত্রুটি পাচ্ছি i ফাইলটি আমি সংশোধন করেছিcheckout_cart_item_renderer.xml

 <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<!-- <update handle="checkout_item_price_renderers"/> -->
<body>
  <referenceBlock name="checkout.cart.form">
<action method="setOverriddenTemplates">
    <argument xsi:type="array">
        <!-- list override templates -->
        <item name="default" xsi:type="string">Bespoke_Bespoke::cart/item/default.phtml</item>
        <item name="simple" xsi:type="string">Bespoke_Bespoke::cart/item/default.phtml</item>
        <item name="virtual" xsi:type="string">Bespoke_Bespoke::cart/item/default.phtml</item>
    </argument>
  </action>
  </referenceBlock>
</body>
</page>

আমাদের ব্যবহৃত ফাইলটি ওভাররাইড করতে etc/di.xml

 <config  xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
   <preference for="Magento\Checkout\Block\Cart\AbstractCart" type="AGS\Bespoke\Block\Checkout\Cart\AbstractCart"/><preference for="Magento\Catalog\Block\Product\View\Option" type="AGS\Bespoke\Block\Product\View\Option"/>
   <preference for=" Magento\Checkout\Block\Cart" type="AGS\Bespoke\Block\Checkout\Cart"/>
   <preference for="\Magento\Checkout\Block\Cart\Item\Renderer" type="AGS\Bespoke\Block\Checkout\Cart\Item\Renderer"/>
   <virtualType name="AGS\Bespoke\Model\ResourceModel\Bespoke\Bespoke\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult">     
  <arguments><argument name="mainTable" xsi:type="string">ags_bespoke</argument><argument name="resourceModel" xsi:type="string">AGS\Bespoke\Model\ResourceModel\Bespoke</argument> 

  </arguments></virtualType><type name="Magento\Framework\View\Element\UiComponent\DataProvider\CollectionFactory">
<arguments><argument name="collections" xsi:type="array">
<item name="bespoke_record_bespoke_list_data_source" xsi:type="string">AGS\Bespoke\Model\ResourceModel\Bespoke\Bespoke\Collection</item>


পণ্য বিশদ পৃষ্ঠাতে ব্লকটি সরিয়ে ফেলুন। এটি অন্য পৃষ্ঠায় যুক্ত করুন
বিশাখ বি সুজাতা

3
আপনি কি অর্জন করতে চেষ্টা করছেন? কারণ আমি ভুল হলে আমাকে সংশোধন করুন তবে কার্টটিতে পণ্যটি প্রথম স্থানে যুক্ত করতে আপনার বিকল্পগুলির প্রয়োজন। আপনি প্রথমে কার্টে প্রয়োজনীয় বিকল্পগুলির সাথে একটি পণ্য যুক্ত করতে পারবেন না এবং পরে বিকল্পগুলি নির্বাচন করুন।
জিল বার্কার্স

উত্তর:


5

পণ্য সংগ্রহের ক্ষেত্রে অন্য কোনও পিএইচটিএমএল পৃষ্ঠায় কোডটি রাখুন

কমপ্লেক্স বিকল্পটি ড্রপডাউন, সিলেক্ট, মাল্টিসিলেট ইত্যাদিতে দেখাবে ...

<?php
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$_productCollection = $block->getLoadedProductCollection();
?>
<?php foreach ($_productCollection as $_product): ?>
<?php
    $_product = $objectManager->create('Magento\Catalog\Model\Product')->load($_product->getId());
    $customOptions = $objectManager->get('Magento\Catalog\Model\Product\Option')->getProductOptionCollection($_product); 
?>
  <?php 
    foreach($customOptions as $option){
      $values = $option->getValues();
      if (empty($values)) { 
          continue;
      } ?>
      <div class="custome-option">
          <?php foreach($values as $value) :  ?>
              <span><?php echo $value->getTitle(); ?></span>
          <?php endforeach; ?>
      </div>
  <?php }; ?>
<?php endforeach; ?>

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