Произвольные типы записей не отображаются в RSS ленте
Уважаемые знатоки, сайт на вордпресс, использует произвольные типы записей, но в стандартном RSS фиде их нет. Пробовал:
/feed
/rss
/wp-rss2.php
?feed=rss2
произвольные типы отсутствуют в RSS ленте. Помогите!
P.S. Нашел инструкцию вида (хук для functions.php):
function wph_feed_all($vars) {
if (isset($vars['feed']) && !isset($vars['post_type']))
$vars['post_type'] = array('post', 'custom_type');
//custom_type - название произвольного поля
return $vars;
}
add_filter('request', 'wph_feed_all');
Пробовал не помогло!
Вывод произвольных типов записей в RSS реализован в ядре WordPress и не подразумевает использование сторонних хуков. Чтобы получить по RSS записи произвольных типов, нужно вызвать урл в следующем формате:
/feed/?post_type=custom_type
Не знаю, насколько будет работать нижеследующий код, но попробуйте.
Подключаем записи произвольных типов в общую RSS ленту WordPress:
function add_new_post_types_to_feed( $query ) {
if( ! $query->is_feed || ! $query->is_main_query() )
return;
$query->set( 'post_type', array('post', 'custom_type') );
}
add_filter('pre_get_posts', 'add_new_post_types_to_feed');

Спасибо. Но не работает и этот код. У меня версия WP – 4.5.2 (может в новом кодексе подобные штучки уже не работают?)
Здравствуйте, использовал фильтр, для подключения фидов к произвольному типу записей, но он не сработал, может подскажете, в чем может быть ошибка.
участок кода отвечающий за добавление произвольного типа записей
/* Portfolio */
function my_post_type_portfolio() {
register_post_type( 'portfolio',
array(
'label' => theme_locals("portfolio"),
'singular_label' => theme_locals("portfolio"),
'_builtin' => false,
'public' => true,
'show_ui' => true,
'show_in_nav_menus' => true,
'hierarchical' => true,
'capability_type' => 'page',
'menu_icon' => ( version_compare( $GLOBALS['wp_version'], '3.8', '>=' ) ) ? 'dashicons-portfolio' : PARENT_URL . '/includes/images/icon_portfolio.png',
'rewrite' => array(
'slug' => 'portfolio-view',
'with_front' => FALSE,
),
'supports' => array(
'title',
'editor',
'thumbnail',
'excerpt',
'comments',
)
)
);
register_taxonomy(
'portfolio_category',
'portfolio',
array(
'hierarchical' => true,
'label' => theme_locals("categories"),
'singular_name' => theme_locals("category"),
'rewrite' => true,
'query_var' => true
)
);
register_taxonomy(
'portfolio_tag',
'portfolio',
array(
'hierarchical' => false,
'label' => theme_locals("tags"),
'singular_name' => theme_locals("tag"),
'rewrite' => true,
'query_var' => true
)
);
}
add_action('init', 'my_post_type_portfolio');фильтр
add_filter('pre_get_posts', 'add_new_post_types_to_feed');
function add_new_post_types_to_feed( $query ) {
// Выходим если это запрос не фидов
if( ! $query->is_feed || ! $query->is_main_query() )
return;
$query->set( 'post_type', array('post', 'portfolio'));
}