megauser Опубликовано 28 декабря, 2019 Жалоба Поделиться Опубликовано 28 декабря, 2019 На форуме есть решение как сделать страницу хитов и акционных товаров http://forum.simplacms.ru/topic/7179-%D0%BE%D1%82%D0%B4%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5-%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B-%D0%B4%D0%BB%D1%8F-%D1%80%D0%B5%D0%BA%D0%BE%D0%BC%D0%B5%D0%BD%D0%B4%D1%83%D0%B5%D0%BC%D1%8B%D1%85-%D0%B8-%D0%B0%D0%BA%D1%86%D0%B8%D0%BE%D0%BD/?hl=+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0%20+%D0%BD%D0%BE%D0%B2%D0%B8%D0%BD%D0%BA%D0%B8 Скажите хочу сделать отдельную страницу с новинками. Опять же есть решение где можно создать доп галочку, но оно не подходит. Хочу сделать по условию if strtotime($product->created) >= strtotime('-1 months')}новинка{/if} Как по аналогии сделать с хитами? Можно ли в ProductsView.php создать фильтр и по аналогии с mode вывести страницу с новинками где товары за последний месяц. Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 28 декабря, 2019 Автор Жалоба Поделиться Опубликовано 28 декабря, 2019 В Api / Products.php if(!empty($filter['discounted'])) $discounted_filter = $this->db->placehold('AND (SELECT 1 FROM __variants pv WHERE pv.product_id=p.id AND pv.compare_price>0 LIMIT 1) = ?', intval($filter['discounted'])); Есть такой фильтр на дисконтные товары, выборку сделать по __products а как правильно в запросе записать что created >= 1 месяц как в условии выше? Цитата Ссылка на сообщение Поделиться на другие сайты
shooroop Опубликовано 28 декабря, 2019 Жалоба Поделиться Опубликовано 28 декабря, 2019 использовать что то типа AND p.created>? и created("Y-m-d", created('U')-30*24*60*60) Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 28 декабря, 2019 Автор Жалоба Поделиться Опубликовано 28 декабря, 2019 использовать что то типа AND p.created>? и created("Y-m-d", created('U')-30*24*60*60) я правильно понял что создаю фильтры в api / Products $new_filter = ''; if(!empty($filter['new'])) $new_filter = $this->db->placehold('AND p.created>?', intval($filter['new'])); а где использовать created("Y-m-d", created('U')-30*24*60*60) Цитата Ссылка на сообщение Поделиться на другие сайты
Решение phukortsin Опубликовано 29 декабря, 2019 Решение Жалоба Поделиться Опубликовано 29 декабря, 2019 а где использовать created("Y-m-d", created('U')-30*24*60*60) Такое нигде не надо использовать. Надо примерно так: $new_filter = $this->db->placehold('AND p.created>?', date("Y-m-d", date('U')-30*24*60*60)); Цитата Ссылка на сообщение Поделиться на другие сайты
megauser Опубликовано 29 декабря, 2019 Автор Жалоба Поделиться Опубликовано 29 декабря, 2019 Такое нигде не надо использовать. Надо примерно так: $new_filter = $this->db->placehold('AND p.created>?', date("Y-m-d", date('U')-30*24*60*60)); Спасибо огромное! Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.