Skip to main content

Magento 2 Get specific attribute (manufacturer) collection in phtml file with images using object manager

Magento 2 Get specific attribute (manufacturer) with images using object manager

 <?php  
 $om = \Magento\Framework\App\ObjectManager::getInstance();  
 $categoryFactory = $om->get('\Magento\Catalog\Model\CategoryFactory');  
 $categoryHelper = $om->get('\Magento\Catalog\Helper\Category');  
 $categoryRepository = $om->get('\Magento\Catalog\Model\CategoryRepository');  
 $category = $categoryFactory->create()->load($catId);  
 $categoryProducts = $category->getProductCollection()  
                ->addAttributeToSelect('*');  
 foreach ($categoryProducts as $_product) {  
   if($_product->getManufacturer()){  
  $brand_value = $_product->getResource()->getAttribute('manufacturer')->getFrontend()->getValue($_product);  
  $brand_id = $_product->getManufacturer();  
  $curnt_cat_url = $category->getUrl();  
  $brandId = '?manufacturer='.$brand_id;  
  $om = \Magento\Framework\App\ObjectManager::getInstance();  
  $swatchHelper=$om->get("Magento\Swatches\Helper\Media");  
  $swatchCollection = $om->create('Magento\Swatches\Model\ResourceModel\Swatch\Collection');  
  $swatchCollection->addFieldtoFilter('option_id',$brand_id);  
  $item=$swatchCollection->getFirstItem();  
  $ThumbImage = $swatchHelper->getSwatchAttributeImage('swatch_thumb', $item->getValue());  
  $SwatchImage = $swatchHelper->getSwatchAttributeImage('swatch_image', $item->getValue());  
  ?>  
  <div class="brand_bg">  
   <a href="<?php echo $curnt_cat_url.$brandId; ?>" title="<?php echo $brand_value; ?>" ><img src="<?php echo $ThumbImage; ?>"></a>  
  </div>  
  <?php } ?>  
 <?php } ?>  

Comments

Popular posts from this blog

Magento 2: How to use redirect URl in Router.php

Module name - **Aks_CustomUrlRouter** You have to create below listed files 1. Registration.php :: app/code/Aks/CustomUrlRouter/registration.php <?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Aks_CustomUrlRouter', __DIR__ ); ?> 2. Module.xml :: app/code/Aks/CustomUrlRouter/etc/module.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd"> <module name="Aks_CustomUrlRouter" setup_version="2.0.0"></module> </config> 3. di.xml :: app/code/Aks/CustomUrlRouter/etc/di.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">

Magento 2 get category collection using specific controllers and category level using object manager

Magento 2 get category collection using object manager <?php $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $category = $objectManager->get('Magento\Framework\Registry') ->registry('current_category'); //get current category $requestInterface = $objectManager->get('Magento\Framework\App\RequestInterface'); //echo $routeName = $requestInterface->getRouteName(); //echo $moduleName = $requestInterface->getModuleName(); $controllerName = $requestInterface->getControllerName(); //echo $actionName = $requestInterface->getActionName(); $parcatId = $category->getId(); // current Category ID $parcategory = $objectManager->create('Magento\Catalog\Model\Category') ->load($parcatId); $parent_category = $parcategory->getParentCategory(); $subcatId = $parent_category->getId(); $subcategory = $objectManager->create('Magento\Catalog\Model\Category

Magento 2 add single product using custom script or programmatically

Magento 2 add single product programmatically <?php //increase the max execution time @ini_set('max_execution_time', -1); //memory_limit @ini_set('memory_limit', -1); error_reporting(E_ALL); ini_set('display_errors', '1'); use \Magento\Framework\App\Bootstrap; require __DIR__ . '/app/bootstrap.php'; $bootstrap = Bootstrap::create(BP, $_SERVER); $bootstrapManager = $bootstrap->getObjectManager(); $state = $bootstrapManager->get('\Magento\Framework\App\State'); $state->setAreaCode('frontend'); $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); // instance of object manager $product = $objectManager->create('\Magento\Catalog\Model\Product'); $sku = 'sku'; $name = 'Sample Product'; $product->setSku($sku); // Set your sku here $product->setName($name); // Name of Product $product->setAttributeSetId(4); // Attribu