本帖最後由 pootor 於 2013-5-19 20:16 編輯 ; W0 Q* F o W; ^! s, N' }
luguokankan 發表於 2013-5-19 20:00 
" P2 {" {: ^7 ? R( }( z你的問題是不是不會搞包含sort參數的 pagination? 加sort參數的分頁可以搞定。
0 w6 `0 H% A& H5 }" m: r5 M2 u8 _0 L* l8 F: ?* Z* K3 a# z0 Q
不能搞定:不加參數,可以實現用下拉列表實現訪客排序,但是排序不能分頁,訪問第二頁排序就失去作用了。能否解決分頁也能排序(不加參數)?下面的代碼可以實現排序,但不能分頁。- <?php
5 D, c( `" ^5 f: s/ Z - $order = "&order=DESC";) k5 J. m: v% G7 |. A) s, o
- if ($_POST['select'] == 'tag') { $order = "&tag=mytag"; }
2 I& o6 w$ A1 T) B - if ($_POST['select'] == 'title') { $order = "&order=ASC&orderby=title"; }% ~4 p; x) ]) V0 {% f) W4 J+ r: x
- if ($_POST['select'] == 'newest') { $order = "&order=DESC"; }
$ L) C3 B3 a+ ?! m$ j$ I6 V - if ($_POST['select'] == 'oldest') { $order = "&order=ASC"; }9 E6 f* m6 N; y3 b1 p4 G
- if ($_POST['select'] == 'mcommented') { $order = "&order=DESC&orderby=comment_count"; }! q6 q+ w9 P/ [5 ?8 m M( D
- if ($_POST['select'] == 'lcommented') { $order = "&order=ASC&orderby=comment_count"; }
5 c0 `) A8 E- v3 k8 U4 C - ?>
$ [2 ^" X: G: E% K - # O' w7 r- ~' L. q" }, \. e
! M {' \, ^& O2 O- <form method="post" id="order">
# x8 W! J) k9 u. v5 s2 H9 {+ h/ e# F - Sort reviews by:
- F) O4 ^5 y7 @ - <select name="select" onchange='this.form.submit()'>
( l3 g" K5 U- g - <option value="tag"<?php selected( $_POST['select'],'tag', 1 ); ?>>Tag</option>8 ~6 u+ x5 W0 d0 `4 ]( K
- <option value="title"<?php selected( $_POST['select'],'title', 1 ); ?>>Title</option>
6 c0 E( [& i' R; |( Z1 ^& u - <option value="newest"<?php selected( $_POST['select'],'newest', 1 ); ?>>Newest</option>
" g* |8 i3 b+ `: s3 t& k - <option value="oldest"<?php selected( $_POST['select'], 'oldest', 1 ); ?>>Oldest</option>
+ K. x) f2 c; J* d- c - <option value="mcommented"<?php selected( $_POST['select'],'mcommented', 1 ); ?>>Most commented</option>/ M) F! v% P. h, m0 a; D
- <option value="lcommented"<?php selected( $_POST['select'],'lcommented' , 1 ); ?>>least commented</option>* s( u* K$ Y# o5 V3 Y% t$ k: q
- </select>1 o( q: z1 b5 a
- </form>
& |8 ^6 H/ t$ F( d; h+ }7 r
9 J; h) O* n+ g$ s! i3 `$ Y- <?php query_posts($query_string . $order); ?>* B1 j- e4 O" n/ s+ z4 q: T
- <?php if ( have_posts() ) : ?>
( H3 h/ v4 ^! g9 x1 A& E - <?php while (have_posts()) : the_post(); ?>
複製代碼 |