daramal Posted January 14, 2019 Report Share Posted January 14, 2019 Друзья, как ограничить вывод всех брендов определенным количеством? Пишу: {get_brands var=all_brands limit=12} ничего не меняется. Подскажите, пожалуйста, как это сделать.Спасибо большое! Quote Link to post Share on other sites
shooroop Posted January 14, 2019 Report Share Posted January 14, 2019 Когда вы перестанете задавать вопросы которые тысячу раз уже были на форуме и начнете пользоваться поиском. http://forum.simplacms.ru/topic/4080-%D1%81%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0-%D0%B1%D1%80%D0%B5%D0%BD%D0%B4%D0%BE%D0%B2/ первое сообщение с середины Quote Link to post Share on other sites
Solution yr4ik Posted January 14, 2019 Solution Report Share Posted January 14, 2019 (edited) вроде бы речь не о сортировке. А о лимитах. api/Brands.php в функцию get_brands добавляем $sql_limit = ''; if(isset($filter['limit']) || isset($filter['page'])) { $limit = 100; $page = 1; if(isset($filter['limit'])) $limit = max(1, intval($filter['limit'])); if(isset($filter['page'])) $page = max(1, intval($filter['page'])); $sql_limit = $this->db->placehold(' LIMIT ?, ? ', ($page-1)*$limit, $limit); } далее подправляем запрос тут же $query = $this->db->placehold("SELECT DISTINCT b.id, b.name, b.url, b.meta_title, b.meta_keywords, b.meta_description, b.description, b.image FROM __brands b $category_id_filter ORDER BY b.name $sql_limit"); PS: что то редактор на форуме вообще поплыл.. Сообщения как попало отображаются... Edited January 14, 2019 by yr4ik Quote Link to post Share on other sites
shooroop Posted January 14, 2019 Report Share Posted January 14, 2019 вроде бы речь не о сортировке. А о лимитах перед пунктом 3 написано серым шрифтом P.S.: Аналогичным образом можно добавить параметр limit Quote Link to post Share on other sites
shooroop Posted January 14, 2019 Report Share Posted January 14, 2019 если сложно то можно и по другому public function get_rand_brands($count = 2) { $brands = array(); $category_id_filter = ''; // Выбираем все бренды $query = $this->db->placehold("SELECT id, name, url, meta_title, meta_keywords, meta_description, description, image FROM __brands WHERE 1 ORDER BY RAND() LIMIT $count"); $this->db->query($query); return $this->db->results(); } и вывод $brand_limit = $this->brands->get_rand_brands(15); $this->design->assign('brand_limit', $brand_limit); Quote Link to post Share on other sites
yr4ik Posted January 14, 2019 Report Share Posted January 14, 2019 (edited) перед пунктом 3 написано серым шрифтом P.S.: Аналогичным образом можно добавить параметр limit ну там только эта фраза и есть) Аналогично в симпле много чего добавляется. на счет след поста с ф-ей: я думаю это сильное усложнение и клонирование функций. Зачем это делать, если можно доработать фильтр основной ф-и и получить более обширный функционал без негативных излишеств? Edited January 14, 2019 by yr4ik Quote Link to post Share on other sites
daramal Posted January 15, 2019 Author Report Share Posted January 15, 2019 (edited) Когда вы перестанете задавать вопросы которые тысячу раз уже были на форуме и начнете пользоваться поиском. первое сообщение с середины Спасибо за ответ. К сожалению, в поиске не нашел это. Edited January 15, 2019 by DarAmal Quote Link to post Share on other sites
daramal Posted January 15, 2019 Author Report Share Posted January 15, 2019 вроде бы речь не о сортировке. А о лимитах. api/Brands.php в функцию get_brands добавляем $sql_limit = ''; if(isset($filter['limit']) || isset($filter['page'])) { $limit = 100; $page = 1; if(isset($filter['limit'])) $limit = max(1, intval($filter['limit'])); if(isset($filter['page'])) $page = max(1, intval($filter['page'])); $sql_limit = $this->db->placehold(' LIMIT ?, ? ', ($page-1)*$limit, $limit); } далее подправляем запрос тут же $query = $this->db->placehold("SELECT DISTINCT b.id, b.name, b.url, b.meta_title, b.meta_keywords, b.meta_description, b.description, b.image FROM __brands b $category_id_filter ORDER BY b.name $sql_limit"); PS: что то редактор на форуме вообще поплыл.. Сообщения как попало отображаются... Огромное спасибо. Отлично работает! Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.