EasyWeb.org.ua
  • Главная
    • shop-script
    • акции
    • php
    • javascript
    • joomla
    • wordpress
    • docs
    • internet
    • объявления
    • other
  • Вопрос ответ
  • Портфолио
  • Модули
  • Обратная связь
  • О блоге
    • Каталог сайтов
    • Карта сайта
Главная » shop-script » Бренды в Webasyst Shop-Script
Фев04 43

Бренды в Webasyst Shop-Script

Опубликовано в shop-script

Готовы два решения «Бренды» и «Фильтры»

Сначала о первом. Может это решение не самое лучшее и не универсальное, но сделать это можно стандартными средствами скрипта Webasyst Shop-Script

1. Создаем категория товаров Бренды (производители, поставщики и т.д.)  и запоминаем ее ID

Каждый бренд — это подкатегория категории Бренды.
При создании Бренда (как и в любой категории) можно загрузить логотип, написать описание.

Теперь при создании товара в обычной категории на вкладке «Дополнительно»  в строке «Дополнительные родительские категории» нажимаем «Добавить» и выбираем категорию нужного нам Бренда.

2. Скрываем категорию Бренды в дереве каталога и на главной странице:

в файле /published/SC/html/scripts/templates/frontend/category_tree.html

код

{section name=i loop=$categories_tree}  {if $categories_tree[i].categoryID != 1}

меняем на

{section name=i loop=$categories_tree}  {if $categories_tree[i].categoryID != 1 && $categories_tree[i].categoryID != 558}

где 558 — ID категории Бренды

в файле /published/SC/html/scripts/templates/frontend/root_categories.html

код

{foreach from=$root_categories item=_cat name=_fr}

меняем на

{foreach from=$root_categories item=_cat name=_fr}{if $_cat.categoryID!=558}

где 558 — ID категории Бренды

в этом же файле внизу перед последним {/foreach}
добавляем {/if}
то есть получится

{/if}{/foreach}

Для удобства поиска можно дублировать имя бренда в поле Тэг. И тогда можно в сайдбаре вывести «фильтр» по брендам в этой категории.

Плагин собирает теги(в нашем случае бренды) всех товаров этой категории и выводит их в виде списка ссылок. При нажатии на ссылку, пользователь видит все товары с этим тэгом.

Листинг плагина function.brands.php

<?php
 
function smarty_function_brands( $params, &$smarty )
 
  {
 
  $disp='';
 
  if($params['type']=='menu'){
 
  if($_GET['categoryID'] && $_GET['categoryID']!=1){
 
  $where=' WHERE categoryID='.$_GET['categoryID'];
 
  } else {
 
  $where='';
 
  }
 
  $sql='SELECT tag_id FROM SC_tagged_objects WHERE object_type="product" AND language_id=1 AND object_id IN 
 
  (SELECT productID FROM SC_products '.$where.' )';
 
  //echo $sql;
 
  if($r=mysql_query($sql)){
 
  $sql2='SELECT DISTINCT(name) FROM SC_tags WHERE id IN(';
 
  $i=0;
 
  while($res=mysql_fetch_assoc($r)){
 
  if($i!=0) $sql2.=',';
 
  $sql2.=$res['tag_id'];
 
  $i++;
 
  }
 
  $sql2.=')';
 
  //echo $sql2;
 
  if($r2=mysql_query($sql2)){
 
  $disp.='<div class="side_box">
 
  <h2>Бренды</h2>
 
  <ul class="smenu">';
 
  while($res2=mysql_fetch_assoc($r2)){
 
  $disp.='<li><a href="/search/?searchstring='.$res2['name'].'">'.$res2['name'].'</a></li>';
 
  }
 
  $disp.='</ul></div>'; 
 
  }
 
  }
 
  }
 
  return $disp;
 
}
 
?>

Вызывать его нужно так {brands type=’menu’}
Еще один способ: вместо тегов сделать доп. характеристику и фильтр. Тогда будет фильтровать по бренду внутри категории.
Про фильтры напишу через пару дней. Тоже буде готовое решение.

Метки: shop-script, webasyst, бренды, плагин

