如何将所有特定的帖子元设置为我所在的自定义帖子类型内的值?

时间:2018-10-10 作者:user3525785

我目前有一个自定义复选框(如果选中)将特定帖子设置为“特色”。在设置当前帖子之前,它还会将所有其他帖子设置为“未设置”。

这很管用,但我现在有多个自定义帖子类型,并且希望“无特征”部分只在我所在的自定义帖子类型中的本地工作。

这有意义吗?

因此,如果我正在编辑一个“白皮书”部分,并将其选中为“特色”,则会取消之前所有特色白皮书的设置,但保留其他自定义帖子类型。以下是从所有帖子类型中取消设置所有特色帖子的代码:

if ( isset( $_POST[ \'is-it-featured\' ] ) ) {
    $posts = get_posts($args);
    foreach ( $posts as $post ) {
        // Run a loop and update every meta data
        update_post_meta( $post->ID, \'is-it-featured\', \'0\' );
    }
    update_post_meta( $post_id, \'is-it-featured\', \'1\' );
} else {
    $posts = get_posts($args);
    update_post_meta( $post_id, \'is-it-featured\', \'0\' );
}

1 个回复
最合适的回答,由SO网友:HU ist Sebastian 整理而成

请包括您使用的$args参数。

但是,在get\\u posts$args参数中,可以使用“post\\u type”arg将找到的帖子限制为特定的帖子类型。

结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在