Cegah WordPress menambahkan judul gambar secara otomatis

8

Saya menulis sebuah plugin yang menetapkan judul default untuk semua judul yang tidak disetel (kosong) dan membiarkan judul ditetapkan secara manual (tidak kosong).

Masalahnya adalah ketika saya mengunggah foto baru (ke galeri), WordPress secara default mengatur judul menjadi nama file. Bagaimana saya bisa menonaktifkannya dan memaksa WordPress untuk menggunakan string kosong sebagai judul gambar default ?

PolGraphic
sumber
periksa tautan ini: wordpress.stackexchange.com/questions/6135/…
Erez Lieberman
@ErezLieberman bukan tentang menghapus judul yang ada? Saya tidak ingin menghapus judul yang ditetapkan oleh administrator. Saya hanya ingin mencegah WordPress menambahkan default ketika Anda mengunggah gambar.
PolGraphic

Jawaban:

5

Anda dapat mencoba yang berikut ini untuk menghapus judul lampiran gambar saat dimasukkan tetapi tidak diperbarui :

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

Di sini kita menggunakan wp_insert_attachment_datafilter untuk mengganti judul lampiran jika lampiran itu IDkosong dan tipe pantomim adalah tipe gambar menurut wp_match_mime_types(). Pemeriksaan sederhana 'image' === substr( $postarr['post_mime_type'], 0, 5 )mungkin berhasil juga. Anda bahkan dapat menargetkan jenis pantomim tertentu image/jpeg.

birgire
sumber
... kata pria dengan wajah seputih hantu ;-)
Pieter Goosen
1
The Phantom of the WoPera ;-) @PieterGoosen
birgire