« Предыдущая запись

Партнерская программа. Дорабатываем Webasyst Shop-Script

Следующая запись»

Доработан «Уведомить о поступлении»



Просмотров: 8 064

Похожие записи:

  • Автоматическое заполнение рекомендуемых товаров
  • Две цены в WA Shop-Script
  • книга отзывов для webasyst shop-script
  • Вкладки на странице продукта
  • Обновление Shop-Script

43 Коммент.

  1. Rusel | 12 февраля 2010 at 15:18

    Здравствуйте, все сделал, как описано выше, но категория Бренды все равно не отображается… :( Помогите пожалуйста

    Ответить
  2. Артем | 12 февраля 2010 at 17:34

    Где именно не показываются?
    В категории у вас должен быть вывод тегов.
    А ссылку на сами бренды вам все равно придется делать еще одним плагином, но запросы там не сложные

    Ответить
  3. Александр | 25 апреля 2010 at 5:11

    а где сохранить этот function.brands.php ?
    тут — published\SC\html\scripts\core_functions\ ?

    Ответить
    • Артем | 25 апреля 2010 at 11:04

      /kernel/includes/smarty/plugins

      Ответить
  4. Федор | 18 июня 2010 at 18:44

    Привет, а решение по фильтрам ты не публиковал ещё ?

    Ответить
  5. Артем | 18 июня 2010 at 19:09

    еще нет. постараюсь в течении недели. там просто решение

    Ответить
  6. alex | 30 августа 2010 at 12:21

    {brands type=’menu’} где это прописывать?

    Ответить
    • Артем | 30 августа 2010 at 12:28

      Туда, где вы хотите отобразить список брендов

      Ответить
      • alex | 16 сентября 2010 at 11:43

        в html в любом месте где бы ни поставил {brands type=’menu’}… так и выводится — {brands type=’menu’}

        Ответить
  7. Влад | 16 сентября 2010 at 10:18

    А ты можешь мне помочь с вебасистом за отдельную плату?)

    Ответить
    • Артем | 16 сентября 2010 at 11:31

      могу
      обращайтесь на почту http://easyweb.org.ua/feedback/

      Ответить
  8. Сергей | 27 октября 2010 at 0:45

    Вот эту строчку в category_tree.html:
    {section name=i loop=$categories_tree} {if $categories_tree[i].categoryID != 1 && $categories_tree[i].categoryID != 558}
    Лучше записать (когда у нас одновременно испольуется и отдельное меню категорий и меню брендов):
    {section name=i loop=$categories_tree} {if $categories_tree[i].categoryID != 1 && $categories_tree[i].categoryID != 558 && $categories_tree[i].parent != 558}
    Где 558 — ID брендовой категории.

    Ответить
  9. Эльшан | 12 мая 2011 at 2:10

    Здравствуйте. Я сделал как тут написано, но ничего не получилось. Ничего не выводит

    Ответить
    • Артем | 12 мая 2011 at 18:18

      с таким описанием проблемы сложно чем-то помочь
      ну и решение это не «под ключ», а скорее заготовка

      скоро (надеюсь скоро) будет новое решение брендов

      Ответить
  10. Валерий | 13 июля 2011 at 8:19

    В каком файле прописывать строку {brands type=’menu’}
    Где именно Вы прописывали, для того что-бы работало ?

    Ответить
    • Артем | 13 июля 2011 at 14:25

      Прописывать нужно там, где вы хотите видеть меню брендов

      Ответить
      • Валерий | 13 июля 2011 at 23:39

        Я это понимаю.В каком файле это делать ?
        Вопрос проще: В каком файле Вы прописывали эту строку ?

        Ответить
        • Артем | 14 июля 2011 at 8:06

          В редакторе дизайна через админку
          в режиме редактирования html

          Ответить
  11. VintiK | 16 июля 2011 at 22:37

    Спасибо ОГРОМНОЕ! все понятно и работает.
    категории вывел картинками в левой колонке

    Ответить
    • Алексей | 10 августа 2011 at 9:05

      VintiK не могли бы Вы подробнее описать как вывели категории картинками

      Ответить
    • Виктор | 5 декабря 2011 at 9:13

      Если кто реализовал вывод брендов логотипами,помогите пожайлуста…Выложите здесь,плиз…

      Ответить
  12. Alexander | 3 сентября 2011 at 23:44

    Ничего не заработало! Все несколько раз перепроверил по вашей статье, не помогло! Может это как заготовка и подсказка для программистов… но если делать все по вашей инструкции, то не работает! Приложите хотя бы ваши файлы, которые вы заменили или изменили. Опишите в какой версии пробовали, может еще что то нужно для работы данного плагина, но забыли указать!

    Ответить
    • Артем | 4 сентября 2011 at 8:53

      да. это заготовка
      решение «под ключ» скоро возможно появится. точную дату не назову

      Ответить
  13. Qawz | 21 сентября 2011 at 14:51

    Блин! Указали бы что работать эта *Заготовка* не будет!
    Чего людям голову морочить то!

    Ответить
    • Артем | 21 сентября 2011 at 15:00

      забыл у вас спросить как писать сообщения в своем блоге.
      в следующий раз обязательно спрошу

      ну и тем, кто немного в этом разбирается данная публикация помогла.
      так что удачи вам и всего доброго

      Ответить
  14. Илья Кот | 6 октября 2011 at 1:55

    Здравствуйте, Артем. Могли бы вы сказать, как составить плагин для отображения брендов? Вы сказали, что запросы там не сложные, но для меня и они сложны :(
    Чтобы было как с фильтром {brands type=’menu’}. Я на главную страницу повесить хочу.

    Ответить
    • Илья Кот | 6 октября 2011 at 2:13

      Я так понимаю, что нужно фактически скопировать содержимое файлов root_categories.html category_tree.html где наоборот убрать все категории, кроме категории брендов. Т.е. мне нужно фактически создать ещё одно меню на главной странице.
      Логика верная? Если да, то как это технически сделать?.. Плиз, подскажите решение.

      Ответить
  15. Andrey | 8 октября 2011 at 14:57

    Работает отлично (ограничение вывода категорий), но есть большой недостаток — вывод на главной сбивается — исключенные категории остаются пустыми блоками.

    {if $smarty.foreach._fr.index%$columnCount ==0}{/if}

    Ответить
    • Илья Кот | 8 октября 2011 at 22:18

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

      Ответить
      • Andrey | 8 октября 2011 at 22:30

        Он по умолчанию на главной или в дизайне «Развернутый список категорий»

        Ответить
        • Илья Кот | 10 октября 2011 at 22:32

          я в курсе. я имею в виду вынести эту категорию в отдельное меню.

          Ответить
  16. makroshop | 12 декабря 2011 at 23:41

    est obrazets???

    Ответить
  17. Alex | 18 декабря 2011 at 23:09

    в какой таблице находятся Дополнительные родительские категории?

    Ответить
    • Артем | 19 декабря 2011 at 19:44

      SC_category_product
      это написано в руководстве http://easyweb.org.ua/shop-script/manual4/

      Ответить
  18. Ирина | 17 января 2012 at 13:05

    Здравствуйте, Артем. Спасибо за модуль. Скажите, пожалуйста, если меняешь вид вывода дерева категорий, как в этой статье http://easyweb.org.ua/shop-script/my-category-tree/ пунк 1., какие строчки изменить, чтобы не скрыть категорию с брендами в дереве? Изменения нужно производить в function.newtree.php?

    Ответить
  19. Ирина | 17 января 2012 at 13:07

    Опечатка — «чтобы НЕ скрыть категорию с брендами в дереве», чтобы скрыть категорию

    Ответить
    • Артем | 17 января 2012 at 13:28

      в первой функции сразу после
      while($res=mysql_fetch_assoc($r)){
      можно вставить
      if($res['categoryID'] == 777) continue;

      777 — ID вашей категории с брендами

      Ответить
  20. Ирина | 17 января 2012 at 14:51

    Артем, спасибо за быстрый ответ. Категория скрылась. А вывести блок с брендами не получается ни на главной, ни на странице с категориями. Просто пусто. Есть какое-то решение.
    P.s. Вы занимаетесь доработкой для shop-script. Интересует модуль-фильтр по параметрам товара Куда вам можно написать?

    Ответить
  21. Артем | 17 января 2012 at 15:16

    занимаюсь, но в ближайшее время буду занят

    написать можно через форму обратной связи http://easyweb.org.ua/feedback/

    Ответить
  22. Аскольд | 15 февраля 2012 at 9:46

    Зачем такие танцы с бубном??? Я у себя в магазине реализовал это все стандартным функционалом с помощью доп. характеристик каждого товара.
    Создается доп. характеристика «Производители» (или как хотите), в ней список всех производителей, а там в редактировании товара все проставляете (ну или через CSV). При этом в настройках Ваших категорий ставите галочку «Разрешить подборку продуктов при просмотре категории» и выбираете в «Расширенный поиск» (тоже в редактировании категории) бренды, которые есть именно в этой категории…
    Наглядно можете посмотреть в любой категории моего магазина — Рыбалочка.com

    Ответить
    • Артем | 15 февраля 2012 at 10:00

      очередной эксперт? :)
      такие «танцы» нужны, чтобы каждому бренду можно было добавить описание и логотип

      ну и ваше «ноу-хау» тоже упоминается в статье как одни из возможных и более простых вариантов реализации этой задачи.

      Еще один способ: вместо тегов сделать доп. характеристику и фильтр. Тогда будет фильтровать по бренду внутри категории.

      Ответить
  23. Виктор | 9 апреля 2012 at 18:25

    На всех страницах список брендов выводится нормально,а на странице категории,он пропадает, как это можо исправить?

    Ответить
  24. Виталий | 17 апреля 2012 at 13:11

    Коментарий Аскольда — очень помог разобраться с фильтрацией. Осталась одна проблема — как вывести этот фильтр как у него на сайте рыбалка (выше над гл. меню)? ведь он съедает полезное пространство в поле где должны быть представлены товары.

    Заранее спасибо за советы.

    Ответить

Оставить комментарий Отменить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

  • Twitter
  • Facebook
  • VK
  • RSS


| |

Последние комментарии

  • Артем к записи Фильтр по ценам
  • Виктор к записи Фильтры в Webasyst Shop-Script
  • Виктор к записи Фильтр по ценам
  • Артем к записи дерево категорий по-своему (shop-script)
  • Максим к записи дерево категорий по-своему (shop-script)

Самые комментируемые

  • Автоматическое заполнение рекомендуемых товаров (145)
  • дерево категорий по-своему (shop-script) (135)
  • Фильтры в Webasyst Shop-Script (62)
  • WP Cumulus для Shop-Script исправленный (58)
  • Оплата через LiqPay для Shop-Script (51)
  • WP Cumulus для Joomla и Shop-Script (50)
  • Две цены в WA Shop-Script (49)

Самые читаемые

  • Фильтры в Webasyst Shop-Script - 13 101 просмотров
  • дерево категорий по-своему (shop-script) - 12 217 просмотров
  • ввод даты, календарь javascript - 9 738 просмотров
  • Автоматическое заполнение рекомендуемых товаров - 8 224 просмотров
  • Бренды в Webasyst Shop-Script - 8 064 просмотров
  • Модули - 8 019 просмотров
  • Слайдер в списках продуктов - 6 223 просмотров

Архивы







Поддерживать ежемесячно с помощью Donutor

Свежие записи

  • Руководство пользователя Joomla 2.5
  • Вкладки на странице продукта
  • Весенние скидки от WebAsyst
  • Обновление Shop-Script
  • Фильтр по ценам

друзья

  • at-home
  • Fisher — сотовые телефоны
  • WebAsyst
  • Zdorovy.in.ua

Счетчики

www.megastock.ruЯндекс.Метрика

Мета

  • Войти
  • RSS записей
  • RSS комментариев
  • WordPress.org

© 2008-2012 EasyWeb.org.ua | Дизайн elegantthemes.com | Разработано на CMS WordPress