web-dev-qa-db-fra.com

Comment ajoutez-vous une prise en charge des vignettes pour les types de publication personnalisés?

le support des vignettes fonctionne pour post, mais j’ai un autre type de post appelé product et cela ne fonctionne pas pour cela. J'essaie: add_theme_support( 'post-thumbnails', array( 'post', 'product' ) ); J'utilise également le plugin multi post thumbnail.

13
Andrew Welch

Par défaut, toute publication personnalisée ajoute le support pour Titre et éditeur. Si vous voulez plus de choses comme des commentaires, des vignettes et des révisions, vous devez l’ajouter manuellement dans l’argument support .

En savoir plus sur comment enregistrer votre type de message personnalisé ici , vous pouvez également trouver la section sur support pour voir ce que vous pouvez ajouter.

Voici un exemple d’inscription d’une vignette pour la publication personnalisée "Livres" et le support pour: 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments'

function codex_custom_init() {
  $labels = array(
    'name' => _x('Books', 'post type general name'),
    'singular_name' => _x('Book', 'post type singular name'),
    'add_new' => _x('Add New', 'book'),
    'add_new_item' => __('Add New Book'),
    'edit_item' => __('Edit Book'),
    'new_item' => __('New Book'),
    'all_items' => __('All Books'),
    'view_item' => __('View Book'),
    'search_items' => __('Search Books'),
    'not_found' =>  __('No books found'),
    'not_found_in_trash' => __('No books found in Trash'), 
    'parent_item_colon' => '',
    'menu_name' => __('Books')

  );
  $args = array(
    'labels' => $labels,
    'public' => true,
    'publicly_queryable' => true,
    'show_ui' => true, 
    'show_in_menu' => true, 
    'query_var' => true,
    'rewrite' => true,
    'capability_type' => 'post',
    'has_archive' => true, 
    'hierarchical' => false,
    'menu_position' => null,
    'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' )
  ); 
  register_post_type('book',$args);
}
add_action( 'init', 'codex_custom_init' );
22
Pontus Abrahamsson

Pour les publications personnalisées, vous premier devez activer la prise en charge des vignettes:

add_theme_support( 'post-thumbnails' );
function theme_setup() {
    register_post_type( 'yourposttype', array(
        ...,
        'supports' => array('title', ...,'thumbnail'),
    ));
}
add_action( 'after_setup_theme', 'theme_setup' );
10

Vous pouvez également utiliser add_post_type_support() pour ajouter une seule fonctionnalité, si vous ne souhaitez pas réécrire les options par défaut supports lors de l'enregistrement de votre type de publication personnalisé:

add_post_type_support( 'product', 'thumbnail' );
1
Capsule