2013-05-06 4 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, ни похоже на работу. Так я зарегистрировал каждый пользовательский тип сообщения, который нарушает это?

**** EDIT **** Удалено 'rewrite' => true из $ args, и все в порядке, но я бы предпочел иметь дружественные URL-адреса SEO.

**** EDIT **** Fixed это ... По-видимому, удаление 'rewrite' => true в аргументах, регенерирования пермалинки, и добавление 'rewrite' => true снова, сделал трюк.

+1

Просто интересно, задает ли параметр 'publicly_queryable' => true, как аргумент. http://codex.wordpress.org/Function_Reference/register_post_type#Arguments. Как оформить шаблоны single-sermons.php и single-members.php? – McNab

+0

Да, попробовал это. По какой-то причине это не отразится. Однако я попробую ваше предложение. Спасибо alot – Seth

ответ

8

Вы должны сделать flush_rewrite_rules() после того, как вы создали свои собственные типы сообщений, это обновит структуру постоянных ссылок для вас.

Просто добавьте flush_rewrite_rules() после вашего register_post_type() функции.

Подробнее: http://codex.wordpress.org/Function_Reference/flush_rewrite_rules

+0

Он работал, делая то, что он должен был. Но это также вернуло меня к первоначальной проблеме, которую я имел. – Seth

+0

Я сомневаюсь, что проблема была у вас в коде выше, я не вижу ничего необычного – user2019515

2

Исправлено ... по-видимому, удаление 'rewrite' => true в арцах, обновление постоянных ссылок и добавление 'rewrite' => true снова, делает трюк.

0

Re экономии Permalinks работал для меня. (Настройки -> Постоянная ссылка -> СОХРАНИТЬ).

+0

Я упомянул в вопросе, что сохранение постоянных ссылок не полностью решило проблему. mary louise parker codes ?? – Seth

+0

Я знаю, но удаление 'rewrite' => true не работало для меня, поэтому исправление постоянных ссылок может работать для кого-то другого с тем же сценарием. ура – fanta

0

Установка publicly_queryable => true исправлена ​​моя проблема.

Смежные вопросы