本帖最後由 pootor 於 2013-5-19 20:16 編輯
. X/ R. J8 x$ P8 R9 T( U5 wluguokankan 發表於 2013-5-19 20:00 
# F6 U! B# {$ t0 Q你的問題是不是不會搞包含sort參數的 pagination? 加sort參數的分頁可以搞定。1 }8 {( s) r# D: ~
' ^) d% d. O( R! k0 ^
不能搞定:不加參數,可以實現用下拉列表實現訪客排序,但是排序不能分頁,訪問第二頁排序就失去作用了。能否解決分頁也能排序(不加參數)?下面的代碼可以實現排序,但不能分頁。- <?php B1 Z% W0 @, I- S) O0 [2 o# c4 m
- $order = "&order=DESC";5 d- y3 h% ^3 Q/ x* o, n
- if ($_POST['select'] == 'tag') { $order = "&tag=mytag"; }7 Z5 ]( \; a7 p: e' a
- if ($_POST['select'] == 'title') { $order = "&order=ASC&orderby=title"; }4 U( Z. H: E7 H4 S7 A
- if ($_POST['select'] == 'newest') { $order = "&order=DESC"; }
+ w* P" x) {$ w: d& f - if ($_POST['select'] == 'oldest') { $order = "&order=ASC"; }
+ i' @1 `4 r {$ z1 N - if ($_POST['select'] == 'mcommented') { $order = "&order=DESC&orderby=comment_count"; }& ]5 @3 Q) A+ X7 D
- if ($_POST['select'] == 'lcommented') { $order = "&order=ASC&orderby=comment_count"; }
1 G4 G/ ^, Z* G4 ]' s: e - ?>' D [4 g' A$ L' q5 h
- 4 F- d F. K' `8 A% F& X
! [- z L7 s3 z8 s- <form method="post" id="order">
- _% H. G# [2 t# C4 S - Sort reviews by:
6 g3 v6 K2 w! V - <select name="select" onchange='this.form.submit()'>
+ @8 N$ z y9 N& r9 f( C6 k - <option value="tag"<?php selected( $_POST['select'],'tag', 1 ); ?>>Tag</option>0 T1 h( m3 a7 B" `9 o2 Z0 {
- <option value="title"<?php selected( $_POST['select'],'title', 1 ); ?>>Title</option>
& i% x/ e0 i2 o( c7 y. }/ k - <option value="newest"<?php selected( $_POST['select'],'newest', 1 ); ?>>Newest</option>
3 {; V9 x0 B4 U' q, l& p - <option value="oldest"<?php selected( $_POST['select'], 'oldest', 1 ); ?>>Oldest</option>
$ J( V$ R# l" I# e* i6 p1 E - <option value="mcommented"<?php selected( $_POST['select'],'mcommented', 1 ); ?>>Most commented</option>* L' [3 Y& z, S
- <option value="lcommented"<?php selected( $_POST['select'],'lcommented' , 1 ); ?>>least commented</option>" Z8 r: j0 I0 a6 n+ x# y
- </select>5 L6 U* Q4 k* [
- </form>
/ g* G& j5 s+ }+ P( E* v0 K) f - / W' y* \" _4 F, _
- <?php query_posts($query_string . $order); ?>6 F9 a- S( J) d1 W `2 O- b& @9 y
- <?php if ( have_posts() ) : ?>- a1 H( n1 [ x2 A' y5 [
- <?php while (have_posts()) : the_post(); ?>
複製代碼 |