Drupal 7에서 블로그를 업데이트 할 때마다 사용자가 전자 메일을 받도록하려면 어떻게해야합니까?


11

Drupal 7에 영어와 일본어로 된 블로그가 있습니다. 기본 제공 블로그 모듈이 아닌 사용자 정의 컨텐츠 유형 및보기를 사용하여이 블로그를 작성했습니다.

각 언어에 대한 RSS 피드 (보기로 작성)가 있습니다. 사용자가 컨텐츠 유형 "blog"에 대한 모든 영어 업데이트 또는 컨텐츠 유형 "blog"에 대한 모든 일본어 업데이트를 받도록 구독하고 싶습니다. (대부분의 사용자는 하나의 언어 만 원할 것으로 예상합니다. 사용자가 실제로 두 언어를 모두 원한다면 두 번 구독하지 않아도됩니다.)

RSS 피드에서 Feedburner를 사용하려고했지만 Feedburner 모듈이 D7 용으로 업데이트되지 않았으므로 외부 서비스에 의존하지 않습니다. (모듈없이 Feedburner를 설정하려고 할 때 지원 링크를 통해 RSS의 유효성을 검사 할 수 있어도 RSS 피드가 존재하지 않는다고 알려줍니다.)

또한 Simplenews 모듈을 살펴 보았지만 해당 모듈은 각 뉴스 레터 게시물을 별도로 작성해야합니다. 내가 원하는 것은 블로그에 업데이트를 게시 할 때 구독 한 사용자에게 자동으로 전자 메일을 보내는 것입니다.

이 작업을 수행 할 수있는 방법은 많이 있지만, "메일 도우미"형식의 모듈이 너무 많아서 어디서부터 시작해야할지 모르겠습니다.

요구 사항을 요약하기 위해 다음을 수행하려고합니다.

  • 해당 언어의 새 블로그 게시물이 추가되면 구독자에게 자동으로 전자 메일을 보냅니다.
  • 인증 된 사용자와 익명의 사용자 모두 가입 할 수 있어야합니다.
  • 구독에는 확인이 필요합니다 (법적 요구 사항).
  • MIME 메일 모듈 과의 호환성 은 좋은 보너스입니다.

답변:


1

다른 대안은 Google Feedburner를 사용하여 귀하 대신 이메일을 보내는 것입니다.

자세한 내용은 온라인 설명서 를 참조하십시오.

Google feedburner가 피드를 '굽고'나면 가입 양식에 대한 포함 코드를 받아 사용자가 이메일 알림을받을 수 있습니다. 이것이 귀하의 요구에 잘 맞는 이유는 양질의 RSS 피드 소스를 보유하고 있으며 Views가이를 생성 할 수 있기 때문입니다. 유일한 실제 질문은 RSS (및 전자 메일)에만 전체 콘텐츠 또는 티저를 원하는지 여부입니다.

위의 뉴스 레터 / 트리거 옵션에 비해 다른 장점은 매일 다이제스트 만 전송하므로 구운 RSS 피드마다 하루에 최대 1 개의 이메일이 전송된다는 것입니다. 이렇게하면 활동적인 날이있을 때 충성도가 높은 가입자에게 스팸을 보내는 것을 방지 할 수 있습니다.

Google 피드 버너 기능에는 다음이 포함됩니다 (위의 문서에서 곧바로).

구독 관리

  • 목록을보고 정렬
  • 개별 이메일 주소 활성화, 비활성화 및 삭제
  • 목록을 Excel 또는 CSV 형식으로 내보내기
  • 사람들이 구독을 취소 할 때 선택적인 이메일 수신

통신 환경 설정

  • 구독자가 이메일로 피드를 수신하도록 선택한 후 구독자에게 발송되는 이메일의 제목 및 본문을 사용자 정의하십시오. 이메일을 현지화하려는 경우 유용 할 수 있습니다.
  • 중요 사항 : 이메일은 문자로만되어 있으며 구독을 활성화하려면 원본 $ {confirmlink} 참조가 확인 이메일에 포함되어 있어야합니다.

이메일 브랜딩

  • 구독자에게 전송되는 전자 메일의 제목과 제목을 사용자 정의합니다
  • HTML 이메일 메시지 상단에 나타나는 사용자 정의 로고 추가
  • 본문 및 제목 텍스트 글꼴, 크기 및 색상 및 링크 색상 변경

배송 옵션

  • 시간대를 선택하십시오
  • 매일 다이제스트를 보낼 2 시간 분량의 배송 기간을 선택하십시오.

이 설정 방법에 대한 예제 자습서는 여기를 참조하십시오 .


Feedburner를 제안 해 주셔서 감사하지만 원래 질문에서 언급했듯이 피드를 확인할 수 있다는 사실에도 불구하고 피드를 레코딩하지 않았습니다. 정확한 오류는 "소스 피드를 가져 오는 동안 수신 된 HTTP 오류 코드 400"입니다. 그러나 오류 페이지에서 "이 피드 확인"링크를 클릭하면 피드가 유효하다는 메시지가 표시됩니다. 불행히도 Feedburner에는 지원 옵션이 없습니다.
— Patrick Kenny

