Where ‘filter_function_name’ is the function WordPress should call when an attachment is being saved.
Note that the filter function must return the $post array after it is finished processing.
NOTE: per ticket #30687, any validation errors passed in via $post['errors'] array are silently unset and the attachment is processed without notifying the user
function wpdocs_insert_custom_default_caption( $post ) {
if ( 'image' === substr( $post['post_mime_type'], 0, 5 ) ) {
if ( 0 === strlen( trim( $post['post_title'] ) ) ) {
$post['post_title'] = preg_replace( '/\.\w+$/', '', basename( $post['guid'] ) );
$post['errors']['post_title']['errors'][] = __( 'Empty Title filled from filename.' );
}
// captions are saved as the post_excerpt, so we check for it before overwriting
// if no captions were provided by the user, we fill it with our default
if ( 0 === strlen( trim( $post['post_excerpt'] ) ) ) {
$post['post_excerpt'] = 'default caption';
}
}
return $post;
}
add_filter( 'attachment_fields_to_save', 'wpdocs_insert_custom_default_caption' );
(From Codex)
To insert a default caption for images:
function insert_custom_default_caption($post, $attachment) {
if ( substr($post['post_mime_type'], 0, 5) == 'image' ) {
if ( strlen(trim($post['post_title'])) == 0 ) {
$post['post_title'] = preg_replace('/\.\w+$/', '', basename($post['guid']));
$post['errors']['post_title']['errors'][] = __('Empty Title filled from filename.');
}
// captions are saved as the post_excerpt, so we check for it before overwriting
// if no captions were provided by the user, we fill it with our default
if ( strlen(trim($post['post_excerpt'])) == 0 ) {
$post['post_excerpt'] = 'default caption';
}
}
return $post;
}
add_filter('attachment_fields_to_save', 'insert_custom_default_caption', 10, 2);
You must log in before being able to contribute a note or feedback.
To insert a default caption for images:
(From Codex)
To insert a default caption for images: