예제 #1
0
 /**
  * Get wishlist items
  *
  * @return array
  */
 protected function getItems()
 {
     $this->view->loadLayout();
     $collection = $this->wishlistHelper->getWishlistItemCollection();
     $collection->clear()->setPageSize(self::SIDEBAR_ITEMS_NUMBER)->setInStockFilter(true)->setOrder('added_at');
     $items = [];
     /** @var \Magento\Wishlist\Model\Item $wishlistItem */
     foreach ($collection as $wishlistItem) {
         $product = $wishlistItem->getProduct();
         $this->imageHelper->init($product, 'wishlist_sidebar_block');
         $items[] = ['image' => ['src' => $this->imageHelper->getUrl(), 'alt' => $this->imageHelper->getLabel(), 'width' => $this->imageHelper->getWidth(), 'height' => $this->imageHelper->getHeight()], 'product_url' => $this->wishlistHelper->getProductUrl($wishlistItem), 'product_name' => $product->getName(), 'product_price' => $this->block->getProductPriceHtml($product, \Magento\Catalog\Pricing\Price\ConfiguredPriceInterface::CONFIGURED_PRICE_CODE, \Magento\Framework\Pricing\Render::ZONE_ITEM_LIST, ['item' => $wishlistItem]), 'product_is_saleable_and_visible' => $product->isSaleable() && $product->isVisibleInSiteVisibility(), 'product_has_required_options' => $product->getTypeInstance()->hasRequiredOptions($product), 'add_to_cart_params' => $this->wishlistHelper->getAddToCartParams($wishlistItem, true), 'delete_item_params' => $this->wishlistHelper->getRemoveParams($wishlistItem, true)];
     }
     return $items;
 }
예제 #2
0
 /**
  * Get resized image URL.
  *
  * @param ProductInterface $product Current product.
  *
  * @return string
  */
 private function getImageUrl($product)
 {
     $this->imageHelper->init($product, self::AUTOCOMPLETE_IMAGE_ID);
     return $this->imageHelper->getUrl();
 }