Impedir que o WordPress adicione o título da imagem automaticamente

8

Eu escrevi um plugin que define o título padrão para todos os títulos não definidos (vazios) e deixa os títulos definidos manualmente (não vazios).

O problema é que quando eu carrego novas fotos (na galeria), o WordPress por padrão define o título como o nome do arquivo. Como posso desativá-lo e forçar o WordPress a usar uma string vazia como título de imagem padrão ?

PolGraphic
fonte
verifique este link: wordpress.stackexchange.com/questions/6135/…
Erez Lieberman
@ErezLieberman não se trata de remover títulos existentes? Não quero remover os títulos definidos pelo administrador. Eu só quero impedir que o WordPress adicione o padrão quando você fizer o upload da imagem.
PolGraphic

Respostas:

5

Você pode tentar o seguinte para limpar o título do anexo da imagem quando inserido, mas não atualizado :

/**
 * Empty the image attachment's title only when inserted not updated
 */
add_filter( 'wp_insert_attachment_data', function( $data, $postarr )
{
    if( 
        empty( $postarr['ID'] ) 
        && isset( $postarr['post_mime_type'] )
        && wp_match_mime_types( 'image', $postarr['post_mime_type'] ) 
    )
        $data['post_title'] = '';

    return $data;
}, 10, 2 );

Aqui, usamos o wp_insert_attachment_datafiltro para substituir o título do anexo, se o anexo IDestiver vazio e o tipo MIME for de acordo com o tipo de imagemwp_match_mime_types() . Uma 'image' === substr( $postarr['post_mime_type'], 0, 5 )verificação simples também pode funcionar. Você pode até segmentar um determinado tipo de mímica, como image/jpeg.

Birgire
fonte
... diz o homem com o rosto branco de que de um fantasma ;-)
Pieter Goosen
1
O Fantasma do WoPera ;-) @PieterGoosen
birgire