Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

korsox

Користувачі
  
  • Публікації

    149
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем korsox

  1. Здравствуйте, не так давно занимался реализацией такого модуля, а так же организацией подбора. Базы имеются в наличии.

    http://rznkoleso.ru/

    Контакты скину в лички.

  2. В catalogcontrollerproductsearch.php

    найти:

    $this->data['products'][] = array(
    	 'product_id'  => $result['product_id'],
    	 'thumb'	   => $image,
    	 'name'		=> $result['name'],
    	 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..',
    	 'price'	   => $price,
    	 'special'	 => $special,
    	 'tax'		 => $tax,
    	 'rating'	  => $result['rating'],
    	 'reviews'	 => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
    	 'href'		=> $this->url->link('product/product', $url . '&product_id=' . $result['product_id'])
    	);
    
    изменить на

    $this->data['products'][] = array(
    	 'product_id'  => $result['product_id'],
    	 'thumb'	   => $image,
    	 'name'		=> $result['name'],
    	 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..',
    	 'model'	   => $result['model'],
    	 'manufacturer' =>$result['manufacturer'],
    	 'price'	   => $price,
    	 'special'	 => $special,
    	 'tax'		 => $tax,
    	 'rating'	  => $result['rating'],
    	 'reviews'	 => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
    	 'href'		=> $this->url->link('product/product', $url . '&product_id=' . $result['product_id'])
    	);
    

    В catalogviewthemedefaulttemplateproductsearch.tpl в цикле вывода продуктов добавить что то подобное

    <div class="model"><?php echo $product['model']; ?></div>
    <div class="manufacturer"><?php echo $product['manufacturer']; ?></div>
    

    Чуть не забыл... для отображения внесённых изменений, необходимо так же внести изменения в JS шаблона catalogviewthemedefaulttemplateproductsearch.tpl

    • +1 1
  3. Шаблон catalogviewthemedefaulttemplateproductproduct.tpl

    Найти:

    <table class="attribute">
      <?php foreach ($attribute_groups as $attribute_group) { ?>
    	<thead>
          <tr>
            <td colspan="2"><?php echo $attribute_group['name']; ?></td>
          </tr>
    	</thead>
    	<tbody>
    	  <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
    	  <tr>
    		<td><?php echo $attribute['name']; ?></td>
    		<td><?php echo $attribute['text']; ?></td>
    	  </tr>
    	  <?php } ?>
    	</tbody>
      <?php } ?>
    </table>
    

    Заменить:

    <table class="attribute">
      <?php foreach ($attribute_groups as $attribute_group) { ?>
    	<tbody>
    	  <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
    	  <tr>
    		<td><?php echo $attribute['name']; ?></td>
    		<td><?php echo $attribute['text']; ?></td>
    	  </tr>
    	  <?php } ?>
    	</tbody>
      <?php } ?>
    </table>
    
    • +1 1
  4. Я бы сделал с помощью опций, но потребуется переделка страниц с отображением продукции, нужно будет сделать вывод каждого продукта с разными опциями, а ссылка у них останется одна, т.к. фактически продукт будет один.

  5. За поиск отвечает контроллер catalogcontrollerproductsearch.php, который передаёт критерии поиска в метод getProducts() модели catalogmodelcatalogproduct.php, но так же необходимо не забывать для правильной пагинации из этой же модели контроллер получает данные методом getTotalProducts(). Оба этих метода содержат SQL запросы, в которых для реализации Вашей задачи необходимо изменить условия под Ваши критерии поиска.

  6. $product_total = $this->model_catalog_product->getTotalProducts($data);

    и это 'name' => $category['name'] . ' (' . $product_total . ')',

    кстати, очень ли оно надо? изрядно замедляет процесс загрузки страниц, т.к. каждый раз считает

    Вопрос риторический... Каждый решает сам.
  7. в файле catalogcontrollermodulecategory.php этот код отвечает за кол-во продуктов в категории:

    if ($setting['count']) {
    $product_total = $this->model_catalog_product->getTotalProducts($data);
    
    $this->data['categories'][] = array(
    'category_id' => $category['category_id'],
    'name' => $category['name'] . ' (' . $product_total . ')',
    'children' => $children_data,
    'href' => $this->url->link('product/category', 'path=' . $category['category_id'])
    );
    } else {
    $this->data['categories'][] = array(
    'category_id' => $category['category_id'],
    'name' => $category['name'],
    'children' => $children_data,
    'href' => $this->url->link('product/category', 'path=' . $category['category_id'])
    );
    }
  8. В файле catalogcontrollermodulefeatured.php найдите

    $this->data['products'][] = array(
    'product_id' => $product_info['product_id'],
    'thumb' => $image,
    'name' => $product_info['name'],
    'price' => $price,
    'special' => $special,
    'rating' => $rating,
    'reviews' => sprintf($this->language->get('text_reviews'), (int)$product_info['reviews']),
    'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']),
    );
    замените на

    $attribute_groups = $this->model_catalog_product->getProductAttributes($product_info['product_id']);
    
    $this->data['products'][] = array(
    'product_id' => $product_info['product_id'],
    'thumb' => $image,
    'name' => $product_info['name'],
    'price' => $price,
    'attribute_groups' => $attribute_groups,
    'special' => $special,
    'rating' => $rating,
    'reviews' => sprintf($this->language->get('text_reviews'), (int)$product_info['reviews']),
    'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']),
    );
    Всё должно работать.
  9. в catalog-model-catalog-product.php Вам необходимо добавить в запрос:

    LEFT JOIN " . DB_PREFIX . "zhanr zh ON (p.zhanr_id = zh.ВашеПолеЙД)
    в catalog-controller-product-product.php Вам ничего не придётся делать

    в catalog-view-template-тема-template-product-product.tpl используйте так:

    <?php echo $product_info['ИмяВашегоПоляВТаблицеZhanr'];?>
    Могут быть ошибки, писал на скоряк... Пишите подправим.
    • +1 1
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.