5

I'm looking to customize the "There is a new version of XYZ available." text on the Plugins list page. I know the code is in wp-admin/includes/update.php, however I'm not certain how to call this out or pull it out in a filter/callback. Basically, I want to be able to customize this message in a plugin. Thanks for any help or direction!

2

2 Answers 2

4

Since the text is processed by _() function, then, of course, you can modify it using gettext filter.

function change_update_notification_msg( $translated_text, $untranslated_text, $domain ) 
{

    if ( is_admin() ) {
        $texts = array(
            'There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a>.' => 'My custom notification. There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a>.',
            'There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a>. <em>Automatic update is unavailable for this theme.</em>' => 'My custom notification. There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a>. <em>Automatic update is unavailable for this theme.</em>',
            'There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a> or <a href="%5$s" %6$s>update now</a>.' => 'My custom notification. There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a> or <a href="%5$s" %6$s>update now</a>.'
        );

        if ( array_key_exists( $untranslated_text, $texts ) ) {
            return $texts[$untranslated_text];
        }
    }

    return $translated_text;
}
add_filter( 'gettext', 'change_update_notification_msg', 20, 3 );
0
0

This text can't be filtered afaik. You can append text though: https://developer.wordpress.org/reference/hooks/in_plugin_update_message-file/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.