2

如何使寻呼机号码与 URI 字符串匹配?

例如:当我在寻呼机中单击数字 3 以转到第 3 页时,但 URI 是“?page=2”而不是“?page=3”。这种分页不像我以前遇到的任何其他分页那样正常。我该如何解决?

谢谢!!!

4

2 回答 2

1

URL 中的page属性直接在查询中使用,因此如果省略,page将获得 0 作为值。这很正常,因为 Drupal 会做这样的分页操作。

现在,如果您需要更改此设置,则必须为每个查询进行查询更改,将 +1 添加到 limit() 或 range() 方法。

于 2012-12-20T15:10:35.700 回答
1

您可以通过实现hook_url_outbound_alter()hook_url_inbound_alter()来做到这一点。

使用第一个钩子,您可以更改从 Drupal 输出的链接;你会增加$options['query']['page'].
使用第二个钩子,您可以更改从 Drupal 接收到的链接;您应该'?page='在 URL 中找到该字符串,并减少该字符串后面的数字。

请记住,如果页面有多个寻呼机,它$_GET['page']可以是一个字符串。请参阅pager_find_page()'1,2,4,5,6'的代码。

此外,hook_url_outbound_alter()在 中接收查询参数$options,而hook_url_inbound_alter()仅接收 URL 的字符串,其中还包含查询部分。

于 2012-12-22T13:03:50.490 回答