public function getSearchedProductIds($searchTerm){
//$searchTerm = "UKF8001";
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$searchCriteriaBuilder = $objectManager->create('Magento\Framework\Api\Search\SearchCriteriaFactory');
$filterBuilder = $objectManager->create('Magento\Framework\Api\FilterBuilder');
$filterGroupBuilder = $objectManager->create('Magento\Framework\Api\Search\FilterGroupBuilder');
$searchInterface = $objectManager->create('Magento\Framework\Api\Search\SearchInterface');
$sortOrder = $objectManager->create('Magento\Framework\Api\SortOrder');
$search_criteria = $searchCriteriaBuilder->create();
$search_criteria->setRequestName("quick_search_container");
$filter = $filterBuilder->setField('search_term')
->setValue($searchTerm)
->setConditionType("like")
->create();
$filterGroup = $filterGroupBuilder->addFilter($filter)->create();
$searchDirection = "desc";
$page =1;
//$searchDirection = ($searchDir == "desc") ? SortOrder::SORT_DESC : SortOrder::SORT_ASC;
$sortOrder->setField('name');
$sortOrder->setDirection($searchDirection);
$search_criteria->setFilterGroups([$filterGroup])
->setCurrentPage($page);
$search_criteria->setSortOrders([$sortOrder]);
$resultx = $searchInterface->search($search_criteria);
$totalSearchResults = $resultx->getTotalCount();
$products = $resultx->getItems();
$result = [];
foreach ($products as $product) {
$result[] = $product->getId();
}
return $result;
}
the custom log file created using below code for Magento 2.4.2 before version use this : $writer = new \Zend\Log\Writer\Stream (BP . '/var/log/custom.log' ); $logger = new \Zend\Log\Logger (); $logger -> addWriter ( $writer ); $logger -> info ( 'Custom message' ); $logger -> info ( print_r ( $object -> getData (), true )); for Magento 2.4.2 or after version use this : $writer = new \Laminas\Log\Writer\Stream (BP . '/var/log/custom.log' ); $logger = new \Laminas\Log\Logger (); $logger -> addWriter ( $writer ); $logger -> info ( 'text message' ); $logger -> info ( print_r ( $object -> getData (), true )); for Magento 2.4.3 version use this $writer = new \Zend_Log_Writer_Stream (BP . '/var/log/custom.log' ); $logger = new \Zend_Log (); $logger -> addWriter ( $writer ); $logger -> info ( 'text message' ); $logger -> info ( print_r ( $object -> getData (), true )); Or you can try this : f...
Comments
Post a Comment