Even if is not very flexible filter you can use the gettex hook.
Only be aware that this filter runs for every string being translated, so can affect performarce if over-used.
To narrow the performance impact you can add it only of admin footer, and remove it just after had use it:
add_action('admin_footer', function() {
add_filter( 'gettext', 'change_caption_text', 99, 3 );
}, 9 );
function change_caption_text( $trans = NULL, $untrans = NULL, $domain = NULL ) {
if ( $untrans === 'Caption' && $domain === 'default' ) {
remove_filter( current_filter(), __FUNCTION__ );
$trans = __( ':-)', 'your-domain' );
}
return $trans;
}
Result:

Related Posts:
- Filter Media by attached page or blog post in Library
- How to add custom media library mime icons?
- How many filter/action hooks are healthy?
- Filter specific shortcode output?
- Earliest hook to reliably get $post/$posts
- Where to hook into post content?
- What does (10, 2) mean when used with add_filter
- Clarification on filters and hooks
- Valid characters for actions, hooks and filters
- How to hook into unregistering a widget instance?
- How to check if a hook is hooked or not?
- Passing Additional Parameters to add_filter Callable
- What hook do I use to edit the post statuses option in admin?
- How can I add an Author filter to the Media Library?
- Modify WordPress Rest Api Request/Response
- How to add some custom HTML into wordpress admin bar?
- Custom theme hooks / filters – passing arguments
- How to disable all WordPress emails modularly and programatically?
- How to hook wp_list_pages?
- How to use the_excerpt in a filter hook?
- How to change Woocommerce breadcrumbs content?
- Hook into admin post list page
- Load different template file when condition met?
- Am I using the right hook for removing quicktags on the admin TinyMCE?
- About Hooks and Filters
- How to enable visual editor when editing comments on the dashboard?
- Should I use add_action(‘publish_post or add_filter(‘publish_post?
- Please explain me what the do_action does
- Filter all html output
- Can’t get wp_title filter working in twenty sixteen child theme
- Removing labels and tag on WordPress’s default login form
- How to trigger the core WPLANG to make automatically set a language when the theme is activated? [duplicate]
- Too many actions/filters!
- How to get list of all hooks of current theme / plugin?
- Which hook is fired when inserting media into a post
- WordPress tag cloud add more links
- Why anything done on comments_array hook gets reset?
- add_filter() function misunderstanding
- Is it possible to track down Actions and Filters?
- Yoast SEO hooks overriding themselves
- add filter login_redirect does not contain original requested redirect
- get_header and hook avoid normal call
- Question about how do wordpress filters/actions work
- How to center oEmbedded content
- How to add numeric slug for child page in WordPress 5.9?
- Can the wp_filter object hold multiple values with the same key
- apply_filters/do_action tag characters limit
- Filter taxonomy admin pagination
- How to modify core when there is no hook?
- WP action/filter to modify title before header output and article output?
- How add a group by to the query used by the media library?
- Using wp_handle_upload() to Direct Specific Path by Using $overrides
- Post Content, Special Characters and Filters
- How to filter for user registration, be able to throw error message
- Gutenberg – Add align controls to a custom block
- How to remove action with slashes and arrows?
- Better extend a class or use add filter/action hooks?
- Add default user field to WooCommerce checkout [closed]
- Changing WordPress core without hacking core
- Customize title, description and focused keyword [closed]
- Plugin options, presets and filters : can you help me improve my workflow?
- how to customize rss feed tags using hooks?
- Filtering the post list in the admin area
- Add custom text in the media library image meta area
- How can I replace an oEmbed URL in post with actual embed HTML
- Detect when gutenberg editor title is available in Dom after editor load
- Is it possible to bind a function to a filter hook via Ajax?
- How do I hook my function to run only after submitting login form
- Prepending character(s) to a custom tag title?
- Possible to hook into Media Library preview File column and use a custom image?
- Modify existing plugin function with add_filter
- Create a pre-filtered version of the Media Library
- Remove tags without a specific meta key from “choose from the most used tags”
- What is the action hook to use if you want to capture the new password during password change?
- How can I edit comment meta value before it is saved?
- an action hook when a post reaches a certain number of views
- Filter causing loss of _wp_attachment_metadata
- Action hook to control access to certain parts of my site
- Need to return shortcode text instead of the output
- Where exactly does the edit_{taxonomy} hook fire?
- Is there any reason for the nested filters to be applied on the first case and not in the second one?
- Replace Data In Post & Update Meta Field Post Is Saved
- Add filter return false not working
- Security question – Display a General Custom Login Error Message
- Filter wp_mail based on content type
- Add HTML to the bottom of each post in a post list
- get_the_archive_title hook unwanted changes!
- Hook inside a hook
- Incrementing content with extra text after save/publish
- WP Dashboard -> Posts-> Filter by Category -> Form Method Change : Which Hook
- Hide H1 Title using the_title filter
- Add class to all parent elements inside the_content
- Filter dashboard custom post listing by user
- Admin New Order: Autofocus on Search a product
- How to filter part of a variable if it is no array?
- Hooking/Filtering theme name to add theme directory
- Passing value from one hook to another
- Is there a way to override only a portion of the function print_media_templates defined in wp-includes\media-template.php?
- How to add custom field to top of WordPress Comment Form for both logged in and anon users
- Why is the change in my query not taking into account