Try this one-
add_filter('login_redirect', function($to, $request, $user)
{
if ( wp_is_mobile() && $request == null ) {
return home_url().'/mobile-news';
}
return $to;
}, PHP_INT_MAX, 3);
Not tested, but should work.
Note: using a URL like this one home_url().'/mobile-news'
is not a good idea, I think.
Use get_permalink( $post_id )
instead. Where $post_id
is the ID of home_url().'/mobile-news'
page. Because, if the slug of that page somehow got changed, visitors will see a 404 page!