發現與回報 WordPress Core Bug

大家應該有發現我現在的首頁,是採取比較 論壇 風格的設計方式。
而就在製作的過程中,發現了一個 bug。經回報與有修改權限的人協助下,確認我竟然發現了一個從 2.7.1 就存活到現在的問題,真是有幸啊!

因為要滿足論壇風格的首頁,因此需要找出分類列表再抓取文章來顯示。

我使用 get_terms 來抓取分類,針對後續的顯示需求,我只需要 id 跟 name 這兩個的內容就好,所以設定成直接回報這兩個東西組成的陣列。又因為不想要首頁太長,所以只取前幾個出來用。

就是這兩個條件的出現,get_terms  利用以下的程式碼

array_slice($terms, $offset, $number);

來將取回的結果剪裁到我們需要的數量,而這時候問題就出現了,因為這樣寫陣列的鍵值會被改寫成 0, 1, 2, … 這樣的流水編號,而原本的設定上鍵值應該是分類的 ID。而處理辦法很簡單,只需要將內容修正為。

array_slice($terms, $offset, $number, true);

發現與處置辦法都搞定了,接下來就是要回報給 WordPress 官方,這樣他們才可以在之後的版本當中將這問題修正,讓所有的使用者不會遇到同樣的困擾。

WordPress Trac 這是官方的問題回報系統,要使用你必須要有 wordpres.org 的帳號才可以,如果沒有就快去申請一個吧!

進入回報系統後,先不要急者回報問題。
你應該先利用搜尋功能,利用 函示名稱 / 物件名稱 / 錯誤行為 等等的關鍵字,確認同樣的問題是否已經被回報,如果有的會就不會再一次回報,減輕官方人員的負擔。
確認沒有同樣的問題後,就安心的按下 Create New Ticket 之後就可以回報問題。

相信有能力發現問題的人,一定是會寫程式的人,英文的程度一定可以看懂回報表格每一欄要你寫的東西是什麼,而且請記得,你也必須使用 英文 來寫所有的內容。不過文法或錯字的問題不用太擔心,用你懂的東西下去寫就好,如果已經有修正方法,也附上相信他們一定可以理解你的問題與建議的。
如果真不懂也會在留言當中回應請你多說明一些,這時候你可以去找 英文 能力好一些的朋友來協助你,或是上 FB WordPress Taiwan 正體中文 社團,裡面會有人願意上 WordPress Trac 去協助處理 中/英文 當中導致的誤解的。

發表留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料