Como produzir imagem do espaço reservado se nenhuma imagem destacada for definida?

Estou usando o plugin Multipostthumbnails – https://wordpress.org/plugins/multiple-post-thumbnails/

E tem uma certa convenção de nomeação para ele. Conheço a maneira usual de produzir um espaço reservado se nenhuma imagem destacada for definida, mas não com seu código?

Obviamente, eu quero algo como –

if ( has_post_thumbnail($post->ID) ){ $image = wp_get_attachment_image_src(get_post_thumbnail_id(), 'news-large'); $image = $image[0]; echo ''; } else { $image = get_template_directory_uri() .'/assets/img/placeholders/placeholder.png'; echo ''; } 

Mas seu código existente para mostrar uma imagem em destaque é –

 if (class_exists( 'MultiPostThumbnails' )) : MultiPostThumbnails::the_post_thumbnail(get_post_type(), 'header-image', NULL, 'header-image-full', array('class' => "custom-header-image") ); endif; 

Simplesmente não consigo ver como ajustar isso para se ajustar ao meu código no topo?

Para Páginas de Blog –

Código Padrão –

 if (class_exists( 'MultiPostThumbnails' )) : MultiPostThumbnails::the_post_thumbnail( 'page', 'header-image', get_option('page_for_posts'), 'header-image-full', array('class' => "custom-header-image") ); endif; 

Minha tentativa de tentar e mostrar espaço reservado –

 if ( class_exists( 'MultiPostThumbnails' ) ) { MultiPostThumbnails::the_post_thumbnail( 'page', 'header-image', get_option('page_for_posts'), 'header-image-full', array('class' => "custom-header-image") ); } else { $image = get_template_directory_uri() .'/assets/img/placeholders/header_placeholder.png'; echo ''; } 

Muito Obrigado

Solutions Collecting From Web of "Como produzir imagem do espaço reservado se nenhuma imagem destacada for definida?"

Eu acho que você está adicionando o código dentro do loop de index.php ou arquivo de modelo de blog. Você pode tentar este tipo de coisas:

 if ( class_exists( 'MultiPostThumbnails' ) && ( MultiPostThumbnails::has_post_thumbnail( get_post_type(), 'header-image' , get_the_ID() ) ) ) { MultiPostThumbnails::the_post_thumbnail(get_post_type(), 'header-image', NULL, 'header-image-full', array('class' => "custom-header-image") ); } else { $image = get_template_directory_uri() .'/assets/img/placeholders/placeholder.png'; echo ''; } 

Na próxima vez, dar uma olhada nos documentos pode ajudar;)

 MultiPostThumbnails::has_post_thumbnail( $post_type, $id, $post_id = null ) 

Fonte: https://github.com/voceconnect/multi-post-thumbnails/wiki/Funções-e-Template-Tags#has_post_thumbnail

Eu acho que você pode fazer isso daqui. Se não, deixe-nos saber.