2 votes

La pièce jointe n'est pas envoyée lors de l'utilisation de Cron

L'Email Attachment est envoyé correctement lorsque j'appelle ma fonction en visitant l'url que j'ai défini avec le menu hook.

EX :Lorsque je visite /admin/config/send le hook_menu appellera la méthode main() et enverra l'email avec la pièce jointe.

Mais lorsque j'appelle la même fonction main() à l'intérieur de hook_cron(), le mail est envoyé (le corps et le message sont définis) mais pas la pièce jointe :

function hook_cron(){
    main();
}

0voto

koivo Points 448

Il semble que vous deviez vous assurer que le cron est exécuté avec un utilisateur authentifié/administré.

Dans Drupal 8, cela ressemblerait à ce qui suit ( fuente ).

use Drupal\user\Entity\User;

/**
 * Implements hook_cron().
 */
function my_module_cron() {
  // Login as user 1
  $user = User::load(1);
  user_login_finalize($user);

  // Your custom cron functions

  // Login as user 0 (anonymous)
  $user = User::load(0);
  user_login_finalize($user);
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X