本帖最後由 pootor 於 2013-5-19 20:16 編輯 - \3 g& ^, F2 p
luguokankan 發表於 2013-5-19 20:00 
+ E7 G( {. y1 y, M$ p$ v你的問題是不是不會搞包含sort參數的 pagination? 加sort參數的分頁可以搞定。7 j6 d$ O" W6 t. W% q4 H9 H8 L
' E5 V$ U$ O8 ^, \# g
不能搞定:不加參數,可以實現用下拉列表實現訪客排序,但是排序不能分頁,訪問第二頁排序就失去作用了。能否解決分頁也能排序(不加參數)?下面的代碼可以實現排序,但不能分頁。- <?php8 p' t0 p' c6 T& R' ]7 ^, V
- $order = "&order=DESC";
( E( l3 U. y2 D' L2 E( f1 o - if ($_POST['select'] == 'tag') { $order = "&tag=mytag"; }
5 q) b& O# Z% t - if ($_POST['select'] == 'title') { $order = "&order=ASC&orderby=title"; }" X3 R: J+ I" t# ]3 c
- if ($_POST['select'] == 'newest') { $order = "&order=DESC"; }9 F' x! g9 i d6 k/ ]
- if ($_POST['select'] == 'oldest') { $order = "&order=ASC"; }( s5 W+ ?- L) f' R* Y
- if ($_POST['select'] == 'mcommented') { $order = "&order=DESC&orderby=comment_count"; }3 E( l5 B4 e( }( A( a$ p( w5 |
- if ($_POST['select'] == 'lcommented') { $order = "&order=ASC&orderby=comment_count"; }
' q3 X' |2 L) }0 j' J# R - ?>6 M3 ~ C. T7 q
- . H; z, [. Q, [) _( P& x
5 X+ C- |9 m5 [' W+ V- <form method="post" id="order">! m+ w9 U$ a8 G/ {! Q( R
- Sort reviews by:6 n$ q, m1 u9 t" ]/ ^
- <select name="select" onchange='this.form.submit()'>
- }, T7 y" i' i+ G( u/ ] - <option value="tag"<?php selected( $_POST['select'],'tag', 1 ); ?>>Tag</option>; U' P1 T8 {, z6 T' i5 I
- <option value="title"<?php selected( $_POST['select'],'title', 1 ); ?>>Title</option>
9 e9 h2 }7 d% m% h( \8 \* T - <option value="newest"<?php selected( $_POST['select'],'newest', 1 ); ?>>Newest</option>
+ p* \) G F9 d. |5 n - <option value="oldest"<?php selected( $_POST['select'], 'oldest', 1 ); ?>>Oldest</option>1 T' T Z( q9 Q; g0 ?8 Q
- <option value="mcommented"<?php selected( $_POST['select'],'mcommented', 1 ); ?>>Most commented</option>* g# C. t9 L: r/ I0 D6 A& H( K
- <option value="lcommented"<?php selected( $_POST['select'],'lcommented' , 1 ); ?>>least commented</option>( S V# e: T0 X- ^: [! a
- </select>
% l3 r4 G6 x5 r' L/ g$ f) Z - </form>! x" o0 _/ O1 C' P2 f! i5 w* ]
# X9 \9 S0 I; S' z- <?php query_posts($query_string . $order); ?>) x, b9 d K# _
- <?php if ( have_posts() ) : ?>$ c2 ]( Q# @# t2 x7 e
- <?php while (have_posts()) : the_post(); ?>
複製代碼 |