您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關WordPress增加文章排序方式的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
WordPress怎么增加文章排序方式?
很多網站的文章列表頁面都可以查看排序方法,但是在wp系統中是沒有這個功能,下面我們來看看關于WordPress系統中增加選擇文章的排序方式的解決辦法
露兜博客首頁的訪客可自行選擇文章排序方式的效果是怎么做的,今天就來給大家分享這個文章排序效果的實現過程。
其實實現過程也比較簡單,一個是構造鏈接,另外一個是使用query_posts來改變一下主循環就可以了。
構造鏈接
鏈接主要用于傳遞GET參數,讓PHP程序知道你到底想怎么排序。在主題的index.php中你需要的位置插入以下代碼,用于輸出排序按鈕的HTML,這個排序按鈕的樣式,你再自己寫寫css咯。需要注意的是以下代碼會自動獲取當前用戶已選擇的排序方式,并給這個排序按鈕的 li 添加了class="current"
代碼如下:
<h5>文章排序</h5> <ul> <li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='rand') ) echo 'class="current"'; ?> href="/?order=rand" rel="nofollow">隨機閱讀</a></li> <li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='commented') ) echo 'class="current"'; ?> href="/?order=commented" rel="nofollow">評論最多</a></li> <li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='alpha') ) echo 'class="current"'; ?> href="/?order=alpha" rel="nofollow">標題排序</a></li> </ul>
改變主循環
首先你得先在主題的index.php中找到以下語句:
代碼如下:
if (have_posts())
然后在這句之前添加以下代碼:
代碼如下:
if ( isset($_GET['order']) ) { switch ($_GET['order']) { case 'rand' : $orderby = 'rand'; break; case 'commented' : $orderby = 'comment_count'; break; case 'alpha' : $orderby = 'title'; break; default : $orderby = 'title'; }</p> <p> global $wp_query; $args= array('orderby' => $orderby, 'order' => 'DESC');</p> <p> $arms = array_merge($args, $wp_query->query); query_posts($arms); }</p> <p>if (have_posts())
關于WordPress增加文章排序方式的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。