在 WordPress 中只为 "Custom Post Type" 而不是其他人启用 "Post Formats"

Enable "Post Formats" Just For a "Custom Post Type" And Not Others In WordPress

我一直在为 WordPress 中的 Post 格式和 CPT 而苦苦挣扎,几个小时后,我决定创建一些 CPT 并为它们启用 Post 格式。

问题是,当我启用 Post 格式时,它们可用于所有 post 类型;我只想为某些 CPT 而不是其他人使用它们。

假设我有三个 CPT,名为“article”、“webinar”和“”教程”。我想为“webinar”启用 Post 格式。

我所做的是创建一个插件并启用 Post 格式:

add_theme_support( 'post-formats', array( 'audio', 'image', 'video', 'gallery' ));

在那之后,我尝试为 CPT 启用它们,称为 medya:

add_post_type_support( 'medya', 'post-formats');

然后,我尝试将它们禁用为默认 "post" post 类型。

remove_theme_support( 'post', 'post-formats');

但它不起作用,Post 两种格式都已启用。 有什么建议吗?

您可以尝试在functions.php

中加入
add_action('after_setup_theme', 'mjt_remove_formats', 100);
function mjt_remove_formats()
{
   remove_theme_support('post-formats' , array( 'post' ));
}

已回答

我找到了答案here

function remove_pf() {
    remove_meta_box( 'formatdiv','post','normal' );
}
add_action( 'admin_menu', 'remove_pf' );