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

Метки на странице товара

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

Выводим все метки товара на странице с подробным описание товара.

Красиво, удобно, полезно для сео.

Через админ-часть заходим в раздел Дизайн редактируем текущую тему, выбираем закладку Продукт

И в том месте, где хотим отображать наши метки вставляем {tags}

В папке /kernel/includes/smarty/plugins создаем файл function.tags.php со следующим кодом:

<?php
function smarty_function_tags( $params, &$smarty )
  {
  $disp='Метки:';
  $sql='select tag_id from SC_tagged_objects where object_type="product" and object_id='.$_GET['productID'];

  if($r=mysql_query($sql))
  while($res=mysql_fetch_assoc($r)){
  $sql2='select name from SC_tags where id='.$res['tag_id'];
  if($r2=mysql_query($sql2))
  $tags=mysql_fetch_assoc($r2);
  $disp.='&nbsp;&nbsp;<a href="/search/?searchstring='.$tags['name'].'">'.$tags['name'].'</a>';
  }
  return $disp;
  }
?>

Этот пример выводит все теги, если вам нужны на разных языках разные теги, нужно добавить еще одно условие.

И этот пример для нормальных урлов (вида: /products/product_name/) — настраивается в инсталлере.

Нужны модификации — обращайтесь.

Метки: shop-script, webasyst, метки, теги

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

Модуль «Уведомить о поступлении»

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

Убираем auxpage_ у дополнительныйх страниц



Просмотров: 1 219

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

  • Вкладки на странице продукта
  • Обновление Shop-Script
  • Фильтр по ценам
  • Webasyst Shop-Script новгодняя распродажа
  • Слайдер в списках продуктов

