Показ поста в RSS только при налич. postmeta
-
Доброго времени суток, уважаемые специалисты.
Подскажите, пожалуйста, как в WordPress показывать в RSS ленте только те посты, в которых указано значение пользовательского поля, к примеру, add_in_rss и значение yes для него.
Дабы в RSS не попадали все опубликованные\обновлённые статьи, а только указанные. Такой кастомный RSS получится в итоге.
// Loop starts here while (have_posts()) : the_post(); // Get the meta field $meta = get_post_meta($post->ID, "Meta Name", false); // Do no show post if the meta equals "Meta Value" if($meta != "Meta Value"){ // Content Here } endwhile; // Loop ends
Вписал его в файл feed-rss2.php WordPress, отвечающий за RSS (только восклицательный знак убрал, чтобы было не исключение записи, а вставка записи при наличии у неё произвольного поля)
...do_action( 'rss2_head' ); while ( have_posts() ) : the_post(); $meta = get_post_meta($post->ID, "add_in_rss", false); if($meta = "yes"){ ?> <item> <title><?php the_title_rss(); ?><.... .... ....p echo get_comments_number(); ?></slash:comments> <?php endif; ?> <?php rss_enclosure(); ?> <?php /** * Fires at the end of each RSS2 feed item. * * @since 2.0.0 */ do_action( 'rss2_item' ); ?> </item> <?php } endwhile; ?>...
Но почему то он не срабатывает 🙁
P.S.
Я знаю, что нежелательно редактировать feed-rss2.php, он будет затёрт при обновлении. Но у меня там вписано (и каждый раз вписываю вновь после обновления) вывод картинки для поста, так что в любом случае он уже мной редактируется.
- Тема «Показ поста в RSS только при налич. postmeta» закрыта для новых ответов.