我知道您可以使用以下网址生成Feed:?cat = 3& feed = rss2
你可以通过在前面加一个减号来切换它以排除类别3:?cat = -3& feed = rss2
但是,看起来你的帖子看起来不一样吗?我正在使用JW视频播放器,并已加载相关的插件。相关插件可以使用rss-feed(媒体rss)作为参数,因此它可以链接到相关的其他视频/ wordpress帖子。
我的问题是,目前这意味着有效视频也会显示在相关的视频供稿中。
解决此问题的最佳解决方案是什么?我的目标是在将来创建自己的RSS Feed生成器,但是现在我只想保持简单并使用wordpress创建的生成的feed。有没有一种简单的方法来添加对名为post的url参数的支持?然后它可以使用post = -7来排除在feed中显示id为7的帖子。
或者有更好的解决方案吗?
答案 0 :(得分:0)
而不是解释机制 - 有很多插件只是为了.. 我知道的是:
编辑我
我不知道网址 - 但您可以尝试使用
function ok9_feed_filter($query) {
if ( !$query->is_admin && $query->is_feed) {
$query->set('post__not_in', array(15, 6) ); // page /post id
}
return $query;
}
add_filter( 'pre_get_posts', 'ok9_exclude_filter' );
或者
function ok9_feed_exlude($where, $wp_query = NULL) {
global $wpdb;
if ( !$wp_query )
global $wp_query;
if ($wp_query->is_feed) {
// exclude post id
$where .= " AND $wpdb->posts.ID NOT IN (15, 6)";
}
return $where;
}
add_filter( 'posts_where','ok9_feed_exlude', 1, 2 );
如果您不想在函数中使用固定ID,您可以随时在要排除的帖子中添加自定义字段,并在查询中使用该字段。
答案 1 :(得分:0)
您可以使用功能
function exclude_category($query){
if ( $query->is_home || $query->is_feed || $query->is_archive ) {
$query->set('cat', '-1');
}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');
see'a