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

vier

Recommended Posts

Здравствуйте. У меня на сайте 2-е цены.

Как мне это подружить с фильтром

<file path="catalog/controller/product/category.php">

<operation error="skip">
<search><![CDATA[$price,]]></search>
			<add position="after"><![CDATA['price_2'       => $price_2,]]></add>
		</operation>
		
		<operation error="skip">
<search><![CDATA[$price = false;]]></search>
			<add position="after" offset="1"><![CDATA[if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) {
					$price_2 = $this->currency->format($this->tax->calculate($result['price_2'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']);
				} else {
					$price_2 = false;
				}]]></add>
		</operation>
		
		</file>

Спасибо.

Надіслати
Поділитися на інших сайтах


  В 08.11.2018 в 11:20, yurabr сказав:

Здравствуйте. У меня на сайте 2-е цены.

Как мне это подружить с фильтром

Expand  

если у Вас в таблице по продуктам `product` есть данное поле - `price_2`, то модуль ее выведет в контроллере категорий.

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

а вообще, чтоб не городить велосипед, может надо было пойти стандартными методами Opencart - через скидки, или может акции.

Надіслати
Поділитися на інших сайтах

  В 08.11.2018 в 11:48, vier сказав:

если у Вас в таблице по продуктам `product` есть данное поле - `price_2`, то модуль ее выведет в контроллере категорий.

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

а вообще, чтоб не городить велосипед, может надо было пойти стандартными методами Opencart - через скидки, или может акции.

Expand  

У меня в oc_product_discount колонка price_2.

В скидках забиваются две цены и потом выводятся на сайт. У меня это уже давно так.

Из Осмод удалил код, что выше, и на прямую залил в контроллер, вышло так:

  Показати вміст

Потом устанавливаю фильтр и вот как это теперь выглядит в public_shtml/system/storage/modification/catalog/controller/product/category.php

  Показати вміст

Теперь не работает.

В тпл выводилось <span class="common-price"><?php echo $product['price']; ?></span><span class="common-price"><?php echo $product['price_2']; ?></span>

P.S. На другом сайте с фильтрпро все дружит, хотелось бы и тут...

Я не знаю, как правильно - ломать всю настроенную давно логику работы компании под фильтр или же наоборот

P.P.S. Мне фильтрация по цене вообще не нужна

Змінено користувачем yurabr
Надіслати
Поділитися на інших сайтах


  В 08.11.2018 в 12:32, yurabr сказав:

У меня в oc_product_discount колонка price_2

Expand  

колонка price_2  - это нестандартная колонка, и соответственно модуль-фильтр не знает о ее существовании и не подключает ее.

обрабатываете ее в контроллере, присвоив $product['price'] данные по условию, и выводите в tpl-файле одну переменную - $product['price'] (зачем еще в tpl-файле делать еще одну обработку - цените время Вашего сайта).

 

PS

я в своем продукте использую собственные оптимизированные запросы к БД.

Надіслати
Поділитися на інших сайтах

  В 08.11.2018 в 12:57, vier сказав:

колонка price_2  - это нестандартная колонка, и соответственно модуль-фильтр не знает о ее существовании и не подключает ее.

обрабатываете ее в контроллере, присвоив $product['price'] данные по условию, и выводите в tpl-файле одну переменную - $product['price'] (зачем еще в tpl-файле делать еще одну обработку - цените время Вашего сайта).

 

PS

я в своем продукте использую собственные оптимизированные запросы к БД.

Expand  

Таак. Это разговор слепого с немым. Я не крутой программист. Мне нужно вывести price_2 в категории, без фильтра оно выводится, с фильтром - нет.

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

Надіслати
Поділитися на інших сайтах


  В 08.11.2018 в 13:12, yurabr сказав:

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

Expand  

это что-то подобное надо сделать на Ваше условие в foreach

$price_2 = false;
if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) {
    $result['price_2'] = $this->db->query("SELECT `price_2` FROM `".DB_PREFIX."product_discount` WHERE `product_id` = ".(int)$result['product_id']." AND `customer_group_id` = ".(int)$this->config->get('config_customer_group_id')." AND `quantity` = 1 AND ((`date_start` = '0000-00-00' OR `date_start` < NOW()) AND (`date_end` = '0000-00-00' OR `date_end` > NOW())) ORDER BY `priority` ASC, `price_2` ASC LIMIT 1")->row['price_2'];
    if($result['price_2']) {
        $price_2 = $this->currency->format($this->tax->calculate($result['price_2'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']);
    }
}

код не проверялся, так что внимательно его просмотрите.

 

Надіслати
Поділитися на інших сайтах

  В 08.11.2018 в 13:48, vier сказав:

это что-то подобное надо сделать на Ваше условие в foreach

$price_2 = false;
if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) {
    $result['price_2'] = $this->db->query("SELECT `price_2` FROM `".DB_PREFIX."product_discount` WHERE `product_id` = ".(int)$result['product_id']." AND `customer_group_id` = ".(int)$this->config->get('config_customer_group_id')." AND `quantity` = 1 AND ((`date_start` = '0000-00-00' OR `date_start` < NOW()) AND (`date_end` = '0000-00-00' OR `date_end` > NOW())) ORDER BY `priority` ASC, `price_2` ASC LIMIT 1")->row['price_2'];
    if($result['price_2']) {
        $price_2 = $this->currency->format($this->tax->calculate($result['price_2'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']);
    }
}

код не проверялся, так что внимательно его просмотрите.

 

Expand  

Большое спасибо. То, что нужно.

Надіслати
Поділитися на інших сайтах


  В 08.11.2018 в 13:58, yurabr сказав:

Большое спасибо. То, что нужно.

Expand  

пожалуйста.

всё решаемо )

Надіслати
Поділитися на інших сайтах

Здравствуйте!

Установил фильтр, сделал, как смог, базовые настройки но фильтр не выводится(

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

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

Надіслати
Поділитися на інших сайтах


  В 12.11.2018 в 12:25, sset сказав:

Здравствуйте!

Установил фильтр, сделал, как смог, базовые настройки но фильтр не выводится(

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

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

Expand  

Возможно это связано с тем, что устанавливал фильтр когда у меня было одно доменное имя а активировал и настраивал, когда уже я сменил доменное имя?

Надіслати
Поділитися на інших сайтах


  В 12.11.2018 в 12:28, sset сказав:

Возможно это связано с тем, что устанавливал фильтр когда у меня было одно доменное имя а активировал и настраивал, когда уже я сменил доменное имя?

Expand  

- возможно.

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

Надіслати
Поділитися на інших сайтах

  В 12.11.2018 в 12:28, sset сказав:

Возможно это связано с тем, что устанавливал фильтр когда у меня было одно доменное имя а активировал и настраивал, когда уже я сменил доменное имя?

Expand  

Только что еще раз попробовал привязать в макетах к категориям и получилось!

вопрос снят!

Надіслати
Поділитися на інших сайтах


Все таки у меня есть проблема:

При выборе в фильтре параметра, сам фильтр реагирует а вот товары не меняются.

http://www.triplanki.com/index.php?route=product/category&amp;path=59&amp;manufs[1]=34

Надіслати
Поділитися на інших сайтах


  В 12.11.2018 в 13:20, sset сказав:

Все таки у меня есть проблема:

При выборе в фильтре параметра, сам фильтр реагирует а вот товары не меняются.

Expand  

это не проблема.

Вы модификатор модуля установили? - потом обновили все модификаторы - стандартная процедура.

Надіслати
Поділитися на інших сайтах

  В 12.11.2018 в 13:26, vier сказав:

это не проблема.

Вы модификатор модуля установили? - потом обновили все модификаторы - стандартная процедура.

Expand  

да, сделал... 

 

обновил.png

установка расширений.png

Надіслати
Поділитися на інших сайтах


  В 12.11.2018 в 13:26, vier сказав:

это не проблема.

Вы модификатор модуля установили? - потом обновили все модификаторы - стандартная процедура.

Expand  

Сдедал все еще раз и все работает!

Спасибо за помощь!!! 

Надіслати
Поділитися на інших сайтах


  В 12.11.2018 в 13:46, sset сказав:

да, сделал... 

Expand  

и где Вы его загрузили? - закладка Модификаторов же была пуста.

если не знаете, как пользоваться базовыми настройками Opencart`а, то обратитесь к специалистам.

Надіслати
Поділитися на інших сайтах

  В 12.11.2018 в 13:55, vier сказав:

и где Вы его загрузили? - закладка Модификаторов же была пуста.

если не знаете, как пользоваться базовыми настройками Opencart`а, то обратитесь к специалистам.

Expand  

Мои действия

за 10.11.18:

1. В разделе "установка расширений" я загрузил нужный файл.

2. В разделе "модификаторы" я нажал кнопку обновить. По чему закладка модификаторов была пустая - я не знаю(

сегодня 12.11.18

Повторив все действия: 1,2. Но, уже раздел модификаторов был не пустой. 

 

 

повторив действие через время.png

Надіслати
Поділитися на інших сайтах


я писал о вкладке Модификаторов, а не о Установке расширений. -

  В 12.11.2018 в 13:55, vier сказав:

и где Вы его загрузили? - закладка Модификаторов же была пуста.

Expand  

но если вопрос исчерпан, дискуссию прекращаем. - времени на это нет.

Надіслати
Поділитися на інших сайтах

  • 2 weeks later...

@vier Недавно пришлось заглянуть в код модели вашего фильтра "catalog/model/module/filter_vier.php" (уже прогнанный через prettifier) и код откровенно говоря ужасен.
Код обычно пишется для людей, а не для себя. Пожалуйста поинтересуйтесь темами code style/refactoring. А то это просто жопа...
Удачи!

 

Змінено користувачем kagan
Надіслати
Поділитися на інших сайтах

  В 22.11.2018 в 18:44, kagan сказав:

Недавно пришлось заглянуть в код модели вашего фильтра "catalog/model/module/filter_vier.php" (уже прогнанный через prettifier) и код откровенно говоря ужасен.

Expand  

Вы наверно не по адресу пишите. Код зашифрован - как Вы его могли посмотреть?

Надіслати
Поділитися на інших сайтах

@kagan  - еще один претендент на использование пиратской версией модуля.

 

 

Надіслати
Поділитися на інших сайтах

  В 22.11.2018 в 18:48, vier сказав:

Вы наверно не по адресу пишите. Код зашифрован - как Вы его могли посмотреть?

Expand  

 

  В 22.11.2018 в 19:20, vier сказав:

@kagan  - еще один претендент на использование пиратской версией модуля.

Expand  

Вам скинуть исходник?
Даже если кто-то и ставил пиратскую версию вашего модуля (я не в курсе, не я владелец того сайата где я вносил правки), зачем менять контент файла?
Я все-таки склонен к тому, что ничего не менялось..

Змінено користувачем kagan
Надіслати
Поділитися на інших сайтах

  В 23.11.2018 в 14:36, kagan сказав:

Вам скинуть исходник?

Expand  

а зачем мне исходник, - я и так их знаю.
если используете пиратскую версию, или ту версию модуля, которая еще не была под ionCube, то тогда к чему эта дискуссия.

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

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

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