Перейти к содержанию
SiviS

Поступит в продажу **.**.**** г.

Рекомендуемые сообщения

Здравствуйте. Интересует такой вопрос - как реализовать возможность указать когда товар поступит в продажу?

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

 

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

Например в админки вручную устанавливать дату поступления, а в карточке товара что бы выводилось "Поступит 25 сентября" (например)

 

Возможно есть какие то модули или это можно как то дописать самостоятельно?

Если кто то решал подобный вопрос и сможет помочь, буду благодарен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

UP> в админке есть поле "Дата поступления"

 image.png.7b1bbe9780aa389500d232bf1fbb1b4a.png

Если указывать "Предстоящую дату" - тогда товар просто не показывается на странице товаров (и в категориях и т.д.)

 

Нужно в общем что бы товар показывался, и при этом если "Дата поступления" только предстоит, выводить эту дату в карточке товара.

Ниже пример того как хотелось бы что бы выглядело в карточке товара!

image.png.fb48315e715d6f3b2e17484cf3513ecc.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

catalog/controller/product/product.php после

 

$data['model'] = $product_info['model'];

добавить

$data['date_added'] = $product_info['date_added'];

или 

$data['date_added'] = date($this->language->get('date_format_short'), strtotime($product_info['date_added']));

в шаблоне как то так вывести

Поступит в продажу: <?php echo $date_added; ?><br />

ну или заменяйте любое существующее значение на это.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
16 minutes ago, Tom said:

catalog/controller/product/product.php после

 


$data['model'] = $product_info['model'];

добавить


$data['date_added'] = $product_info['date_added'];

или 


$data['date_added'] = date($this->language->get('date_format_short'), strtotime($product_info['date_added']));

в шаблоне как то так вывести


Поступит в продажу: <?php echo $date_added; ?><br />

ну или заменяйте любое существующее значение на это.

 

Дату выводит, это все хорошо. Вопрос - как отображать товары которые только "планируются поступить"?

Т.е. если сегодня 21 сентября, а дата поступления стоит 22 сентября, что бы сам товар не пропадал из списка товаров, а показывался?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

image.png.8b5277b9779fbe0d90b86cfdc3cd8238.png

 

Почему то "Дата поступления" выводится как 2009-02-03 (в независимости от того какая дата установлена) в чем может быть причина?

image.png.89d0c0b5a7fd4f2ee8560a3a05c5b247.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос с датой решен! Место date_added - нужно указывать date_available (для версии OpenCart 2.x по крайней мере)

Тогда дата выводится та, которую установили! Остается открытым вопрос - как сделать что бы если дата больше текущий даты, товар не скрывался?

Изменено пользователем SiviS

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, SiviS сказал:

как сделать что бы если дата больше текущий даты, товар не скрывался?

 

в catalog\model\catalog\product.php убрать все

AND p.date_available <= NOW()

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
15 minutes ago, AlexDW said:

 

в catalog\model\catalog\product.php убрать все

AND p.date_available <= NOW()

Спасибо! Вроде сработало!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.