27 Коммент.

  1. Никита | 10 октября 2009 at 21:32

    Добрый вечер. Все сделал как описано в статье, только вот не пойму как вставить {tags} — т.е. это нужно через вкладку «Редактировать HTML-код», а там куда конкретно вставлять. Когда вставил фразу {tags} появилось пять знаков вопроса после двоеточие а потом мои теги. я так понимаю что вместо знаков вопроса должно быть слово метки. и еще как уменьшить шрифт данных тегов. За ранее спасибо =)

    Ответить
  2. Артем | 11 октября 2009 at 21:38

    да. сделать через редактор html
    знаки вопроса из-за неверной кодировки. файл плагина нужно сохранить в кодировки utf-8
    а шрифт уменьшить: заключити {tags} в какой-нибудь div и назнаачьте ему класс. например:

    {tags}

    и в css пишите:
    .mytags {стиль слова «метки»}
    .mytags а {стиль меток}

    Ответить
  3. Влад | 18 февраля 2010 at 15:10

    Всё сделал как написано но у меня не отображаеться, помогите пожалуйста!

    Ответить
  4. Артем | 19 февраля 2010 at 0:48

    помогаю)

    если сами не можете установить — обратитесь к тем, кто в этом разбирается

    Ответить
  5. Виктор | 26 марта 2010 at 19:24

    Нет, серьезно. У меня та же проблема. Создал файл function.tags.php в папке /kernel/includes/smarty/plugins. Скопировал в него ваш скриптик.
    Через редактор дизайна «изменяя html» вставил {tags}. Сохранил — ничего не отображается. Вообще ничего….

    Ответить
    • Виктор | 26 марта 2010 at 19:38

      Да, и метки у меня есть в товарах. Это не из-за их отсутствия…

      Ответить
      • Артем | 26 марта 2010 at 21:09

        это очень простой скрипт. по идее должно работать
        если нет даже слова «метки», то плагин вообще не вызывается
        покажите сайт, пожалуйста

        Ответить
  6. zmeika | 24 апреля 2010 at 15:53

    Да, что-то тут не так…у меня тоже не хочет работать

    Ответить
  7. Alexey | 3 февраля 2011 at 12:24

    Привет! Все работает отлично! Но есть один ньюанс . Как скрыть слово «метки» если на товаре нет ни одного тега. Как правильно задать условие? Спасибо.

    Ответить
    • Артем | 3 февраля 2011 at 14:32

      Перенесите
      $disp=’Метки:’;

      под
      if($r=mysql_query($sql))

      и добавьте перед ним првоерку:
      if(mysql_num_rows($r)>0)

      Ответить
      • Alexey | 17 февраля 2011 at 15:11

        Артем спасибо! Все получилось!

        Ответить
  8. Владимир | 18 апреля 2011 at 23:33

    Можете доработать скрипт чтоб теги показывались в соответсвтие с выбраным языком, а не все подряд :) Спасибо!

    Ответить
    • Артем | 19 апреля 2011 at 10:01

      сейчас могу только платно
      если появится время, то выложу тут

      сделаете раньше — делитесь с народом. вам спасибо скажут

      Ответить
  9. Артем | 19 апреля 2011 at 10:07

    Хотя там всего лишь нужно в запросе (из таблицы SC_tagged_objects) добавить
    and language_id ="'.$_GET['lang_iso2'].'"
    если я ничего не перепутал

    Ответить
    • Владимир | 20 апреля 2011 at 22:54

      $sql=’select tag_id from SC_tagged_objects where object_type=»product» and object_id=’.$_GET['productID'].’ and language_id =’.$_GET['lang_iso2'];

      Если задать этот параметр вообще ни какое теги не показывает

      Ответить
      • Артем | 21 апреля 2011 at 8:29

        да. это я вам неправильно подсказал
        нужно примерно так
        if($_GET['lang_iso2']=='ru'){
        $sql='select tag_id from SC_tagged_objects where object_type="product" and object_id='.$_GET['productID'].' and language_id="1"';
        } else if($_GET['lang_iso2']=='en'){
        $sql='select tag_id from SC_tagged_objects where object_type="product" and object_id='.$_GET['productID'].' and language_id="2"';
        }

        1 и 2 — id языков. посмотреть их можно в админке
        но по умолчанию вроде так

        Ответить
        • Владимир | 21 апреля 2011 at 12:24

          Тоже самое теги не показываются хзч

          Ответить
        • Артем | 21 апреля 2011 at 13:20


          if($_GET['lang_iso2']=='en'){
          $sql='select tag_id from SC_tagged_objects where object_type="product" and object_id='.$_GET['productID'].' and language_id="2"';
          } else {
          $sql='select tag_id from SC_tagged_objects where object_type="product" and object_id='.$_GET['productID'].' and language_id="1"';
          }

          при языке по умолчанию переменная пустая. забыл

          Ответить
  10. Владимир | 21 апреля 2011 at 19:49

    Зачет! Тёма спасибо огромное :) Ты просто пипец какой молодец!

    Ответить
  11. Hunter | 2 сентября 2011 at 13:26

    Артем, а как вывести эти метки {tags} в категории товаров, в списке?

    Ответить
    • Артем | 2 сентября 2011 at 14:10

      вместо $_GET['productID'] передайте id продукта параметром и используйте его в запросе

      и и сам вывод естественно в файле карточки продукта внутри категории

      Ответить
  12. Hunter | 13 сентября 2011 at 8:23

    Артем, я сильно извиняюсь, а не подбросите кусочек кода для категории, если не трудно?
    Спасибо

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

      пока нет

      Ответить
  13. Hunter | 21 сентября 2011 at 12:24

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

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

      если прочитаете руководство, то будете знать в каком файле что находится

      файл — product_brief.html

      Ответить
      • Hunter | 21 сентября 2011 at 14:56

        сорри, не верно выразился, хотел сказать что когда вставляю product_brief.html {tags}, то на странице категорий он не выводится, в отличии от страницы подробно.
        вот я и хотел узнать, в каком php-файле эту переменную нужно иниуиализировать, чтобы потом вывести в шаблон категорий…

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

          {tags} в данном случае не переменная, а плагин
          но сейчас плагин работает только на странице продукта, потому что использует GET переменную, которая доступна только на странице продукта

          чтобы использовать плагин на странице категории, нужно плагину передавать параметром id каждого товара и в самом плагине проверять GET переменную и параметр

          Ответить

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

Ваш 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