2016-01-28 90 views
0

目前我正在使用WordPress,並有一個列表,我可以訂購帖子asc和desc,但具有單個鏈接,如「A-Z」和「Z-A」。在同一鏈接上對ASC和DESC進行排序

我想實現的目的是能夠讓用戶點擊相同的鏈接,然後點擊列表按順序排序。

以下是我目前擁有的代碼,但我不確定如何處理此問題以便在一個鏈接中進行組合。

<?php 
$type = 'test'; 
$args=array(
    'post_type' => $type, 
    'post_status' => 'publish', 
); 

if(isset($_GET['sort']) && "titleasc" == $_GET['sort']){ 
    $args['orderby'] = 'title'; 
    $args['order'] = 'ASC'; 
} 

if(isset($_GET['sort']) && "titledesc" == $_GET['sort']){ 
    $args['orderby'] = 'title'; 
    $args['order'] = 'DESC'; 
} 

的例子鏈接我是標準的:

<th>Title <span><a href="?sort=titleasc">A-Z</a> <a href="?sort=titledesc">Z-A</a></span> </th> 

我想我可以寫一個elseif但是當我試圖將其無論是休息或根本不會改變。我認爲這個想法是,代碼需要檢查它是否已經是asc或desc,然後做相反的事情。我只是不完全確定如何用我有限的知識來編寫它。

給出的任何方向都會超級有用!由於

回答

0

所有你所要做的就是增加你在你的HTML中使用你的PHP相同的邏輯(當然,PHP的;-))

<?php 
if(isset($_GET['sort']) && "titleasc" == $_GET['sort']){ 
    echo '<a href="?sort=titledesc">Z-A</a>'; 
} 

if(isset($_GET['sort']) && "titledesc" == $_GET['sort']){ 
    echo '<a href="?sort=titleasc">A-Z</a>'; 
} 
?> 
相關問題