2013-05-06 73 views
1

我有兩個自定義帖子類型,講道和成員的主題。我也有永久鏈接設置爲postname。Wordpress單帖子模板不顯示帖子

首先,single.php會捕獲一般的博客帖子,以及成員,但不是佈道......它只會顯示index.php文件。

經過一番研究,我發現重置(保存)永久鏈接將重置它們。這種工作現在捕捉成員自定義帖子,但只顯示佈道的index.php。

這是我怎麼稱呼他們?

// Custom Post types for Sermons 
add_action('init', 'sermons'); 

function sermons() { 
    $args = array(
    'labels' => array(
     'name' => __('Sermons'), 
     'singular_name' => __('Sermons'), 
     'add_new' => __('Add Sermon'), 
     'add_new_item' => __('Add Sermon'), 
     'edit_item' => __('Edit Sermon'), 
     'new_item' => __('Add Sermon'), 
     'view_item' => __('View Sermon'), 
     'search_items' => __('Search Sermons'), 
     'not_found' => __('No Home Sermons found'), 
     'not_found_in_trash' => __('No Sermons found in trash') 
    ), 
    'public' => true, 
    'show_ui' => true, 
    'capability_type' => 'post', 
    'hierarchical' => false, 
    // 'menu_icon' => WP_CONTENT_URL . '/themes/####/images/home-widget.png', 
    'rewrite' => true, 
    'exclude_from_search' => true, 
    'menu_position' => 20, 
    'supports' => array('title', 'editor', 'thumbnail', 'page-attributes'), 
    'has_archive' => true 
); 

    register_post_type('sermons',$args); 
} 

// Custom Post types for Members 
add_action('init', 'members'); 

function members() { 
    $args = array(
    'labels' => array(
     'name' => __('Members'), 
     'singular_name' => __('Members'), 
     'add_new' => __('Add Member'), 
     'add_new_item' => __('Add Member'), 
     'edit_item' => __('Edit Member'), 
     'new_item' => __('Add Member'), 
     'view_item' => __('View Member'), 
     'search_items' => __('Search Members'), 
     'not_found' => __('No Home Members found'), 
     'not_found_in_trash' => __('No Members found in trash') 
    ), 
    'public' => true, 
    'show_ui' => true, 
    'capability_type' => 'post', 
    'hierarchical' => false, 
    // 'menu_icon' => WP_CONTENT_URL . '/themes/####/images/home-widget.png', 
    'rewrite' => true, 
    'exclude_from_search' => true, 
    'menu_position' => 20, 
    'supports' => array('title', 'editor', 'thumbnail', 'page-attributes'), 
    'has_archive' => true 
); 

    register_post_type('members',$args); 
} 

我曾嘗試單sermons.php和單members.php,既不似乎工作。這是我註冊每個自定義帖子類型,打破這種方式嗎?

****編輯**** 從$ args中刪除'rewrite' => true,一切都很好,但我寧願有SEO友好的網址。

**** ****編輯固定 它......顯然,除去在ARGS 'rewrite' => true,清爽的永久鏈接,然後再重新加入'rewrite' => true,並獲得成功。

+1

只是想知道是否設置'public_queryable'=> true,作爲參數有幫助。 http://codex.wordpress.org/Function_Reference/register_post_type#Arguments。如果你設置single-sermons.php和single-members.php模板呢? – McNab 2013-05-06 18:50:18

+0

是的,試過了。它不會出於某種原因。我會嘗試你的建議。非常感謝 – Seth 2013-05-06 18:59:35

回答

8

在創建自定義帖子類型後,您應該執行flush_rewrite_rules(),這會爲您刷新固定鏈接結構。

只需在register_post_type()函數後添加flush_rewrite_rules()即可。

更多信息:http://codex.wordpress.org/Function_Reference/flush_rewrite_rules

+0

它的工作,通過做它應該的。但它也使我回到了原來的問題。 – Seth 2013-05-07 13:38:22

+0

我懷疑你在上面的代碼中存在的問題,我沒有看到任何異常 – user2019515 2013-05-08 16:26:11

2

修復它...顯然,在參數中刪除'rewrite' => true,刷新固定鏈接,並再次添加'rewrite' => true,是否有竅門。

0

重新保存永久鏈接爲我工作。 (設置 - >固定鏈接 - >保存)。

+0

我在問題中提到保存永久鏈接並沒有完全解決問題。瑪麗路易斯帕克編碼 – Seth 2014-11-28 00:58:13

+0

我知道,但刪除'rewrite'=> true並不適合我,所以永久鏈接修復可能適用於其他人使用相同的情況。乾杯 – fanta 2014-12-08 05:24:57

0

設置publicly_queryable => true解決了我的問題。

相關問題