Como solicitar imagem destacada como padrão? [Tudo para WordPress]

Muitos temas de WordPress, sobretudo páginas iniciais e de arquivos/categorias, são altamente dependentes de imagens destacadas para apresentarem uma interface atrativa Se você tem um tema assim, ou desenvolveu para um cliente que é assim, então você não pode permitir que sua postagem ou a de seu cliente fiquem sem imagem destacada, ou com uma imagem dizendo ‘Sem imagem destacada’.

Tenho um site assim, o GugaAlves.net, um blog pessoal que tem tais características, e cansei de esquecer de colocar uma imagem destacada e só notar depois. Por este motivo, trago uma solução para tal problema🙂

Passo 1 – Criando a função

Adicione o script abaixo em seu arquivo functions.php


add_action( 'pre_post_update', 'request_featured_post' );

function request_featured_post($post_ID) {
$post = get_post($post_ID);
$request_publish_test = isset($_REQUEST['publish']);
$request_under_status_test = isset($_REQUEST['_status']) && $_REQUEST['_status'] == 'publish';
if ( $post->post_type == 'post'
&&( $request_publish_test || $request_under_status_test )
&& !has_post_thumbnail($post_ID) ) {
wp_die( 'Você não pode publicar um post sem imagem destacada!' );
}
}

add_action( 'admin_enqueue_scripts', 'rfi_admin_js' );
function rfi_admin_js($hook) {
if( $hook != 'post.php' && $hook != 'post-new.php' )
return;
wp_register_script( 'rfi-admin-js', get_template_directory_uri().'/js/publish_featured_post.js''), array('jquery'));
wp_enqueue_script( 'rfi-admin-js' );
}

Passo 2 – Criando o arquivo javascript

Crie um arquivo chamado publish_featured_post.js e salve na pasta js em seu tema, com o conteúdo abaixo (se não tiver tal pasta, pode criar sem problemas.


jQuery(document).ready(function($) {

if ($('body').find("#nofeature-message").length===0) {
$('h2').after('<div id="nofeature-message"></div>');
}

if ($('body').find("#categorydiv").length===1) {
setInterval(detectWarnFeaturedImage, 5000);
detectWarnFeaturedImage();
}

function detectWarnFeaturedImage() {
if( $('#postimagediv').find('img').length===0 ) {
$('#nofeature-message').addClass("error").html('<p><strong>Este post está sem nenhuma imagem destacada.</strong> Por favor, adicione uma para poder publicar seu post.</p>');
$('#publish').attr('disabled','disabled');
} else {
$('#nofeature-message').remove();
$('#publish').removeAttr('disabled');
}
}

});

Como solicitar imagem destacada como padrão? Post originalmente publicado no Tudo Para WordPress por Guga Alves

Post originalmente publicado no Tudo Para WordPress por Guga Alves

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s