Вход • Регистрация

Цена в результатах поиска

  • 27 июля 2018 г.
  • Здравствуйте.
    Подскажите, пожалуйста, как вывести цену товара в его карточке в результатах поиска по сайту?
    Шаблон дефолтный.
    • 27 июля 2018 г. , редакция: 27 июля 2018 г.
    • Добавить в файле search.view.rows.php в место, где нужна цена, переменную
      Код
      $row['price']
      • 30 июля 2018 г.
      • Благодарю за ответ.
        В указанном вами файле добавил строку, чтобы цена отображалась после названия (как я понял "search_name" - это вывод названия товара).

        Код

        <div class="search_name"><a href="'.BASE_PATH_HREF.$row["link"].'">'.$row["name"].'</a></div>
        <div class="search_price">'.$row['price'].'</div>
        <div class="search_text">'.$row["snippet"].'</div>';


        Однако цена не отображается. Я что-то делаю неправильно?
        • 30 июля 2018 г.
        • А вы уверены что массив $row[] содержит элемент 'price'?
          Если в модельке элемент не добавлен то ничего не получится.
  • 31 июля 2018 г.
  • Версия 6.0.7.2.

    Решил закомментировать эти строки, а названия товаров все равно выводятся. Как будто не этот шаблон результаты выводит.

    Открыл файл search.model.php, но в нем нет элемента 'price'.

    Подскажете, куда еще копать?
    • 31 июля 2018 г. , редакция: 31 июля 2018 г.
    • в custom есть что нибудь?
      Если есть, зайдите туда, зайдите в модули, поиск, и там смотрите этот файл, если пусто, или если вообще нет темы, значит сделайте туже манипуляцию и сбросьте кеш в админке в настройках
  • 01 августа 2018 г.
  • Нет, в модулях кастомной темы этих файлов нет. Кэш сбрасывал, не помогает.
    Спасибо за советы, напишу в саппорт.
  • 01 августа 2018 г.
  • Информацию вы предоставили неполную.

    1. Проверьте, что все изменения вы проводите в папке custom, а не в корне.
    2. Насколько я понимаю, необходимо выведение цены в строке поиска? (скрин) Если так, то читаем дальше.
    3. За вывод цены отвечает файл shop.view.buy_form.php, его и нужно прикрутить к поиску.
    4. В modules\shop\views/shop.view.list_search.php меняем подключение

    Код
    echo '<div class="shop-pane">';
    $result['search'] = true;
    echo $this->get('rows','shop',$result);

    на
    Код
    echo '<div class="shop-pane2">';
    $result['search'] = true;
    echo $this->get('rows_search','shop',$result);


    5. Находим файлик shop.view.rows.php, делаем его копию и переименовываем в shop.view.rows_search.php

    В нем уже меняем ссыль на файл
    Код
    echo $this->get('buy_form_serch','shop', array("row" => $row, "result" => $result));


    Потом берем shop.view.buy_form.php, делаем копию, преименовываем в shop.view.buy_form_serch.php

    В этом файле стираем или комментируем все ненужное, оставляем только цену (можно новую, можно старую, можно скидки оставить/убрать и т.д.)

    ------
    Как-то так.
    • 01 августа 2018 г. , редакция: 01 августа 2018 г.
    • Зачем все усложнять? Причем тут файл shop.view.buy_form.php, он выводит цену в магазине. В поиске есть цены и без участия этого файла со всеми скидками. О Боги, простите мою душу.


      Смотрите скрин.
    • 01 августа 2018 г. , редакция: 01 августа 2018 г.
    • И Вы понимаете что делаете в этом случае?)

      Код
      echo $this->get('buy_form_serch','shop', array("row" => $row, "result" => $result));


      Это вызов файла, в который Вы передаете массив с данными, который получила моделька поиска )))))
      Не будь цены в поиске в самом, этот файл не поможет никак.


      __________

      Приложил скрин, в котором показана часть кода, отвечающая за вывод всех данных, в том числе и цены (если это shop), каждого модуля.
      • 01 августа 2018 г.
      • Степан, кому не нравится грузить люминий, пусть грузят чугуний.
        Мой вариант работает (это проверено и сделано мной лично на одном из сайтов), ваш почему-то нет.

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

        Если у вас есть другой рабочий вариант, то пожалуйста. Я не говорю, что данное решение единственное и неповторимое.
        • 01 августа 2018 г.
        • Цитата
          Мой вариант работает (это проверено и сделано мной лично на одном из сайтов), ваш почему-то нет.

          Тут нет моего примера. Я дал переменную $row['price'], а куда ее вывели, и почему не работает это другой момент.

          Я не гружу чугуний, я вообще ничего не гружу, а Вы изобретаете велосипед на ровном месте, и так делать не нужно, часто приходится вносить правки, где вот такие велосипеды наделаны по не знанию CMS.

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


          Все эти данные уже есть в массиве поиска, о чем я уже сказал, Вы вызываете файл shop.buy_form.php, в которой передаете тот же массив что уже есть в поиске, и цену выводите там. Зачем??

          Нужен рабочий пример без велосипедов? Вот пожалуйста https://unident-online.ru/search/?searchword=%D0%B0%D0%B2%D1%82%D0%BE%D0%BA%D0%BB%D0%B0%D0%B2
          • 01 августа 2018 г.
          • Цитата
            Я не гружу чугуний, я вообще ничего не гружу

            Это я не про вас, а вообще. Не нравится мой вариант - я не заставляю его применять.

            Цитата
            Вы вызываете файл shop.buy_form.php, в которой передаете тот же массив что уже есть в поиске, и цену выводите там. Зачем??

            Затем, что в моем варианте нужна была еще кнопка "купить", для которой и понадобился данный файл.

            Цитата
            Нужен рабочий пример без велосипедов? Вот пожалуйста

            Спасибо. Посмотрела. Красиво. Попробую потренироваться, как будет время.
  • 21 декабря 2018 г.
  • Здравствуйте. Можно ли к переменной $row['price'] применить форматирование определённое в настройках модуля средствами системы?
    • 21 декабря 2018 г.
    • Там форматированная цена сидит в какой-то другой переменной. Сейчас не вспомню.
      Либо можете в шаблоне применять к содержимому переменной php функцию по форматированию цены.
  • 04 января 2019 г.
  • Тоже не могу понять, как вывести цену в результатах поиска? Даже файл не могу найти, который отвечает за вид результата поиска.

    http://evrokomfort12.ru/search/?module=search&searchword=%D0%BB%D0%B8%D0%BD%D0%BE%D0%BB%D0%B5%D1%83%D0%BC

    Может кто подскажет, где смотреть?
    • 04 января 2019 г.
    • Пришлось в файле shop.view.rows.php "убрать" строчку if(empty($result['search']))

      Может кому поможет)

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум