2013-12-23 3 views
1

У меня есть набор настраиваемых типов сообщений в моей теме wordpress и категория с именем Home, чтобы отображать определенные сообщения из всех сообщений типы, которые я хочу на главной странице шаблона index.php. Что я делаю, добавив тип записи, как это в моей functions.php -Типы и категории пользовательских сообщений Wordpress, не отображающиеся из пользовательских типов сообщений при запросе в index.php

function livingroom_post_type() { 

$labels = array(
    'name'    => _x('livingrooms', 'Post Type General Name', 'text_domain'), 
    'singular_name'  => _x('livingroom', 'Post Type Singular Name', 'text_domain'), 
    'menu_name'   => __('livingroom', 'text_domain'), 
    'parent_item_colon' => __('Parent livingroom:', 'text_domain'), 
    'all_items'   => __('All livingrooms', 'text_domain'), 
    'view_item'   => __('View livingroom', 'text_domain'), 
    'add_new_item'  => __('Add New livingroom', 'text_domain'), 
    'add_new'    => __('New livingroom', 'text_domain'), 
    'edit_item'   => __('Edit livingroom', 'text_domain'), 
    'update_item'   => __('Update livingroom', 'text_domain'), 
    'search_items'  => __('Search livingrooms', 'text_domain'), 
    'not_found'   => __('No livingrooms found', 'text_domain'), 
    'not_found_in_trash' => __('No livingrooms found in Trash', 'text_domain'), 
); 
$args = array(
    'label'    => __('livingroom', 'text_domain'), 
    'description'   => __('livingroom information pages', 'text_domain'), 
    'labels'    => $labels, 
    'supports'   => array('title','editor','author','excerpt','custom-fields','thumbnail'), 
    'hierarchical'  => false, 
    'public'    => true, 
    'show_ui'    => true, 
    'show_in_menu'  => true, 
    'show_in_nav_menus' => true, 
    'show_in_admin_bar' => true, 
    'menu_position'  => 5, 
    'can_export'   => true, 
    'has_archive'   => true, 
    'exclude_from_search' => false, 
    'publicly_queryable' => true, 
    'capability_type'  => 'post', 
    'taxonomies' => array('category', 'post_tag'),   
); 
register_post_type('livingroom', $args); 

} 
add_action('init', 'room_post_type'); 

, а затем запрашивая мои сообщения в room.php (файл шаблона), как -

$args = array('post_type' => array('bathroom')); 
$loop = new WP_Query($args); 

, который работает хорошо. Но когда в моей админке я добавить этот пост в домашней категории и попытаться отобразить его в основной index.php страницы, как это -

$args = array('category__in' => array(get_cat_ID('Home'))); 
$loop = new WP_Query($args); 

Это не обнаруживается. Более того, если я создаю сообщение в post-> add new вместо room-> Add New, то то же самое отлично работает. Я сделал несколько google, которые сказали мне добавить таксономии к типу сообщения в functions.php, но это явно не работает, поэтому любые предложения, как я могу заставить его работать, пожалуйста.

+0

Попробуйте отладить и проверить вывод 'get_cat_ID ('Home')' first. Вы получаете правильный идентификатор? – Rikesh

+0

Я получаю правильный идентификатор, я использовал плагин с идентификатором идентификаторов, который показывал мне то же самое – DeadMan

+0

, и сообщения действительно отображались на главной странице, если я создаю новое сообщение в главном сообщении, а не в разделе пользовательского сообщения – DeadMan

ответ

0

Попробуйте использовать это на index.php:

$args = array(
    'post_type' => array('post', 'livingroom'), 
    'category__in' => array(get_cat_ID('Home')) 
); 
$loop = new WP_Query($args); 

В «» post_type список массива все почтовые типы, которые вы хотите, чтобы появиться на главной странице.

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