Почему выбранное изображение не отображается в моем пользовательском типе записи?


31

У меня добавлена ​​поддержка миниатюр со следующим в моем functions.php

// Add Thumbnail Support
add_theme_support('post-thumbnails');
set_post_thumbnail_size( 140, 140, true );

И я создаю пользовательский тип сообщения с

// Create Custom Post Type for Work
add_action( 'init', 'create_post_type' );
function create_post_type() {
register_post_type( 'custom_post',
    array(
        'thumbnail',
        'labels' => array(
            'name' => __( 'Custom' ),
            'singular_name' => __( 'Custom' )
        ),
        'public' => true,
        'has_archive' => true,
        'rewrite' => array('slug' => 'custom'),
        'taxonomies' => array('category', 'post_tag')
    )
  );
}

Однако при создании нового сообщения в пользовательском типе сообщения мета-поле «Избранные изображения» не отображается. Я также попытался использовать массив при объявлении пользовательского типа записи, как показано ниже, но это тоже не сработало

// Add Thumbnail Support
add_theme_support('post-thumbnails', array ('post','work','custom_post'));
set_post_thumbnail_size( 140, 140, true );

Чего мне не хватает?

Ответы:


53

попробуйте параметр:register_post_type supports

'supports' => array( 'thumbnail' )

Аааа, конечно. Либо я слишком долго на него пялился, либо мне просто не хватило кофе. Спасибо, Майло!
Райан

4
Это также убирает поддержку заголовка и редактора контента, которые включены по умолчанию. Я должен был использовать 'supports' => array('title', 'editor', 'thumbnail'),.
amoebe

1
Кроме того, не забудьте разрешить пост-миниатюры для вашей темы, например так:add_theme_support( 'post-thumbnails' );
skolind

7

Добавьте этот параметр в ваш массив:

'supports' => array('thumbnail'),

Изменить: Майло был быстрее.


Я думаю, что это удовлетворяет мои потребности лучше, чем у Милона: D
Мартейн ван Хоф

5

Попробуйте это у меня работает .....

add_theme_support('post-thumbnails');
add_post_type_support( 'my_product', 'thumbnail' );    
function create_post_type() {
        register_post_type( 'my_product',
            array(
                'labels' => array(
                    'name' => __( 'Products' ),
                    'singular_name' => __( 'Product' )
                ),
                'public' => true,
                'has_archive' => true
            )
        );
    }
    add_action( 'init', 'create_post_type' );
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.