동일한 오류가 발생했습니다. 문제는 Google feedburner가 SSL을 지원하지 않는다는 것입니다. 쉬운 해결책은 피드에 대한 HTTP 액세스를 허용하는 것입니다.
— wiifm

1
피드에 HTTP 액세스를 허용하는 것이 옵션이 아닌 경우 최근 프로젝트에서 실제로 Google 리더를 통해 RSS 피드를 프록시 한 다음 Google 피드 버너로 프록시 처리했습니다 (지저분하지만 작동합니다). 이 과정에서 여기 피드 예이다 feeds.feedburner.com/TranspowerNewsFeed는 - 전체 사이트로 transpower.co.nz가 HTTPS 하에서 고정
— WIIFM

이 뉴스는 현상금을 수여합니다. Simplenews를 사용하는 것보다 Feederer에서 Google 리더를 통해 SSL 리디렉션을 수행해야하는 경우가 훨씬 쉬웠 기 때문입니다.
— Patrick Kenny

5

이것은 쉽게 얻을 수 있습니다. 따라야 할 몇 가지 단계를 알려 드리겠습니다.

실제로 그것을 달성하기 위해 적어도 두 가지 방법이 있습니다

A. 트리거 사용 (코어 모듈)

  1. 먼저 핵심 모듈 트리거를 활성화하십시오. 이는 기본 트리거 (경우에 따라 UPDATE 트리거) 및 조건이 충족 될 때 실행할 조치를 제공합니다.

  2. 관리> 구성> 조치로 이동 한 다음 고급 조치 작성으로 이동 한 후 이메일 발송을 선택하십시오. 수신자 필드에서 등록 된 모든 사용자와 일치하도록 simplenews 모듈이 제공하는 적절한 토큰을 선택해야합니다. (토큰 모듈도 설치되어 있는지 확인하십시오)

  3. 관리> 구조> 트리거로 이동 한 다음 노드 탭으로 이동하십시오. 세 번째 : 트리거 : 업데이트 된 콘텐츠 저장 후를 선택하십시오.

더 많은 제어가 필요한 경우 후크를 구현하십시오.

YOURMODULE_trigger_info_alter (& $ triggers) {// dpm ($ triggers) 여기서 업데이트 트리거가 어디에 있는지 확인하고 변경을 수행합니다. }?>

B. 규칙 (contrib 모듈) 사용 기본 사항도 동일합니다. 문제가 발생하면이 블로그의 비슷한 문제에서 다음 단계를 따르십시오. http://adellefrank.com/blog/how-to-email-notifications-comments-drupal7


1
'TRIGGER : AFTER SAVING NEW CONTENT'는 게시물 작성시 단일 이메일을 보내며, 'TRIGGER : AFTER SAVING UPDATED CONTENT'는 게시물이 업데이트되면 새 이메일을 보냅니다.
— Citricguy

1
규칙을 사용하는 경우 Simplenews 모듈에서 제공하는 "이메일 뉴스 레터 보내기"조치 대신 "이메일 보내기"조치를 사용해야하는 이유는 무엇입니까?
— Patrick Kenny

5

Simplenews 모듈은 필요한 모든 것을 수행합니다. 각 블로그 게시물이 자동으로 뉴스 레터가되어 구독자에게 보내지도록 구성 할 수 있습니다. Simplenews 구성에서 컨텐츠 유형 블로그를 뉴스 레터 소스로 선택하십시오.

이것을 만들려면 :

  1. 블로그 컨텐츠 유형의 개방 구성 양식 (/ admin / structure / types / manage / blog)
  2. "게시 옵션"탭에서 "Simplenews 뉴스 레터로 사용"을 확인하십시오.

Simplenews 구성에서 "뉴스 레터 소스"옵션은 어디에 있습니까? 나는 모든 메뉴를 겪은 것 같아서 그와 비슷한 것을 찾지 못했습니다 ...
— Patrick Kenny

위의 업데이트 된 답변을 참조하십시오.
— 유진 피델 린

1

프로그래밍 방식으로 수행하려면 drupal_mail ($ module, $ key, $ to, $ language, $ params = array (), $ from = NULL, $ send = TRUE)을 참조하십시오 .

노드가 업데이트되면 hook hook_node_update ($ node) 가 시작됩니다. 자체 작성 메일 형식을 작성하려면 hook_mail ($ key, & $ message, $ params)를 사용하십시오 . 따라서 먼저 hook_node_update 및 hook_mail에 2 개의 후크를 작성해야합니다. hook_node_update 안에 hook_mail을 호출 할 drupal_mail 함수를 작성해야합니다.


0

당신은 내 샌드 박스 모듈을 사용할 수있는 총 구독

이 모듈은 드루팔 프로젝트 큐에 있습니다. 여기 링크가 있습니다 : -LINK

필요한 기능을 제공 할 것이라고 생각합니다.


1
이 모듈이 어떻게 사용자의 문제를 해결하는지에 대해 조금 확장 해 주시겠습니까?
— mpdonadio
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.