Impedisci a WordPress di aggiungere automaticamente il titolo dell'immagine


8

Ho scritto un plugin che imposta il titolo predefinito per tutti i titoli non impostati (vuoti) e lascia i titoli impostati manualmente (non vuoti).

Il problema è quando carico nuove foto (nella galleria), per impostazione predefinita WordPress imposta il titolo sul nome del file. Come posso disabilitarlo e forzare WordPress a utilizzare una stringa vuota come titolo dell'immagine predefinito ?



@ErezLieberman non si tratta di rimuovere i titoli esistenti? Non voglio rimuovere i titoli impostati dall'amministratore. Voglio solo impedire a WordPress di aggiungere quello predefinito quando carichi l'immagine.
PolGraphic il

Risposte:


5

Puoi provare quanto segue per cancellare il titolo dell'allegato dell'immagine quando è inserito ma non aggiornato :

/**
 * 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 );

Qui usiamo il wp_insert_attachment_datafiltro per sovrascrivere il titolo dell'allegato se l'allegato IDè vuoto e il tipo mime è un tipo di immagine secondo wp_match_mime_types(). Anche un semplice 'image' === substr( $postarr['post_mime_type'], 0, 5 )controllo potrebbe funzionare. Potresti persino scegliere come target un determinato tipo MIME, ad esempio image/jpeg.


... dice l'uomo con la faccia bianca come quella di un fantasma ;-)
Pieter Goosen,

1
The Phantom of the WoPera ;-) @PieterGoosen
birgire
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.