此问题与Concrete5 CMS直接相关。
我在我的某个页面类型中使用了内置的分页助手,我想使用以下代码限制它呈现的页数:<?php echo $paginator->getPages(); ?>
以下是我在模板中使用的完整代码:
if ($paginate && $num > 0 && is_object($pl)): ?>
<div class="pagination">
<?php
$summary = $pl->getSummary();
if ($summary->pages > 1):
$paginator = $pl->getPagination();
?>
<span class="page-prev"><?php echo $paginator->getPrevious('Prev'); ?></span>
<span class="pages"><?php echo $paginator->getPages(); ?></span>
<span class="page-next"><?php echo $paginator->getNext('Next'); ?></span>
<?php endif; ?>
</div>
endif;
现在,我的页面列表设置为每页显示5个项目。我有35个项目,因此我的分页看起来像这样:
上一页[1] 2 3 4 5 6 7下一页
(1周围的括号代表活动页面)
我想将分页限制为一次只显示5页。所以它看起来像这样:
上一页[1] 2 3 4 5下一页
如果您在第5页,它看起来就像这样:
上一页3 4 [5] 6 7下一页
等等。它不需要像这样工作。我主要担心的是限制$ paginator-&gt; getPages();
输出的页面数量我搜索过高低,但我找不到任何有关如何实现这一目标的信息。任何人都可以帮助我吗?
答案 0 :(得分:2)
我的答案是改变 $ proximity 号码的价值。号码定义活动页码旁边显示的页码数量。 我的view.php中的代码示例
<div class="ccm-pagination-outer-wrapper">
<?php
$showPagination = true;
$options = array(
'prev_message' => t('← Previous page'),
'next_message' => t('Next page →'),
'proximity' => 0
);
echo $pagination->renderDefaultView($options);
?>
</div>