How i can Change the behavior of Upsell Products in mageto 2How to change a qty text in Minicart?How to check the upsell products stock and status in magento 2How to change the current password optionalHow to change the position of the block in magento2.2.2How can I increase the speed of my Magento website?How to remove the stock status in magento2How to get the custom option in magento2How can I show all products in a top level category sorting by the child categories?How to add loader untill the image not ready on page loadHow to show both at same time Upsell and Related Products In Product View Page Magento 2

How does this change to the opportunity attack rule impact combat?

Position of past participle and extent of the Verbklammer

Pronunciation of numbers with respect to years

What is the name of this hexagon/pentagon polyhedron?

Out of scope work duties and resignation

Why doesn't WotC use established keywords on all new cards?

What does a spell range of "25 ft. + 5 ft./2 levels" mean?

I'm in your subnets, golfing your code

Randomness of Python's random

I drew a randomly colored grid of points with tikz, how do I force it to remember the first grid from then on?

Why do money exchangers give different rates to different bills?

Does a card have a keyword if it has the same effect as said keyword?

Building a list of products from the elements in another list

As matter approaches a black hole, does it speed up?

Can hackers enable the camera after the user disabled it?

Should I replace my bicycle tires if they have not been inflated in multiple years

Should I mention being denied entry to UK due to a confusion in my Visa and Ticket bookings?

What to use instead of cling film to wrap pastry

BOOM! Perfect Clear for Mr. T

Set collection doesn't always enforce uniqueness with the Date datatype? Does the following example seem correct?

Why are prions in animal diets not destroyed by the digestive system?

Would Hubble Space Telescope improve black hole image observed by EHT if it joined array of telesopes?

If stationary points and minima are equivalent, then the function is convex?

Did we get closer to another plane than we were supposed to, or was the pilot just protecting our delicate sensibilities?



How i can Change the behavior of Upsell Products in mageto 2


How to change a qty text in Minicart?How to check the upsell products stock and status in magento 2How to change the current password optionalHow to change the position of the block in magento2.2.2How can I increase the speed of my Magento website?How to remove the stock status in magento2How to get the custom option in magento2How can I show all products in a top level category sorting by the child categories?How to add loader untill the image not ready on page loadHow to show both at same time Upsell and Related Products In Product View Page Magento 2






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0















All i want to do is i want to show upsells products according to my phtml file



i have already done this for cross sells and its working fine i wrote a view/layout file



<?xml version="1.0"?>
<page layout="1column" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<head>
<css src="Vendo_ModuleName::css/owl.carousel.css" />
<css src="Vendo_ModuleName::css/owl.theme.default.min.css" />
<css src="Vendo_ModuleName::css/style.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js" ></script>
<script src="Vendo_ModuleName::js/owl.carousel.js" ></script>
</head>
<body>
<referenceBlock name="product.info.options.wrapper">
<block class="VendoModuleNameBlockFrontendCrossSell" name="test.crosssell" template="slider.phtml" after="-">
<arguments>
<argument name="type" xsi:type="string">crosssell</argument>
</arguments>
<block class="MagentoCatalogBlockProductProductListItemContainer" name="crosssell.product.addto" as="addto">
<block class="MagentoCatalogBlockProductProductListItemAddToCompare"
name="crosssell.product.addto.compare" as="compare"
template="Magento_Catalog::product/list/addto/compare.phtml"/>
</block>
</block>

</referenceBlock>
<move element="test.crosssell" destination="content" after="product.info.media"/>
</body>
</page>


now i want to do same for up sell products i already made a block for upsells in



use VendoModuleNameHelperData as ModuleNameHelper;

class UpSells extends MagentoCatalogBlockProductAbstractProduct implements MagentoFrameworkDataObjectIdentityInterface
protected $_sliderType = 'up-sells';
protected $_itemCollection;
protected $_storeManager;
protected $_sliderfactory;
protected $_helper;
protected $_customerSession;
protected $_customerGroupCollection;
public function __construct(
MagentoCatalogBlockProductContext $context,
MagentoFrameworkStdlibDateTimeDateTime $date,
MagentoCustomerModelSession $customerSession,
MagentoCustomerModelGroup $customerGroupCollection,
MagentoStoreModelStoreManagerInterface $storeManager,
VendoModuleNameModelResourceModelProductSlidersCollectionFactory $slidefactory,
ModuleNameHelper $helper,
array $data = []
)
$this->_sliderfactory = $slidefactory;
$this->date = $date;
$this->_customerSession = $customerSession;
$this->_storeManager = $storeManager;
$this->_registry = $context->getRegistry();
$this->_customerGroupCollection = $customerGroupCollection;
$this->_helper=$helper;
parent::__construct(
$context,
$data
);


protected function _prepareData()

$date = $this->date->gmtDate();

