Làm cách nào tôi có thể cho phép người dùng nhận e-mail mỗi khi tôi cập nhật blog của mình trong Drupal 7?


11

Tôi có một blog bằng tiếng Anh và tiếng Nhật ở Drupal 7. Tôi đã tạo blog này bằng cách sử dụng loại nội dung và Chế độ xem tùy chỉnh, không phải mô-đun blog tích hợp.

Tôi có một nguồn cấp RSS (được thực hiện trong Lượt xem) cho mỗi ngôn ngữ. Tôi muốn cho phép người dùng đăng ký nhận tất cả các cập nhật bằng tiếng Anh cho loại nội dung "blog" hoặc tất cả các cập nhật bằng tiếng Nhật cho loại nội dung "blog". (Tôi dự đoán hầu hết người dùng sẽ chỉ muốn một ngôn ngữ này hoặc ngôn ngữ kia. Nếu người dùng thực sự muốn cả hai ngôn ngữ, tôi không ngại làm cho họ đăng ký hai lần.)

Tôi đã xem xét việc sử dụng Feedburner trên các nguồn cấp RSS, nhưng mô-đun Feedburner chưa được cập nhật cho D7 và tôi không muốn dựa vào một dịch vụ bên ngoài. (Khi tôi thử thiết lập Feedburner mà không có mô-đun, nó cho tôi biết nguồn cấp RSS của tôi không tồn tại mặc dù liên kết hỗ trợ cho phép tôi xác thực nó.)

Tôi cũng đã xem Simplenews mô-đun , nhưng mô-đun đó rõ ràng yêu cầu tạo riêng từng bài đăng bản tin. Những gì tôi muốn làm là tự động gửi email cho người dùng đã đăng ký khi tôi đăng cập nhật lên blog.

Tôi chắc chắn có rất nhiều cách để làm điều này, nhưng có rất nhiều mô-đun "trình trợ giúp thư" mà tôi không biết phải bắt đầu từ đâu.

Để tóm tắt các yêu cầu của tôi, tôi muốn:

  • Tự động đăng ký e-mail khi một bài đăng blog mới bằng ngôn ngữ thích hợp được thêm vào.
  • Cả người dùng được xác thực và ẩn danh sẽ có thể đăng ký.
  • Đăng ký phải yêu cầu xác nhận (yêu cầu pháp lý).
  • Khả năng tương thích với mô-đun MIME Mail sẽ là một phần thưởng tuyệt vời.

Câu trả lời:


1

Một tùy chọn khác là sử dụng Google Feedburner để gửi email thay cho bạn.

Xem tài liệu trực tuyến để biết thêm thông tin.

Khi Google feedburner đã 'đốt' các nguồn cấp dữ liệu của bạn, bạn có thể nhận được mã nhúng cho biểu mẫu đăng ký để người dùng có thể nhận thông báo qua email. Lý do tại sao điều này phù hợp với nhu cầu của bạn rất tốt, là tất cả đều xoay quanh việc có một nguồn cấp RSS chất lượng và Views có khả năng tạo ra điều này. Câu hỏi thực sự duy nhất là liệu bạn muốn có nội dung đầy đủ hay một lời trêu ghẹo chỉ trong RSS (và do đó là email).

Một ưu điểm khác có các tùy chọn kích hoạt bản tin / kích hoạt ở trên là nó chỉ gửi thông báo hàng ngày, do đó, tối đa 1 email được gửi mỗi ngày cho mỗi nguồn cấp RSS được ghi. Điều này sẽ ngăn bạn spam những người đăng ký trung thành của bạn khi bạn có những ngày hoạt động.

Các tính năng của Google feedburner bao gồm (trực tiếp từ tài liệu trên):

Quản lý đăng ký

  • Xem và sắp xếp danh sách
  • Kích hoạt, hủy kích hoạt và xóa các địa chỉ email riêng lẻ
  • Xuất danh sách của bạn ở định dạng Excel hoặc CSV
  • Nhận email tùy chọn khi mọi người hủy đăng ký

Sở thích giao tiếp

  • Tùy chỉnh dòng tiêu đề và nội dung chính của email được gửi đến người đăng ký sau khi họ chọn tham gia nhận nguồn cấp dữ liệu của bạn qua email. Điều này có thể có ích nếu bạn muốn bản địa hóa email.
  • LƯU Ý QUAN TRỌNG: Email chỉ là văn bản và tham chiếu $ {Confirmlink} ban đầu phải được đưa vào email xác nhận của bạn để kích hoạt đăng ký.

Xây dựng thương hiệu email

  • Tùy chỉnh dòng tiêu đề và tiêu đề của email được gửi đến người đăng ký của bạn
  • Thêm logo tùy chỉnh xuất hiện ở đầu thư email HTML
  • Thay đổi phông chữ văn bản và tiêu đề, kích thước và màu sắc cũng như màu sắc của các liên kết

Tùy chọn giao hàng

  • Chọn múi giờ của bạn
  • Chọn một cửa sổ phân phối hai giờ trong đó thông báo hàng ngày của bạn sẽ được gửi

Ví dụ hướng dẫn về cách thiết lập này có thể được tìm thấy ở đây .


Cảm ơn vì đã gợi ý Feedburner, nhưng như đã lưu ý trong câu hỏi ban đầu, nó đã từ chối ghi các nguồn cấp dữ liệu của tôi mặc dù thực tế là nó có thể xác nhận chúng. Lỗi chính xác mà nó mang lại cho tôi là "Đã nhận được mã lỗi HTTP 400 trong khi tìm nạp nguồn cấp dữ liệu."; tuy nhiên, khi tôi nhấp vào liên kết "Xác thực nguồn cấp dữ liệu này" trên trang lỗi, nó sẽ cho tôi biết rằng nguồn cấp dữ liệu hợp lệ. Thật không may, Feedburner cũng không có tùy chọn hỗ trợ.
Patrick Kenny

