Php 如何将分页器控件添加到视图中?

Php 如何将分页器控件添加到视图中?,php,pagination,zend-framework2,Php,Pagination,Zend Framework2,我想在我的新闻提要上创建paginator 我已经开发了控制器,它现在运行良好。链接如下: example.com/news/page-1 ... example.com/news/page-10 etc 你工作得很好 现在我需要在视图文件中添加分页器控件。我在文件里找到了这个 在部分文档中有一个示例,其中paginatorControls的呈现方式如下: echo $this->paginationControl( $this->paginator, 'Slidi

我想在我的新闻提要上创建paginator

我已经开发了控制器,它现在运行良好。链接如下:

example.com/news/page-1
...
example.com/news/page-10
etc
你工作得很好

现在我需要在视图文件中添加分页器控件。我在文件里找到了这个

在部分文档中有一个示例,其中
paginatorControls
的呈现方式如下:

echo $this->paginationControl(
    $this->paginator,
    'Sliding',
    'my_pagination_control', 
    array('route' => 'application/paginator')
); 
my_pagination_control
正如我所假设的那样是部分的。也许,我是瞎子,但我在文档中找不到我必须定义这个部分的地方?可能在配置文件中。但是怎么做呢

另外,我不明白
分页控制
函数的第二个选项(参数-
滑动
)将如何与部分参数相互作用。你能澄清一下吗

正如我假设的那样,我的分页控件是部分的。也许,我是瞎子,但我在文档中找不到我必须定义这个部分的地方?可能在配置文件中。但是怎么做呢

正如您所确定的,您可以将其映射到模块配置中,就像映射任何其他部分一样,例如

'view_manager' => array(
    'template_map' => array(
        'my_pagination_control' => __DIR__ . '/../view/paginator/control.phtml',
    ),
),
另外,我不明白paginationControl函数的第二个选项(参数滑动)将如何与partial交互作用。你能澄清一下吗


该参数不与partial交互,它用于从分页器获取特定滚动样式的正确页面。您可以为想要使用的每个不同滚动样式创建适当的分区,如上所述映射它们,然后根据需要使用它们

是否可以设置1个分页部分并在任何地方使用它?在新闻模块新闻列表、类别列表、用户列表等中,仅使用一个部分。我不需要每个控件都使用部分,对吗?我可以只使用一个吗?@SharikovVladislav有可能是的,你通常会通过在分页器中调用url视图帮助程序来部分重用匹配的路由参数(url视图帮助程序的第四个参数),请参见->顺便说一句,你的答案帮助了我,我现在有了工作控件:(图8,87 kb)。但我尝试了
跳跃
滑动
作为第二个参数,得到了1个结果。为什么?是否有一种只显示3-5页而不显示其他页面的滚动样式?例如,如果我在6页上,则显示:
first<4 5 6 7 8>last
,如果在20页上,则显示:
first<18 19 20 21 22>last
。可能吗?还是最好使用建议的?或者可能是我在少量的页面上尝试过这个,我会在更多的页面上看到效果?我尝试了7-10。当前页码是否发送到视图,并且可以通过视图文件中的
$this
访问?如果不是第一页,我想添加当前页码,但我不知道如何添加。@SharikovVladislav yes,将部分放在您始终加载的任何模块中,yes视图模板对所有模块都可用,无论哪个模块提供它们(当然前提是模块已加载)