Результаты поиска Magento: Список артикулов Echo в заголовке.phtml или head.phtml


Как я могу повторить список артикулов элементов на странице результатов поиска, но в заголовке Magento? В настоящее время используется M1. Я использую приведенный ниже код, чтобы отобразить список артикулов определенной страницы категории в заголовке, но я не знаю, как получить список артикулов на странице результатов поиска.

if (Mage::registry('current_category')) 
{

$category_id = Mage::getModel('catalog/layer')->getCurrentCategory()->getId();
$category = Mage::getModel('catalog/category')->load($category_id);
$products = Mage::getModel('catalog/product')
    ->getCollection()
    ->addAttributeToSelect('*')
    ->addCategoryFilter($category)
    ->setOrder('price', 'ASC')
    ->load();

$skuArray = array();
foreach ($products as $item) {
                        $skuArray[] = "\"" . $item->getSku() . "\"";
} 

echo Mage::registry('current_category')->getID();

echo implode( ', ', $skuArray);

Я попробовал решение по этой ссылке, но, похоже, оно не работает: Как получить результат поиска Коллекция продуктов вне result.phtml

Любое предложение был бы весьма признателен. :D

Author: Prince Patel, 2017-08-12

1 answers

Поместите этот код в header.phtml или head.phtml

if($listBlock = $this->getLayout()->getBlock('search_result_list')) {
  $productCollection = $listBlock->getLoadedProductCollection();

  $skuArray = array();
  foreach ($productCollection as $item) {
     $skuArray[] = "\"" . $item->getSku() . "\"";
  } 

  echo 'ListOfItemsinMagentoSearchResults = [' . implode( ', ', $skuArray) .']';
}
 1
Author: harri, 2017-08-12 16:52:23