Email d'alerte quand une publication ou une page est modifiée

10

Existe-t-il un moyen pour que Wordpress m'envoie un courrier électronique chaque fois qu'une page ou un message est publié?

    
posée GavinR 02.06.2011 - 15:09

5 réponses

18

Il existe un quelques plugins qui gèrent les notifications par e-mail , mais ils semblent tous agir comme un service d'abonnement pour (tous) les utilisateurs de WordPress.

Pour ne vous informer que vous la publication d'un message ou d'une page:

/**
 * Send an email notification to the administrator when a post is published.
 * 
 * @param   string  $new_status
 * @param   string  $old_status
 * @param   object  $post
 */
function wpse_19040_notify_admin_on_publish( $new_status, $old_status, $post ) {
    if ( $new_status !== 'publish' || $old_status === 'publish' )
        return;
    if ( ! $post_type = get_post_type_object( $post->post_type ) )
        return;

    // Recipient, in this case the administrator email
    $emailto = get_option( 'admin_email' );

    // Email subject, "New {post_type_label}"
    $subject = 'New ' . $post_type->labels->singular_name;

    // Email body
    $message = 'View it: ' . get_permalink( $post->ID ) . "\nEdit it: " . get_edit_post_link( $post->ID );

    wp_mail( $emailto, $subject, $message );
}

add_action( 'transition_post_status', 'wpse_19040_notify_admin_on_publish', 10, 3 );

Vous pouvez soit déposer ceci dans le functions.php de votre thème, soit l'enregistrer en tant que plugin (ce qui pourrait être plus approprié, car ce n'est pas exactement lié au thème ".).

    
réponse donnée TheDeadMedic 02.06.2011 - 15:26
3

sha - il répond à la question en indiquant que la solution publiée ne fonctionne pas dans tous les cas.

Après 24 heures, je peux mettre à jour les connaissances que j'ai apportées. La solution à cet emplacement ( Avertir l'administrateur lorsque la page est modifiée? ) fonctionne sur le serveur où la solution indiquée ci-dessus ne fonctionne pas. Pour citer le fil avec la solution qui fonctionne mieux dans les deux contextes que j'ai essayés:

Le script d'origine de wpcodex fonctionne bien:

 add_action( 'save_post', 'my_project_updated_send_email' ); 
 function my_project_updated_send_email( $post_id ) { 
    //verify post is not a revision 
    if ( !wp_is_post_revision( $post_id ) ) { 
         $post_title = get_the_title( $post_id ); 
         $post_url = get_permalink( $post_id ); 
         $subject = 'A post has been updated'; 
         $message = "A post has been updated on your website:\n\n";
         $message .= "<a href='". $post_url. "'>" .$post_title. "</a>\n\n"; 
         //send email to admin 
         wp_mail( get_option( 'admin_email' ), $subject, $message ); 
   } 
} 
    
réponse donnée Doorwhey 12.04.2013 - 00:27
1

Bien sûr, vous aurez besoin d'utiliser le Transition post-statut approprié (s) et les points d'ancrage et wp_mail() .

    
réponse donnée Rarst 02.06.2011 - 15:21
-1

Il existe un plug-in très flexible appelé " post-statut notifier " disponible dans le répertoire du plugin WordPress. .

Vous pouvez définir vos propres règles lorsqu'une notification doit être envoyée. Vous pouvez choisir le destinataire, Cc, Cci, avant et après le statut. Et vous pouvez complètement personnaliser le corps du texte et le sujet (avec des espaces réservés).

Fonctionne parfaitement pour moi!

    
réponse donnée mikeST 10.02.2014 - 22:03
-1

Si vous ne voulez pas pirater le fichier de fonctions de votre thème, utilisez un plugin tel que celui-ci. Il envoie des notifications à l’administrateur lorsque le contributeur soumet une publication pour révision et une notification par e-mail au contributeur lorsque la publication est publiée.

enlace

    
réponse donnée CreativeDev 02.05.2014 - 23:00

Lire d'autres questions sur les étiquettes