Как прикрутить пагинацию к своему компаненту

#1 18 января 2013 в 13:16
Люди добрые помогите очередной затык при создании собственного компонента, не могу прикрутить пагинацию для разбивки информации постранично. В документации wiki инфы не нашел с функцией getPagebar не смог разобраться. cry

Передаю в шаблон tpl SimpleXMLElement и там его уже через forech вывожу. Кусочек когда frontend.php компонента:

  1. $xml = new SimpleXMLElement($data);
  2. $count_banks = 0;
  3. foreach ($xml as $temp_a){
  4. $count_banks++;
  5. }
  6. $smarty->assign('xml', $xml);
  7. $smarty->assign('count_banks', $count_banks);
  8. $smarty->display('com_banks_view_all.tpl');
  9.  
И Код tpl шаблона:

  1. <table class="list" cellpadding="0" cellspacing="0">
  2. <tbody>
  3. {foreach from=$xml item=minibankinfo}
  4. <tr>
  5. <td>
  6. <b><a href="/banks/view-{$minibankinfo->id}.html">{$minibankinfo->name}</a></b>
  7. </td>
  8. <td>{$minibankinfo->company}</font></td>
  9. </tr>
  10. {/foreach}
  11. </tbody>
  12. </table>
  13.  
Выводится более 200 элементов, а хотелось бы штук по 20 выводить на каждой странице. Как реализовать подскажите пожалуйста.
#2 19 января 2013 в 16:32
Я так понял в том виде какой код сейчас это не реально? Тогда другой вопрос по проще как сделать эту самую пагинацию с данными которые берутся из базы mysql, если кто то может то на примере компанента гостивой книги из wiki http://instantcms.ru/wiki/doku.php/разработка: компоненты: модель_компонента
#3 19 января 2013 в 16:40
Естесно они все выведутся — вы же их все передали в шаблон. Для пагинации передаёте в функцию номер текущей страницы, общее кол-во и кол-во на страницу. Смотрите другие компоненты, там же всё просто.
#4 20 января 2013 в 10:37
lokanaft, Я не сомневаюсь что всё очень просто, но пример не помешал бы lookне могу разобратся что то… hoho
#5 22 января 2013 в 13:02

Я так понял в том виде какой код сейчас это не реально? Тогда другой вопрос по проще как сделать эту самую пагинацию с данными которые берутся из базы mysql, если кто то может то на примере компанента гостивой книги из wiki instantcms.ru/wiki/doku.php/разработка:компоненты:модель_компонента


Помогите кто нибудь с этим?! В wiki была фраза:

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

может быть следующая часть руководства где рассматривается пагинация есть но я плохо ищу?
#6 22 января 2013 в 14:57
xeqtr, закройте и забудьте документацию, как страшный сон)) Откройте любой компонент и смотрите, как сделано там — нагляднее и с учётом нынешних изменений.
#7 22 января 2013 в 15:14
на станицы бить нужно до передачи в шаблон, плюс если страница имеет свой адрес, нужно в роутере прописывать передачу номера стр.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.