$rules=$this->_sliderfactory->create()
->addStatusFilter()
->addTypeFilter($this->_sliderType)
->addCurrentSlider($date)
->addStoreFilter($this->getStoreId())
->addCostumerGroupFilter($this->_helper->getCustomerGroupId());



$item=$rules->getFirstItem();
$product = $this->_registry->registry('current_product');
$this->_itemCollection = $product->getUpSellProductCollection()->addAttributeToSelect(
$this->_catalogConfig->getProductAttributes()
)->setPositionOrder()->addStoreFilter();
$this->_itemCollection->load();
foreach ($this->_itemCollection as $product)
$product->setDoNotUseCategoryId(true);


return $this;



protected function _beforeToHtml()

$this->_prepareData();
return parent::_beforeToHtml();

public function getItems()


return $this->_itemCollection;

public function getStoreId()

return $this->_storeManager->getStore()->getId();

public function getItemCount()
return count($this->getItems());

public function getIdentities()


$identities = [];
foreach ($this->getItems() as $item)
$identities = array_merge($identities, $item->getIdentities());

return $identities;











share|improve this question




























    0















    All i want to do is i want to show upsells products according to my phtml file



    i have already done this for cross sells and its working fine i wrote a view/layout file



    <?xml version="1.0"?>
    <page layout="1column" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <head>
    <css src="Vendo_ModuleName::css/owl.carousel.css" />
    <css src="Vendo_ModuleName::css/owl.theme.default.min.css" />
    <css src="Vendo_ModuleName::css/style.css" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js" ></script>
    <script src="Vendo_ModuleName::js/owl.carousel.js" ></script>
    </head>
    <body>
    <referenceBlock name="product.info.options.wrapper">
    <block class="VendoModuleNameBlockFrontendCrossSell" name="test.crosssell" template="slider.phtml" after="-">
    <arguments>
    <argument name="type" xsi:type="string">crosssell</argument>
    </arguments>
    <block class="MagentoCatalogBlockProductProductListItemContainer" name="crosssell.product.addto" as="addto">
    <block class="MagentoCatalogBlockProductProductListItemAddToCompare"
    name="crosssell.product.addto.compare" as="compare"
    template="Magento_Catalog::product/list/addto/compare.phtml"/>
    </block>
    </block>

    </referenceBlock>
    <move element="test.crosssell" destination="content" after="product.info.media"/>
    </body>
    </page>


    now i want to do same for up sell products i already made a block for upsells in



    use VendoModuleNameHelperData as ModuleNameHelper;

    class UpSells extends MagentoCatalogBlockProductAbstractProduct implements MagentoFrameworkDataObjectIdentityInterface
    protected $_sliderType = 'up-sells';
    protected $_itemCollection;
    protected $_storeManager;
    protected $_sliderfactory;
    protected $_helper;
    protected $_customerSession;
    protected $_customerGroupCollection;
    public function __construct(
    MagentoCatalogBlockProductContext $context,
    MagentoFrameworkStdlibDateTimeDateTime $date,
    MagentoCustomerModelSession $customerSession,
    MagentoCustomerModelGroup $customerGroupCollection,
    MagentoStoreModelStoreManagerInterface $storeManager,
    VendoModuleNameModelResourceModelProductSlidersCollectionFactory $slidefactory,
    ModuleNameHelper $helper,
    array $data = []
    )
    $this->_sliderfactory = $slidefactory;
    $this->date = $date;
    $this->_customerSession = $customerSession;
    $this->_storeManager = $storeManager;
    $this->_registry = $context->getRegistry();
    $this->_customerGroupCollection = $customerGroupCollection;
    $this->_helper=$helper;
    parent::__construct(
    $context,
    $data
    );


    protected function _prepareData()

    $date = $this->date->gmtDate();

    $rules=$this->_sliderfactory->create()
    ->addStatusFilter()
    ->addTypeFilter($this->_sliderType)
    ->addCurrentSlider($date)
    ->addStoreFilter($this->getStoreId())
    ->addCostumerGroupFilter($this->_helper->getCustomerGroupId());



    $item=$rules->getFirstItem();
    $product = $this->_registry->registry('current_product');
    $this->_itemCollection = $product->getUpSellProductCollection()->addAttributeToSelect(
    $this->_catalogConfig->getProductAttributes()
    )->setPositionOrder()->addStoreFilter();
    $this->_itemCollection->load();
    foreach ($this->_itemCollection as $product)
    $product->setDoNotUseCategoryId(true);


    return $this;



    protected function _beforeToHtml()

    $this->_prepareData();
    return parent::_beforeToHtml();

    public function getItems()


    return $this->_itemCollection;

    public function getStoreId()

    return $this->_storeManager->getStore()->getId();

    public function getItemCount()
    return count($this->getItems());

    public function getIdentities()


    $identities = [];
    foreach ($this->getItems() as $item)
    $identities = array_merge($identities, $item->getIdentities());

    return $identities;











    share|improve this question
























      0












      0








      0








      All i want to do is i want to show upsells products according to my phtml file



      i have already done this for cross sells and its working fine i wrote a view/layout file



      <?xml version="1.0"?>
      <page layout="1column" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
      <head>
      <css src="Vendo_ModuleName::css/owl.carousel.css" />
      <css src="Vendo_ModuleName::css/owl.theme.default.min.css" />
      <css src="Vendo_ModuleName::css/style.css" />
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js" ></script>
      <script src="Vendo_ModuleName::js/owl.carousel.js" ></script>
      </head>
      <body>
      <referenceBlock name="product.info.options.wrapper">
      <block class="VendoModuleNameBlockFrontendCrossSell" name="test.crosssell" template="slider.phtml" after="-">
      <arguments>
      <argument name="type" xsi:type="string">crosssell</argument>
      </arguments>
      <block class="MagentoCatalogBlockProductProductListItemContainer" name="crosssell.product.addto" as="addto">
      <block class="MagentoCatalogBlockProductProductListItemAddToCompare"
      name="crosssell.product.addto.compare" as="compare"
      template="Magento_Catalog::product/list/addto/compare.phtml"/>
      </block>
      </block>

      </referenceBlock>
      <move element="test.crosssell" destination="content" after="product.info.media"/>
      </body>
      </page>


      now i want to do same for up sell products i already made a block for upsells in



      use VendoModuleNameHelperData as ModuleNameHelper;

      class UpSells extends MagentoCatalogBlockProductAbstractProduct implements MagentoFrameworkDataObjectIdentityInterface
      protected $_sliderType = 'up-sells';
      protected $_itemCollection;
      protected $_storeManager;
      protected $_sliderfactory;
      protected $_helper;
      protected $_customerSession;
      protected $_customerGroupCollection;
      public function __construct(
      MagentoCatalogBlockProductContext $context,
      MagentoFrameworkStdlibDateTimeDateTime $date,
      MagentoCustomerModelSession $customerSession,
      MagentoCustomerModelGroup $customerGroupCollection,
      MagentoStoreModelStoreManagerInterface $storeManager,
      VendoModuleNameModelResourceModelProductSlidersCollectionFactory $slidefactory,
      ModuleNameHelper $helper,
      array $data = []
      )
      $this->_sliderfactory = $slidefactory;
      $this->date = $date;
      $this->_customerSession = $customerSession;
      $this->_storeManager = $storeManager;
      $this->_registry = $context->getRegistry();
      $this->_customerGroupCollection = $customerGroupCollection;
      $this->_helper=$helper;
      parent::__construct(
      $context,
      $data
      );


      protected function _prepareData()

      $date = $this->date->gmtDate();

      $rules=$this->_sliderfactory->create()
      ->addStatusFilter()
      ->addTypeFilter($this->_sliderType)
      ->addCurrentSlider($date)
      ->addStoreFilter($this->getStoreId())
      ->addCostumerGroupFilter($this->_helper->getCustomerGroupId());



      $item=$rules->getFirstItem();
      $product = $this->_registry->registry('current_product');
      $this->_itemCollection = $product->getUpSellProductCollection()->addAttributeToSelect(
      $this->_catalogConfig->getProductAttributes()
      )->setPositionOrder()->addStoreFilter();
      $this->_itemCollection->load();
      foreach ($this->_itemCollection as $product)
      $product->setDoNotUseCategoryId(true);


      return $this;



      protected function _beforeToHtml()

      $this->_prepareData();
      return parent::_beforeToHtml();

      public function getItems()


      return $this->_itemCollection;

      public function getStoreId()

      return $this->_storeManager->getStore()->getId();

      public function getItemCount()
      return count($this->getItems());

      public function getIdentities()


      $identities = [];
      foreach ($this->getItems() as $item)
      $identities = array_merge($identities, $item->getIdentities());

      return $identities;











      share|improve this question














      All i want to do is i want to show upsells products according to my phtml file



      i have already done this for cross sells and its working fine i wrote a view/layout file



      <?xml version="1.0"?>
      <page layout="1column" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
      <head>
      <css src="Vendo_ModuleName::css/owl.carousel.css" />
      <css src="Vendo_ModuleName::css/owl.theme.default.min.css" />
      <css src="Vendo_ModuleName::css/style.css" />
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js" ></script>
      <script src="Vendo_ModuleName::js/owl.carousel.js" ></script>
      </head>
      <body>
      <referenceBlock name="product.info.options.wrapper">
      <block class="VendoModuleNameBlockFrontendCrossSell" name="test.crosssell" template="slider.phtml" after="-">
      <arguments>
      <argument name="type" xsi:type="string">crosssell</argument>
      </arguments>
      <block class="MagentoCatalogBlockProductProductListItemContainer" name="crosssell.product.addto" as="addto">
      <block class="MagentoCatalogBlockProductProductListItemAddToCompare"
      name="crosssell.product.addto.compare" as="compare"
      template="Magento_Catalog::product/list/addto/compare.phtml"/>
      </block>
      </block>

      </referenceBlock>
      <move element="test.crosssell" destination="content" after="product.info.media"/>
      </body>
      </page>


      now i want to do same for up sell products i already made a block for upsells in



      use VendoModuleNameHelperData as ModuleNameHelper;

      class UpSells extends MagentoCatalogBlockProductAbstractProduct implements MagentoFrameworkDataObjectIdentityInterface
      protected $_sliderType = 'up-sells';
      protected $_itemCollection;
      protected $_storeManager;
      protected $_sliderfactory;
      protected $_helper;
      protected $_customerSession;
      protected $_customerGroupCollection;
      public function __construct(
      MagentoCatalogBlockProductContext $context,
      MagentoFrameworkStdlibDateTimeDateTime $date,
      MagentoCustomerModelSession $customerSession,
      MagentoCustomerModelGroup $customerGroupCollection,
      MagentoStoreModelStoreManagerInterface $storeManager,
      VendoModuleNameModelResourceModelProductSlidersCollectionFactory $slidefactory,
      ModuleNameHelper $helper,
      array $data = []
      )
      $this->_sliderfactory = $slidefactory;
      $this->date = $date;
      $this->_customerSession = $customerSession;
      $this->_storeManager = $storeManager;
      $this->_registry = $context->getRegistry();
      $this->_customerGroupCollection = $customerGroupCollection;
      $this->_helper=$helper;
      parent::__construct(
      $context,
      $data
      );


      protected function _prepareData()

      $date = $this->date->gmtDate();

      $rules=$this->_sliderfactory->create()
      ->addStatusFilter()
      ->addTypeFilter($this->_sliderType)
      ->addCurrentSlider($date)
      ->addStoreFilter($this->getStoreId())
      ->addCostumerGroupFilter($this->_helper->getCustomerGroupId());



      $item=$rules->getFirstItem();
      $product = $this->_registry->registry('current_product');
      $this->_itemCollection = $product->getUpSellProductCollection()->addAttributeToSelect(
      $this->_catalogConfig->getProductAttributes()
      )->setPositionOrder()->addStoreFilter();
      $this->_itemCollection->load();
      foreach ($this->_itemCollection as $product)
      $product->setDoNotUseCategoryId(true);


      return $this;



      protected function _beforeToHtml()

      $this->_prepareData();
      return parent::_beforeToHtml();

      public function getItems()


      return $this->_itemCollection;

      public function getStoreId()

      return $this->_storeManager->getStore()->getId();

      public function getItemCount()
      return count($this->getItems());

      public function getIdentities()


      $identities = [];
      foreach ($this->getItems() as $item)
      $identities = array_merge($identities, $item->getIdentities());

      return $identities;








      magento2.2 php-7






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Apr 29 at 5:35









      Waqar AliWaqar Ali

      257




      257




















          0






          active

          oldest

          votes












          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "479"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f272742%2fhow-i-can-change-the-behavior-of-upsell-products-in-mageto-2%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Magento Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f272742%2fhow-i-can-change-the-behavior-of-upsell-products-in-mageto-2%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Category:9 (number) SubcategoriesMedia in category "9 (number)"Navigation menuUpload mediaGND ID: 4485639-8Library of Congress authority ID: sh85091979ReasonatorScholiaStatistics

          Circuit construction for execution of conditional statements using least significant bitHow are two different registers being used as “control”?How exactly is the stated composite state of the two registers being produced using the $R_zz$ controlled rotations?Efficiently performing controlled rotations in HHLWould this quantum algorithm implementation work?How to prepare a superposed states of odd integers from $1$ to $sqrtN$?Why is this implementation of the order finding algorithm not working?Circuit construction for Hamiltonian simulationHow can I invert the least significant bit of a certain term of a superposed state?Implementing an oracleImplementing a controlled sum operation

          Magento 2 “No Payment Methods” in Admin New OrderHow to integrate Paypal Express Checkout with the Magento APIMagento 1.5 - Sales > Order > edit order and shipping methods disappearAuto Invoice Check/Money Order Payment methodAdd more simple payment methods?Shipping methods not showingWhat should I do to change payment methods if changing the configuration has no effects?1.9 - No Payment Methods showing upMy Payment Methods not Showing for downloadable/virtual product when checkout?Magento2 API to access internal payment methodHow to call an existing payment methods in the registration form?