更改任何帖子或页面时发出警报电子邮件


11

每当发布页面或帖子时,有没有办法让Wordpress向我发送电子邮件?

Answers:


19

一些处理电子邮件通知的插件,但它们似乎都对(所有)WordPress用户起着订阅服务的作用。

在发布帖子或页面时仅通知

/**
 * 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 );

您可以将其放置在主题的中functions.php,也可以将其另存为插件(可能更合适,因为它与主题无关)。


3

sha-通过贡献知识,即发布的解决方案并非在所有情况下都有效,来回答该问题。

24小时后,我可以更新我贡献的知识。此位置的解决方案(编辑页面时通知管理员吗?)在上面发布的解决方案不起作用的服务器上工作。为了从线程中引用在两种情况下效果更好的解决方案,我尝试了以下方法:

wpcodex中的原始脚本可以正常工作:

 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

WordPress插件目录中有一个非常灵活的插件,称为“ Post Status Notifier ”。

您可以定义自己的规则,何时发送通知。您可以在状态之前和之后选择收件人,抄送,密件抄送。您可以完全自定义正文文本和主题(带有占位符)。

非常适合我!


插件建议不在主题之列。推荐插件而不显示解决问题的相关内容被认为是低质量的。如果该插件不见了,答案将一文不值,该站点将遭受链接腐烂的困扰。
kaiser 2014年

-1

如果您不想破解您主题的功能文件,请使用这样的插件。当投稿人提交帖子进行审阅时,它将向管理员发送通知,并在发布该帖子时向投稿人发送电子邮件通知。

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


2
答案不应该只是简单的链接。他们实际上应该是一个答案,而不是某个人可能会找到答案的路线。请帮助防止链接腐烂,编辑您的答案,并提供必要的信息,以帮助OP和以后的访客解决他们的问题。
kaiser 2014年

我想你已经有点遗漏了。您将永远不会“破解”功能文件。它在那里进行更改和实现挂钩。
迈克
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.