請教個關於wordpress的自己的分類載入頁面的問題

來源:互聯網
上載者:User
wordpress通過資料庫表wp_term_taxonomy的category(taxonomy其實儲存category和tab)裡的term(term裡面其實就是分類的名稱和自訂地址)可以載入到相關的頁面,相關地址就是xxx/category/自訂地址或者id(url沒重寫的情況下).若我有個自訂的taxonomy,我應該如何重寫wordpress的相關代碼或者方法,才會讓wordpress知道我應該要把文章載入到那個頁面.category的預設在index.php中開啟.

回複內容:

wordpress通過資料庫表wp_term_taxonomy的category(taxonomy其實儲存category和tab)裡的term(term裡面其實就是分類的名稱和自訂地址)可以載入到相關的頁面,相關地址就是xxx/category/自訂地址或者id(url沒重寫的情況下).若我有個自訂的taxonomy,我應該如何重寫wordpress的相關代碼或者方法,才會讓wordpress知道我應該要把文章載入到那個頁面.category的預設在index.php中開啟.

就是有某些主題有portfolio的.也定義了portfolio自己的分類.但是不能按照wordpress預設的category的方式開啟portfolio自訂的分類.會404的,因為wordpress預設的category開啟頁面是在index.php
---------------
首先,我得糾正你對wp主題運行流程的理解.
Template_Hierarchy
自己看下,並非"wordpress預設的category開啟頁面是在index.php".

千萬不要對自己不瞭解的東西,妄下結論.

第二,針對custom taxonomy 404 問題,
我建議你,先重新儲存下permalink structure.

---------------------------------

根據Custom Taxonomies display, 我建議你在主題目錄下,建立一個檔案,taxonomy-skill-type.php 專門現實歸類於skill-type的portfolio.
主要查詢代碼如下, 自己看著修改. 其實,主要是那個tax_query啦, 呵呵

 'portfolio','posts_per_page' => '-1',$tax_query = array('tax_query'=> array(    array('taxonomy' => 'skill-type',//這個名字沒錯吧?     ))););$query = new WP_Query($args);global $wp_query;$wp_query = $query;while ( have_posts() ) :          the_post();         //blah blah.endwhile.?>

end

額,再看幾遍你的代碼,我好像沒怎麼修改啊.我可能醉了...

還不是很完美,顯示skill-type的terms可以這樣.

$tax_query = array(        'taxonomy' => 'skill-type',//這個名字沒錯吧?        'field' => 'slug',        'terms' => get_query_var('term'))

老實說,以上代碼全部都沒測試過.

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.