本帖最後由 pootor 於 2013-5-19 20:16 編輯
0 Q# F' U: r8 N4 t, Yluguokankan 發表於 2013-5-19 20:00 + d0 x; ^; u2 \, r+ c
你的問題是不是不會搞包含sort參數的 pagination? 加sort參數的分頁可以搞定。. o0 f4 q B% m
5 f7 z8 U9 ^( R2 k7 v+ w/ T2 h$ {不能搞定:不加參數,可以實現用下拉列表實現訪客排序,但是排序不能分頁,訪問第二頁排序就失去作用了。能否解決分頁也能排序(不加參數)?下面的代碼可以實現排序,但不能分頁。- <?php
6 T# k/ D3 [& \4 C' X - $order = "&order=DESC";
% u6 U0 m. a/ V( r0 h8 J4 U8 G4 S' C - if ($_POST['select'] == 'tag') { $order = "&tag=mytag"; }: u) _+ q# N. O( V E
- if ($_POST['select'] == 'title') { $order = "&order=ASC&orderby=title"; }+ i5 ]/ ^9 d( v4 ~7 q
- if ($_POST['select'] == 'newest') { $order = "&order=DESC"; }* [, T: l0 u, `# h; i x
- if ($_POST['select'] == 'oldest') { $order = "&order=ASC"; }
8 S* q' M2 @1 Y2 u4 b/ S7 ?- S - if ($_POST['select'] == 'mcommented') { $order = "&order=DESC&orderby=comment_count"; }
. S* U, L! g% p$ ~ - if ($_POST['select'] == 'lcommented') { $order = "&order=ASC&orderby=comment_count"; }8 f+ k+ B$ M# z- T, m+ o9 T; B
- ?>
5 ~7 E8 v6 B* J# z5 G9 ]
) N2 `% `: D m7 _% Y
' ]+ [% v. m6 L/ e7 ] n0 f5 D5 T- <form method="post" id="order">( a% y& u; z( g9 T. r h c
- Sort reviews by: c9 L* f- ?& e: i
- <select name="select" onchange='this.form.submit()'>
5 Y! Z! B8 I1 k0 j% K - <option value="tag"<?php selected( $_POST['select'],'tag', 1 ); ?>>Tag</option>7 U/ a9 ~5 w1 A2 U3 R7 P$ K
- <option value="title"<?php selected( $_POST['select'],'title', 1 ); ?>>Title</option>
& Q$ k1 [* D- b* Z - <option value="newest"<?php selected( $_POST['select'],'newest', 1 ); ?>>Newest</option>/ q/ E7 c5 `2 n3 ~
- <option value="oldest"<?php selected( $_POST['select'], 'oldest', 1 ); ?>>Oldest</option>) i$ W3 z, ~1 C) x7 `- h/ H. @
- <option value="mcommented"<?php selected( $_POST['select'],'mcommented', 1 ); ?>>Most commented</option>: A: J2 I" n. Z+ K9 V1 i9 G7 }
- <option value="lcommented"<?php selected( $_POST['select'],'lcommented' , 1 ); ?>>least commented</option>
, v2 t/ Y9 ?% _% z+ [ - </select>- d! {8 P0 P! B5 m( ^
- </form>% d' w% ~! _( U- W1 i% T% Y6 j2 h
3 g2 @* u) J8 G; l% }( n7 R3 Z0 V0 v8 b- <?php query_posts($query_string . $order); ?>/ O5 l, y. Y- X* p+ M
- <?php if ( have_posts() ) : ?>
+ p8 H' q( z) y4 x+ B3 k) @7 ` - <?php while (have_posts()) : the_post(); ?>
複製代碼 |