daramal Опубликовано 14 января, 2019 Жалоба Поделиться Опубликовано 14 января, 2019 Друзья, как ограничить вывод всех брендов определенным количеством? Пишу: {get_brands var=all_brands limit=12} ничего не меняется. Подскажите, пожалуйста, как это сделать.Спасибо большое! Цитата Ссылка на сообщение Поделиться на другие сайты
shooroop Опубликовано 14 января, 2019 Жалоба Поделиться Опубликовано 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/ первое сообщение с середины Цитата Ссылка на сообщение Поделиться на другие сайты
Решение yr4ik Опубликовано 14 января, 2019 Решение Жалоба Поделиться Опубликовано 14 января, 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: что то редактор на форуме вообще поплыл.. Сообщения как попало отображаются... Изменено 14 января, 2019 пользователем yr4ik Цитата Ссылка на сообщение Поделиться на другие сайты
shooroop Опубликовано 14 января, 2019 Жалоба Поделиться Опубликовано 14 января, 2019 вроде бы речь не о сортировке. А о лимитах перед пунктом 3 написано серым шрифтом P.S.: Аналогичным образом можно добавить параметр limit Цитата Ссылка на сообщение Поделиться на другие сайты
shooroop Опубликовано 14 января, 2019 Жалоба Поделиться Опубликовано 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); Цитата Ссылка на сообщение Поделиться на другие сайты
yr4ik Опубликовано 14 января, 2019 Жалоба Поделиться Опубликовано 14 января, 2019 (изменено) перед пунктом 3 написано серым шрифтом P.S.: Аналогичным образом можно добавить параметр limit ну там только эта фраза и есть) Аналогично в симпле много чего добавляется. на счет след поста с ф-ей: я думаю это сильное усложнение и клонирование функций. Зачем это делать, если можно доработать фильтр основной ф-и и получить более обширный функционал без негативных излишеств? Изменено 14 января, 2019 пользователем yr4ik Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 15 января, 2019 Автор Жалоба Поделиться Опубликовано 15 января, 2019 (изменено) Когда вы перестанете задавать вопросы которые тысячу раз уже были на форуме и начнете пользоваться поиском. первое сообщение с середины Спасибо за ответ. К сожалению, в поиске не нашел это. Изменено 15 января, 2019 пользователем DarAmal Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 15 января, 2019 Автор Жалоба Поделиться Опубликовано 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: что то редактор на форуме вообще поплыл.. Сообщения как попало отображаются... Огромное спасибо. Отлично работает! Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.