当使用 Zend_Paginator 时,我不希望它显示所有的分页链接。以下是我的实现方式:
$adapter = new Zend_Paginator_Adapter_DbSelect($result);
$paginator = new Zend_Paginator($adapter);
$page=$this->_getParam('page',1);
$paginator->setItemCountPerPage(10);
$paginator->setCurrentPageNumber($page);
$this->view->paginator=$paginator;
现在它向我显示了所有链接。例如。每页有 100 条记录和 10 行,因此它会显示 1 到 10 个链接。 我怎样才能有 5 个链接,1 到 5? 像这样:
"start" "previous" 1 2 3 4 5 "Next" "End"
已编辑
<!--Number page links-->
<?php foreach ($this->pagesInRange as $page): ?>
<?php if ($page != $this->current): ?>
<a href="<?= $this->url(array('page' => $page)); ?>">
<span class="fg-button ui-button ui-state-default"><?= $page; ?></span>
</a>
<?php else: ?>
<span class="fg-button ui-button ui-state-default ui-state-disabled" ><?= $page; ?></span>
<?php endif; ?>
<?php endforeach; ?>
我怎样才能改变它,让它只显示 5 个链接?
$adapter = new Zend_Paginator_Adapter_DbSelect($select);
$paginator = new Zend_Paginator($adapter);
$page=$this->_getParam('page',1);
$paginator->setItemCountPerPage(10);
$paginator->setCurrentPageNumber($page);
$paginator->setPageRange(5);
$this->view->paginator=$paginator;
最佳答案
$paginator->setPageRange(5);
适合我。但是,您可能需要在分页器控件中应用此功能。
这就是我的控件的页面链接部分的样子。
<!--Number page links-->
<?php foreach ($this->pagesInRange as $page): ?>
<?php if ($page != $this->current) : ?>
<a href="<?php echo $this->url(array_merge($params,
array('page' => $page))) ?>">
<?php echo $page ?></a> |
<?php else: ?>
<?php echo $page ?> |
<?php endif; endforeach; ?>
关于php - Zend_Paginator中如何限制分页链接的个数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9207485/