本帖最後由 pootor 於 2013-5-19 20:16 編輯 8 F0 O/ P& B. }4 g$ h3 L2 n
luguokankan 發表於 2013-5-19 20:00 ! `' H# W2 {7 a4 g1 V$ O
你的問題是不是不會搞包含sort參數的 pagination? 加sort參數的分頁可以搞定。7 V6 ~, ]/ f j2 U( j7 Z# `% e
; j/ |( O# }5 @# ^, ?不能搞定:不加參數,可以實現用下拉列表實現訪客排序,但是排序不能分頁,訪問第二頁排序就失去作用了。能否解決分頁也能排序(不加參數)?下面的代碼可以實現排序,但不能分頁。- <?php0 x& F( ^$ U. N/ |
- $order = "&order=DESC";
1 E2 N& Z3 L& d. p - if ($_POST['select'] == 'tag') { $order = "&tag=mytag"; }
2 I* ?8 \$ I+ }- l% n - if ($_POST['select'] == 'title') { $order = "&order=ASC&orderby=title"; }
3 U- L( X( z2 F1 ?- c - if ($_POST['select'] == 'newest') { $order = "&order=DESC"; }
3 \6 I; v: E& R0 q! ~0 W5 `5 g& m# K - if ($_POST['select'] == 'oldest') { $order = "&order=ASC"; }; K9 }% Z4 `& d- E1 { s1 |2 A1 {
- if ($_POST['select'] == 'mcommented') { $order = "&order=DESC&orderby=comment_count"; }
& ~8 e) [4 c% M* X. ^ - if ($_POST['select'] == 'lcommented') { $order = "&order=ASC&orderby=comment_count"; }
, o' z x: r2 H4 ? - ?>
# {( D4 [4 r) @. S - ' W. `# p5 p; I+ e7 z
- ) ~4 T1 X/ ]7 T3 f& ^
- <form method="post" id="order">
# Y% \# \) i% t' `# h - Sort reviews by:
6 r5 H& i/ h6 B5 F3 B - <select name="select" onchange='this.form.submit()'>6 [: Q- E0 H) h8 i* c
- <option value="tag"<?php selected( $_POST['select'],'tag', 1 ); ?>>Tag</option>
5 J* g" v4 K& q& c g9 v% v - <option value="title"<?php selected( $_POST['select'],'title', 1 ); ?>>Title</option>
1 n- L4 g% e; M0 P - <option value="newest"<?php selected( $_POST['select'],'newest', 1 ); ?>>Newest</option>
# _7 `. Z- A* T, Q# S. ~' \3 E - <option value="oldest"<?php selected( $_POST['select'], 'oldest', 1 ); ?>>Oldest</option>8 \' x. n) m* L( ^/ h$ @
- <option value="mcommented"<?php selected( $_POST['select'],'mcommented', 1 ); ?>>Most commented</option>: `6 L* I* X& J3 ?
- <option value="lcommented"<?php selected( $_POST['select'],'lcommented' , 1 ); ?>>least commented</option>) [5 {- S, l( V. C
- </select>% R h8 ~4 _! H9 h6 [% j! K
- </form>
) A5 t: h4 _2 r$ x5 S - , z! M1 j9 k9 v) Q% w" L* i2 ?
- <?php query_posts($query_string . $order); ?>
, m- K) P5 v% m4 u( A* F7 ?3 Z; ?6 ~4 P - <?php if ( have_posts() ) : ?>
9 b( E$ }9 M- e; B" I - <?php while (have_posts()) : the_post(); ?>
複製代碼 |