게시물이나 페이지가 변경되면 이메일 알림


11

페이지 나 게시물이 게시 될 때마다 Wordpress로 전자 메일을 보내는 방법이 있습니까?

답변:


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

-1

테마의 기능 파일을 해킹하지 않으려면이 플러그인과 같은 플러그인을 사용하십시오. 기고자가 검토를 위해 게시물을 제출하면 관리자에게 알림을 보내고 게시물이 게시되면 기고자에게 이메일 알림을 보냅니다.

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


2
답은 단순한 링크 이상이어야합니다 . 실제로 누군가가 답을 찾을 수 있는 경로 대신 답이되어야합니다 . 링크 부패를 방지하고, 답변을 편집 하며, OP 및 이후 방문자가 문제를 해결하는 데 도움이되는 필요한 정보를 제공하십시오.
카이저

나는 당신이 그것을 조금 놓친 것 같아요. 함수 파일을 "해킹"하지 않습니다. 변경하고 후크를 구현해야합니다.
Mike
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.