Customize plugin update “new version is available” text

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="https://wordpress.stackexchange.com/questions/323927/%2$s" %3$s>View version %4$s details</a>.' => 'My custom notification. There is a new version of %1$s available. <a href="https://wordpress.stackexchange.com/questions/323927/%2$s" %3$s>View version %4$s details</a>.',
            'There is a new version of %1$s available. <a href="https://wordpress.stackexchange.com/questions/323927/%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="https://wordpress.stackexchange.com/questions/323927/%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="https://wordpress.stackexchange.com/questions/323927/%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="https://wordpress.stackexchange.com/questions/323927/%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 );

Leave a Comment