E-mail d'alerte en cas de modification d'une publication ou d'une page


10

Existe-t-il un moyen pour que Wordpress m'envoie un e-mail chaque fois qu'une page ou un article est publié?

Réponses:


18

Il existe 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 informer que vous lorsqu'un poste ou la page est publiée:

/**
 * 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 le déposer dans votre thème functions.php, soit l'enregistrer en tant que plugin (ce qui pourrait être plus approprié, car il n'est pas exactement lié au thème).


3

sha - il répond à la question en faisant savoir 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 ( Notifier l'administrateur lorsque la page est modifiée? ) Fonctionne sur le serveur où la solution publiée ci-dessus ne fonctionne pas. Pour citer le fil avec la solution qui fonctionne mieux dans les deux contextes, j'ai essayé:

Le script original du wpcodex fonctionne très 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 ); 
   } 
} 


-1

Il existe un plugin très flexible appelé " Post Status Notifier " disponible dans le répertoire des plugins WordPress.

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

Fonctionne parfaitement pour moi!


les recommandations de plugins sont hors sujet. Et recommander un plugin sans afficher les lignes pertinentes qui résolvent la question est considéré comme de faible qualité. Si le plugin a disparu, la réponse est sans valeur et le site souffre de pourriture des liens.
kaiser

-1

Si vous ne voulez pas pirater le fichier de fonctions de votre thème, utilisez un plugin comme celui-ci. Il envoie des notifications à l'administrateur lorsque le contributeur soumet un post pour examen, et une notification par e-mail au contributeur lorsque le post est publié.

https://wordpress.org/plugins/wpsite-post-status-notifications/


2
Les réponses devraient être plus que de simples liens . Ils devraient en fait être une réponse plutôt qu'un itinéraire où quelqu'un trouvera peut - être une réponse. Aidez-nous à prévenir la pourriture des liens, modifiez votre réponse et fournissez les informations nécessaires qui aideront le PO ainsi que les visiteurs ultérieurs à résoudre leur problème.
kaiser

Je pense que vous avez un peu déformé cela. Vous ne pirateriez jamais le fichier de fonctions. Il est là pour apporter des modifications et implémenter des hooks.
Mike
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.