web-dev-qa-db-fra.com

Modification du champ "Objet" par défaut pour les courriers de vérification dans Laravel 5.7

J'essaie de modifier le champ par défaut subject dans le courrier électronique de vérification fourni avec Laravel 5.7. Comment et où puis-je le changer? J'ai cherché partout par moi-même et en ligne. Parce que c'est tout nouveau, je ne peux pas trouver de réponse. Pouvez-vous m'aider s'il vous plaît? Merci!

5
GabMic

Vous n'avez pas besoin de coder quoi que ce soit. La notification contient toutes les chaînes incluses dans la classe Lang afin que vous puissiez fournir des chaînes de traduction de l'anglais vers une autre langue, voire de l'anglais vers l'anglais si vous souhaitez simplement modifier le libellé.

Regardez dans /vendor/laravel/framework/src/Illuminate/Auth/Notifications/VerifyEmail.php

public function toMail($notifiable)
{
    if (static::$toMailCallback) {
        return call_user_func(static::$toMailCallback, $notifiable);
    }

    return (new MailMessage)
        ->subject(Lang::getFromJson('Verify Email Address'))
        ->line(Lang::getFromJson('Please click the button below to verify your email address.'))
        ->action(
            Lang::getFromJson('Verify Email Address'),
            $this->verificationUrl($notifiable)
        )
        ->line(Lang::getFromJson('If you did not create an account, no further action is required.'));
}

Vous pouvez voir toutes les chaînes ici.

Créez un fichier en.json si vous n'en avez pas déjà dans le dossier resources/lang.

ajoutez la chaîne d'origine et le remplacement . par exemple

{
    "Verify Email Address": "My preferred subject",
    "Please click the button below to verify your email address.":"Another translation"
}

Pour traduire dans une autre langue, modifiez les paramètres régionaux dans config/app.php et créez un fichier de traduction avec le fichier local.json.

5
Snapey

Pouvez-vous poster votre fonction là où vous postez? J'utilise:

\Mail::to($user)->subject('Your Subject')->bcc([$reports,$me])->send(new Declined($user));

C’est-à-dire envoyer un courrier à l’utilisateur $, définir le sujet, copier en aveugle, puis envoyer le courrier en passant l’utilisateur. Ceci est pour le courrier de démarque également. Vous utilisez l'opérateur -> pour ajouter tous les extras au courrier. Vous pouvez donc ajouter BCC (comme je l'ai fait), ainsi que CC, etc.

0
party-ring