¿Cómo agregar el parámetro "supports" para un Tipo de Entrada Personalizada?
¿Existe alguna manera de agregar soporte para una característica personalizada a un tipo de entrada personalizada (CPT), después de que haya sido creado?
Sé cómo crear un tipo de entrada personalizada usando register_post_type(), y cómo usar el parámetro supports para especificar lo que el CPT debe soportar;
'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt' ,'headway-seo')
Pero para las situaciones en las que el CPT está siendo registrado por un plugin o tema, ¿hay alguna manera de 'inyectar' elementos de soporte (manipular el array de soporte) del CPT después de que haya sido registrado, usando un hook/filtro de WordPress?

Sí, existe una función llamada add_post_type_support
Engánchate al hook init
-- tarde, después de que los tipos de contenido hayan sido creados -- y añade el soporte.
Añadiendo soporte para extractos a las páginas por ejemplo:
<?php
add_action('init', 'wpse70000_add_excerpt', 100);
function wpse70000_add_excerpt()
{
add_post_type_support('page', 'excerpt');
}

Un enfoque alternativo es enlazar con register_post_type_args
y actualizar el arreglo supports
.
Esto es particularmente útil si tienes plugins de terceros que se enlazan con los argumentos del CPT para mostrar contenido.
function wpse70000_add_author_metabox_to_cpt_book( $args, $post_type ) {
if ($post_type != 'POST_TYPE_NAME') // establecer el tipo de entrada
return $args;
$args['supports'] = array( 'author' ); // configurar el arreglo 'supports'
return $args;
}
add_filter( 'register_post_type_args', 'wpse70000_add_author_metabox_to_cpt_book', 10, 2 );
