Hi, I haven’t tried the following code but is should work…
- First, you have to create the mailing lists in dashboard:
go in Newsletters → Settings → tab Mailing lists and create the mailing lists, one for role, with availability Admin side only: write down the list IDs
- then, create a php file in wp-content/mu-plugins folder and paste the following code: of course, you have to adjust the list IDs according to your real lists:
(In Italian):
Ciao, non ho provato il codice ma dovrebbe funzionare…
- Primo, devi creare le liste nella dashboard: in Newsletters → Impostazioni → tab Mailing lists e crea le liste, una per ogni ruolo, con visibilità Solo parte amministrativa: prendi nota degli ID delle liste
- poi, crea un file php nella cartella wp-content/mu-plugins e incola il seguente codice: ovviamente devi inserire gli ID delle liste:
function custom_easymail_list_by_role( $subscriber, $user_id = false ) {
if ( $user_id ) {
$user = get_userdata( $user_id );
switch ( $user->roles[0] ) {
case 'administrator':
$list_id = 1; // <-
break;
case 'editor':
$list_id = 2; // <-
break;
case 'author':
$list_id = 3; // <-
break;
case 'contributor':
$list_id = 4; // <-
break;
default:
case 'subscriber':
$list_id = 5; // <-
}
alo_em_add_subscriber_to_list( $subscriber->ID, $list_id );
}
}
add_action( "alo_easymail_new_subscriber_added", "custom_easymail_list_by_role", 10, 2 );
Grazie mille della pronta risposta, il file dentro wp-content/mu-plugins deve avere un nome specifico?
Ciao, no, un qualsiasi nome purché .php
OK! Funziona egregiamente! Ti ringrazio un sacco.
Un’ultima cosa.. Sono ancora nuovo in quanto action hooks..
Quando richiami l’hook “alo_easymail_new_subscriber_added”,
dove “vive”? nel senso: esiste da qualche parte una linea di codice che
lo crea? Sto studiando per creare i miei custom hook ma non ho ancora capito bene..
Ringraziando ancora.. dew
Esatto, nel codice c’è un do_action('alo_easymail_new_subscriber_added', ...)
che esegue tutti gli add_action( 'alo_easymail_new_subscriber_added', ... )
collegati.