虽然已经多次询问过这个问题,但我真的无法从中找到任何线索。
我正在开发一个客户端项目,其中的页码编号如下:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]等......
因此,如果有100页,这些数字将计为...... [100]。
以下是我正在使用的代码:
{foreach var=$page from=$pages counter=$counter}
<li><a href="$page.page_url">$counter</a>
{/foreach}
我希望对它们进行分页,这样每页最多只能显示10个页码。
任何帮助都将受到高度赞赏。
提前致谢。
答案 0 :(得分:0)
首先,您必须记住当前页面的页码。然后决定分页的行为。当前页面示例,接下来的四页,前三页,第一页和最后一页
因此对于第9页,它看起来像这样: [1] ...... [6] [7] [8] [粗体9] [10] [11] [12] [13] ...... [100]
接下来(最难的)就是定义一种有效的算法。
例如:
迭代示例:
foreach element on list:
if element.value == current_page
print_bold [element.value]
else
print [element.value]
nextElement = list.nextElement
if nextElement.value - element.value > 1:
print "..."
答案 1 :(得分:0)
对于大量页面,请考虑此处描述的“对数”分页(包括PHP代码):
How to do page navigation for many, many pages? Logarithmic page navigation