Come rimuovere la funzionalità "immagine in evidenza" da un custom post type?

29 lug 2011, 14:46:36
Visualizzazioni: 14.3K
Voti: 7

Ho creato un custom post type per un child theme. Ho rimosso "thumbnail" dall'array supports in functions.php e questo previene la visualizzazione del meta box per l'immagine in evidenza. Tuttavia, quando sono nella finestra modale "aggiungi un'immagine", c'è ancora il link "Usa come immagine in evidenza". Perché, oh perché? Ancora più importante, qualcuno sa come rimuoverlo?

Ho provato...

remove_post_type_support( 'itinerary', 'post-thumbnail' );

...dove itinerary è il nome del mio custom post type. Qualsiasi aiuto sarebbe grandemente apprezzato!

Steve

1
Commenti

vedi http://w4dev.com/wp/remove-featured-image-meta-box/ per un approccio diverso che ha funzionato meglio per me.

Pippa Pippa
26 ago 2012 04:28:06
Tutte le risposte alla domanda 3
1
13

In qualche punto del tuo tema dovresti avere:

add_theme_support( 'post-thumbnails' );

Invece di rimuovere il supporto per un post type, prova ad aggiungere il supporto solo per i post type che desideri:

add_theme_support( 'post-thumbnails', array( 'post', 'movie' ) );
29 lug 2011 15:12:56
Commenti

ottimo, ha funzionato! Ho aggiunto

add_theme_support( 'post-thumbnails', array( 'post', 'page' ) );

al functions.php del child theme e l'ho richiamato usando questo:

add_action( 'init', 'mytheme_setup' );

function mytheme_setup() { add_theme_support( 'post-thumbnails', array( 'post', 'page' ) ); }

così non ho dovuto modificare il tema padre :)

Grazie per l'aiuto Brady!

Steve

Steve Steve
29 lug 2011 15:44:14
0

Per aggiungere alla risposta di Brady...

add_theme_support( 'post-thumbnails', array( 'post', 'movie' ) );

Se vuoi aggiungere il supporto solo a un singolo tipo di post, mantieni l'array() nella dichiarazione. Con il debug attivato, se dichiari add_theme_support( 'post-thumbnails', 'post' ); WordPress si lamenterà che si aspetta un array quando sei nella pagina di modifica del post. Quindi, per abilitare le Immagini in evidenza solo per i post...

add_theme_support( 'post-thumbnails', array( 'post' ) );

6 giu 2014 21:48:34
0

Un approccio più moderno è utilizzare remove_post_type_support(post_type, 'thumbnail').

Opzione #1: Rimuovilo immediatamente dopo aver creato il tuo custom post type:

$args = []; // i tuoi argomenti qui

register_post_type('my_post_type', $args);

remove_post_type_support('my_post_type', 'thumbnail');

Opzione #2: Rimuovilo da un post type esistente:

function remove_thumbnail_support()
{
    remove_post_type_support('my_post_type', 'thumbnail');
}

add_action('init', 'remove_thumbnail_support', 11);
16 nov 2021 14:26:34