本帖最後由 pootor 於 2013-5-19 20:16 編輯
; A" s; e+ L7 M2 w8 ~luguokankan 發表於 2013-5-19 20:00 ( l0 q1 o' P# ?
你的問題是不是不會搞包含sort參數的 pagination? 加sort參數的分頁可以搞定。& x2 B O& g6 X6 ? a
% Q* ^+ j" U# c) l4 s不能搞定:不加參數,可以實現用下拉列表實現訪客排序,但是排序不能分頁,訪問第二頁排序就失去作用了。能否解決分頁也能排序(不加參數)?下面的代碼可以實現排序,但不能分頁。- <?php
5 a$ q; Y1 N. B. y - $order = "&order=DESC";
3 N) I8 \: Z: U/ z' L7 H+ t - if ($_POST['select'] == 'tag') { $order = "&tag=mytag"; }8 _& F$ b, Y& n6 o
- if ($_POST['select'] == 'title') { $order = "&order=ASC&orderby=title"; }
. F; z2 j$ Y1 o$ ~* d - if ($_POST['select'] == 'newest') { $order = "&order=DESC"; }
. R* q. U, X# X- t [ - if ($_POST['select'] == 'oldest') { $order = "&order=ASC"; }4 T- S8 l3 ?' o, x( G% P2 t
- if ($_POST['select'] == 'mcommented') { $order = "&order=DESC&orderby=comment_count"; }$ d+ }2 H" X) |
- if ($_POST['select'] == 'lcommented') { $order = "&order=ASC&orderby=comment_count"; }
8 @9 N0 r0 Z4 u) r/ O1 O - ?>% Z6 f9 H0 Z& x7 l6 N" d K
+ k5 A& u! ~0 O6 C' L
D7 r9 e+ K/ P- <form method="post" id="order">
) ^' H7 P0 A( X c; S: [7 h - Sort reviews by:
3 s( W& Y6 P' v& f2 l - <select name="select" onchange='this.form.submit()'>6 ~; b+ Y. W: T$ d( v j: E+ ]
- <option value="tag"<?php selected( $_POST['select'],'tag', 1 ); ?>>Tag</option>
6 ]& W$ E* E4 [# g - <option value="title"<?php selected( $_POST['select'],'title', 1 ); ?>>Title</option>' L2 {+ Y9 Y$ v6 |$ J U# h
- <option value="newest"<?php selected( $_POST['select'],'newest', 1 ); ?>>Newest</option>7 U) f3 v8 D8 l* F$ V
- <option value="oldest"<?php selected( $_POST['select'], 'oldest', 1 ); ?>>Oldest</option>
, F6 j+ v9 e! ^* r1 D1 r# ^ - <option value="mcommented"<?php selected( $_POST['select'],'mcommented', 1 ); ?>>Most commented</option>9 m9 W- N% n" C& ^- Y+ G
- <option value="lcommented"<?php selected( $_POST['select'],'lcommented' , 1 ); ?>>least commented</option>/ z- ~: }) _7 B" y3 d
- </select>& T! H+ e$ [5 ^4 u) o% h% y
- </form>2 c7 j# Q4 f) E1 v
* t4 i; R& q/ m3 w* v- <?php query_posts($query_string . $order); ?>4 v# r6 U9 p) Y
- <?php if ( have_posts() ) : ?>
) B1 u& }! Y& }2 u0 e9 K0 u4 @ - <?php while (have_posts()) : the_post(); ?>
複製代碼 |