[Помощь] Вывод товаров на главную из категории

Тема в разделе "WebAsyst", создана пользователем droni4, 24 дек 2011.

Модераторы: mdss
  1. droni4

    droni4

    Регистр.:
    21 авг 2007
    Сообщения:
    181
    Симпатии:
    7
    Здравствуйте уважаемые.

    Подскажите пожалуйста.
    Как реализовать: вывод товаров из категории, на главную страницу?

    Имя товара (ссылку на него)
    Фотографию товара
    цену

    Искал в гугле, яндексе. Решения не нашел. Своих сил и знаний не хватает для реализации.
     
  2. 99cent

    99cent

    Регистр.:
    27 фев 2009
    Сообщения:
    194
    Симпатии:
    11
    В админке в разделе продукты есть подраздел списки с его помощю выводятся любые товары куда угодно
     
  3. droni4

    droni4

    Регистр.:
    21 авг 2007
    Сообщения:
    181
    Симпатии:
    7
    Согласен, но в эти списки товар надо добавлять ручками!

    Мы живем в 21ом веке, хотелось бы кусок кода который будет автоматом брать первые 4 товара из категории и выводить на главную.
     
  4. 99cent

    99cent

    Регистр.:
    27 фев 2009
    Сообщения:
    194
    Симпатии:
    11
    В том то и дело, что новое время требует более разумного подхода к рекламе. Бездумно первые 4 товара из категории это не правильно, это просто. А правильно - выбирать товары, которые наиболее ликвидны.
     
    droni4 нравится это.
  5. mbumba

    mbumba

    Регистр.:
    11 апр 2007
    Сообщения:
    233
    Симпатии:
    36
    Кусок кода вы скорее всего не найдете, выше дали здравое объяснение.
    Копайте в сторону написания плагина смарти для вебасист или используйте инклуд соответственно подправленных шаблонов.
     
  6. mdss

    mdss ♖♘♗♕♔♗♘♖

    Moderator
    Регистр.:
    20 фев 2007
    Сообщения:
    1.126
    Симпатии:
    668
    kernel/includes/smarty/plugins/function.cat_1.php
    PHP:
    <?php
     
    function smarty_function_cat_1 ($params, &$smarty){
      
    $default_limit 4;
      
    $limit = (isset ($params['limit']) && $params['limit'] > 0)? $params['limit'] : $default_limit;
     
      
    $products db_phquery_fetch (DBRFETCH_ROW_ALL'SELECT `products`.*, `products`.'.LanguagesManager::sql_prepareField('name').' as `name`, `products`.'.LanguagesManager::sql_prepareField('brief_description').' as `brief_description`, `pictures`.`thumbnail` FROM `?#PRODUCTS_TABLE` `products` LEFT JOIN `?#PRODUCT_PICTURES` `pictures` USING (`productID`) WHERE `products`.`enabled` = 1 AND `products`.`categoryID` = 111 ORDER BY `products`.`productID` DESC LIMIT ?'$limit);
     
      foreach (
    $products as $i => $product){
        
    $products[$i]['PriceWithUnit'] = show_price ($product['Price']);
      }
     
      if (
    $products){
        
    $smarty->assign ('products'$products);
      }
    }
    ?>
    HTML:
    {foreach from=$products item=product}
      <div>
        <p>
          <a href="{"?productID=`$product.productID`&product_slug=`$product.slug`"|set_query_html}">
            {$product.name}
          </a>
        </p>
        {if $product.thumbnail}
        <p>
          <a href="{"?productID=`$product.productID`&product_slug=`$product.slug`"|set_query_html}">
            <img src="{$smarty.const.URL_PRODUCTS_PICTURES}/{$product.thumbnail}">
          </a>
        </p>
        {/if}
        <p>
          {$product.PriceWithUnit}
        </p>
        <p>
          {$product.brief_description}
        </p>
      </div>
    {/foreach}
    выведет последние 4 товара из категории с айди 111
     
  7. apolius

    apolius Читатель

    Регистр.:
    24 авг 2009
    Сообщения:
    357
    Симпатии:
    30
    А куда HTML код вставлять?
     
  8. Voshal

    Voshal Мизантроп

    Регистр.:
    30 мар 2009
    Сообщения:
    286
    Симпатии:
    108
    Создайте html файл и через display направьте данные в этот файл
     
  9. casher

    casher

    Регистр.:
    24 фев 2008
    Сообщения:
    168
    Симпатии:
    17
    Извините, что тему поднимаю, но тут не совсем понятно, ну создал я файл и что дальше? его наверное нужно подключить куда нибуть?
     
  10. kadurinho

    kadurinho

    Регистр.:
    21 июн 2011
    Сообщения:
    601
    Симпатии:
    242
    Сделать все то, что написал mdss и в шаблоне, в необходимое место вставить {function.cat_1}