<html lang="pt-pt" dir="ltr"><head></head><body>### [Como reenviar automaticamente e-mails de link de ativação de utilizador](https://wpforms.com/developers/how-to-automatically-resend-user-activation-link-emails/)

**Publicado:** 21 de dezembro de 2021
**Autor:** Equipa Editorial

**Resumo:** Este trecho mostrar-lhe-á como adicionar um trecho para reenviar automaticamente links de ativação de utilizador se o utilizador ainda não ativou a sua conta. 

**Conteúdo:**

## Visão Geral

Gostaria de reenviar automaticamente e-mails de ativação de utilizador se os utilizadores ainda não ativaram as suas contas? Mostrar-lhe-emos como fazer isto com PHP. Com o [add-on WPForms User Registration](https://wpforms.com/docs/how-to-install-and-use-user-registration-addon-with-wpforms/ "Como instalar e configurar o add-on de registo de utilizador no WPForms"), pode ativar o formulário de registo para que os e-mails de ativação de utilizador sejam enviados. Usando um pequeno trecho, pode facilmente configurar uma função que reenvia os links de ativação para estes utilizadores, basta configurar a função e é tudo o que tem de fazer.

## Configuração

Primeiro, terá de configurar o seu formulário e ativar a ativação do utilizador no separador Registo de Utilizador. Se precisar de ajuda para configurar isto, [consulte esta documentação](https://wpforms.com/docs/how-to-install-and-use-user-registration-addon-with-wpforms/ "Como instalar e configurar o add-on de registo de utilizador no WPForms").

![ativar a configuração de ativação de utilizador a partir do separador Registo de Utilizador das configurações do formulário.](https://wpforms.com/wp-content/uploads/2021/12/wpforms-user-activation.jpg)

Depois de ter configurado o seu formulário e adicionado os seus campos, clique no separador **Registo de Utilizador** em **Configurações** do formulário. Em seguida, clique na opção para **Ativar ativação de utilizador**.

Em seguida, adicione este trecho ao seu site. Se precisar de alguma assistência sobre como adicionar trechos ao seu site, [consulte este tutorial](https://wpforms.com/developers/how-to-add-custom-php-or-javascript-for-wpforms/ "Como adicionar PHP ou JavaScript personalizado para WPForms").

```

/**
 * Obter os utilizadores que se registaram mas não ativaram a sua conta
 *
 * @link   https://wpforms.com/developers/how-to-automatically-resend-user-activation-link-emails/
 */

function user_registration_resend_activation() {

   $unapproved_users = get_users(
      [
         'meta_key'   =&gt; 'wpforms-pending',
         'meta_value' =&gt; true,
      ]
   );

   foreach ( $unapproved_users as $user ) {

      \WPFormsUserRegistration\SmartTags\Helpers\Helper::set_user( $user );

      wpforms_user_registration()-&gt;get( 'email_notifications' )-&gt;resend_activation( $user-&gt;ID );
   }
}

add_action( 'user_registration_resend_activation_action', 'user_registration_resend_activation', 10 );

/**
 * Reenviar automaticamente quaisquer e-mails para utilizadores que não ativaram a sua conta
 *
 * @link   https://wpforms.com/developers/how-to-automatically-resend-user-activation-link-emails/
 */

function user_registration_resend_activation_as_task() {

   if ( ! function_exists( 'as_schedule_recurring_action' ) ) {
      return null;
   }

   if ( as_next_scheduled_action( 'user_registration_resend_activation_action' ) ) {
      return null;
   }

   as_schedule_recurring_action( strtotime( 'midnight tonight' ), WEEK_IN_SECONDS, 'user_registration_resend_activation_action' );
}

add_action( 'admin_init', 'user_registration_resend_activation_as_task', 10 );
```

Qualquer utilizador que se tenha registado através do seu formulário mas ainda não tenha ativado a sua conta recebe um estado de **wpforms-pending**, pelo que a primeira função procurará esse estado para obter essas contas de utilizador e a segunda função reenviará automaticamente os e-mails usando **WEEK\_IN\_SECONDS** como tempo agendado.

O **WEEK\_IN\_SECONDS** é uma constante do WordPress que pode usar para verificar semanalmente esta tarefa. Se desejar alterá-la para em breve (ou mesmo mais tarde), pode alterar esta parte da função para qualquer uma das seguintes opções.

- MINUTE\_IN\_SECONDS
- HOUR\_IN\_SECONDS
- DAY\_IN\_SECONDS
- MONTH\_IN\_SECONDS
- YEAR\_IN\_SECONDS

Para mais informações sobre as constantes que o WordPress fornece para períodos de tempo, [consulte a sua própria documentação](https://codex.wordpress.org/Easier_Expression_of_Time_Constants "Constantes de Expressão de Tempo Mais Fáceis do WordPress").

E é tudo o que precisa! Gostaria de criar algumas Smart Tags de utilizador para usar noutros formulários? Consulte o nosso tutorial sobre [Como Criar Mais Smart Tags de Utilizador](https://wpforms.com/developers/how-to-create-more-user-smart-tags/ "Como Criar Mais Smart Tags de Utilizador").

**Categorias:** Trechos

**Etiquetas:** PHP, Add-on de Registo de Utilizador

---</body></html>