2012-04-19 37 views
0

我有一个分页系统来查看一大组数据库查询结果。这使用jQuery AJAX与通过查询等加载所有数据的页面进行通信。然后将结果返回到页面。有ORDERBY链接来使用AJAX从数据库中排序结果

if($pageType == 'prizeHome'){ 

     $my_query = new WP_Query('post_type=prizes&showposts='.$per_page.'&meta_key=pointsvalue&orderby=meta_value_num&order=asc&paged='.$page); 
     while ($my_query->have_posts()) : $my_query->the_post(); $do_not_duplicate = $post->ID; $my_meta = get_post_meta($post->ID,'_my_meta',TRUE); 

这是我的代码片段。它使用wordpress查询来拉取数据,并通过元值进行排序。我的问题是,如果我有另一个用户选择的参数说“按点或按字母顺序排列结果”,当用户点击进入下一页时,这仍然保持真实吗?

我可能对如何去做这件事感到有点困惑,也许我需要使用某种jQuery cookie,以便站点记住用户选择的顺序?

I'ld欣赏任何投入,谢谢:)

回答

1

我建议你使用的查询参数保存所选择的排序字段(允许书签,后退/前进等)。例如。 www.site.com/page?sortBy=name

要记住该设置,到下一页的链接也应包含查询参数。

+0

好吧,这是有道理的,但会这样做使用JavaScript?就像用户点击“orderby:points”时的onclick事件一样? – JamesG 2012-04-19 08:54:08

+0

那么,你可以很容易地使用jQuery修改当前页面上的URL,所以如果这是你的偏好,是的。如果您使用传统服务器页面,另一个选项是在将页面提供给浏览器之前在服务器端手工创建URL。 – erikxiv 2012-04-19 09:29:48