Tôi cũng gặp lỗi tương tự, vấn đề của chúng tôi là Google feedburner không hỗ trợ SSL. Giải pháp dễ dàng là cho phép truy cập HTTP vào nguồn cấp dữ liệu.
wiifm

1
Nếu cho phép truy cập HTTP vào các nguồn cấp dữ liệu không phải là một tùy chọn, trong một dự án gần đây, chúng tôi thực sự đã ủy quyền nguồn cấp RSS thông qua trình đọc Google, sau đó vào Google feedburner (lộn xộn, nhưng nó hoạt động). Dưới đây là một nguồn cấp dữ liệu mẫu từ quy trình này feed.feedburner.com/TranspowerNewsFeed - vì toàn bộ trang web transpower.co.nz được bảo mật theo HTTPS
wiifm

Trao giải thưởng này cho tiền thưởng vì hóa ra việc tôi thiết lập Feedburner dễ dàng hơn nhiều, thậm chí phải thực hiện chuyển hướng SSL thông qua Google Reader, hơn là sử dụng Simplenews.
Patrick Kenny

5

Điều này có thể được mua dễ dàng. Tôi có thể cung cấp cho bạn một số bước để làm theo.

Thực tế có ít nhất 2 cách để đạt được điều đó

A. Sử dụng Triggers (mô-đun lõi)

  1. Đầu tiên kích hoạt mô-đun lõi Triggers. Điều này sẽ cung cấp cho bạn các kích hoạt cơ bản (trong trường hợp của bạn là kích hoạt CẬP NHẬT) và các hành động để chạy khi điều kiện được đáp ứng.

  2. Chuyển đến Quản trị viên> Cấu hình> Hành động sau đó TẠO MỘT HÀNH ĐỘNG NÂNG CAO, sau đó chọn: Gửi e-mail. Trong trường người nhận, bạn cần chọn mã thông báo phù hợp được cung cấp bởi mô-đun Simplenews để phù hợp với tất cả người dùng đã đăng ký. (đảm bảo bạn cũng đã cài đặt mô-đun Token)

  3. Chuyển đến Quản trị> Cấu trúc> Kích hoạt, rồi tab Nút. Chọn thứ ba: TRIGGER: SAU KHI TIẾT KIỆM NỘI DUNG CẬP NHẬT.

Nếu bạn cần kiểm soát nhiều hơn thì thực hiện hook

chức năng YOUMODULE_trigger_info_alter (& $ kích hoạt) {// Tại đây dpm ($ kích hoạt) để xem trình kích hoạt cập nhật của bạn ở đâu và thực hiện các thay đổi. }?>

B. Sử dụng Quy tắc (mô-đun đóng góp) Cơ bản điều tương tự. Nếu bạn gặp khó khăn, hãy làm theo các bước sau về một vấn đề tương tự trên blog này: http://adellefrank.com/blog/how-to-email-notifying-comments-drupal7


1
'TRIGGER: SAU KHI TIẾT KIỆM NỘI DUNG MỚI' sẽ gửi một email duy nhất về việc tạo bài đăng trong đó 'TRIGGER: SAU KHI NỘI DUNG CẬP NHẬT' sẽ gửi một email mới nếu có bất kỳ cập nhật nào được gửi đến bài đăng.
Citricguy

1
Nếu sử dụng Quy tắc, tại sao tôi lại sử dụng hành động "Gửi e-mail" thay vì hành động "Gửi bản tin email" do mô-đun Simplenews cung cấp?
Patrick Kenny

5

Module Simplenews làm mọi thứ bạn cần. Nó có thể được cấu hình rằng mỗi bài đăng trên blog của bạn tự động trở thành một bản tin và được gửi đến người đăng ký. Chỉ cần cấu hình Simplenews, chọn loại nội dung Blog để làm nguồn bản tin.

Để thực hiện điều này:

  1. Dạng cấu hình mở của loại nội dung Blog (/ admin / architecture / type / Manage / blog)
  2. Trong tab "Tùy chọn xuất bản", hãy kiểm tra "Sử dụng như bản tin đơn giản"

Ở đâu trong cấu hình Simplenews là tùy chọn "Nguồn bản tin"? Tôi nghĩ rằng tôi đã xem qua tất cả các menu và tôi không tìm thấy bất cứ thứ gì tương tự ...
Patrick Kenny

Xem câu trả lời cập nhật ở trên.
Eugene Fidelin

1

Nếu bạn muốn thực hiện theo chương trình, hãy xem drupal_mail ($ module, $ key, $ to, $ ngôn ngữ, $ params = mảng (), $ from = NULL, $ send = TRUE) ,

Khi nút được cập nhật, hook hook_node_update (nút $) sẽ được kích hoạt. Nếu bạn muốn tạo định dạng thư được soạn riêng, hãy sử dụng hook_mail ($ key, & $ message, $ params) . Vì vậy, bạn phải viết 2 hook hook_node_update và hook_mail đầu tiên. Bên trong hook_node_update bạn phải viết hàm drupal_mail sẽ gọi hook_mail của bạn.


0

Bạn có thể sử dụng mô-đun hộp cát của tôi Tổng số đăng ký

Mô-đun này là trong hàng đợi dự án drupal. Đây là liên kết cho nó: - LINK

Tôi nghĩ rằng nó sẽ cung cấp chức năng mà bạn yêu cầu.


1
Bạn có thể mở rộng một chút về cách mô-đun này sẽ giải quyết vấn đề của người dùng không?
mpdon Arena
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.