您在這裡

由系統發個人email的功能

大家好,小弟想要製作一個能提供使用者寄信給剛認識的人信件範本的網頁。

目前是希望這個網頁能夠:
1.認證使用者的身分。
2.讓使用者註冊時同時註冊他本人的發信email address。
3.讓使用者輸入剛認識的人的email address。
4.輸入完email address後會出現一個(至多個)信件範本,可供使用者在上面做些小修改後寄出。
5.寄出的同時系統可以同時記錄寄出信件的時間。

小弟剛開始接觸Drupal 7 ,還有諸多不了解的部分,希望各位大大能指點迷津! ^^

謝謝您的瀏覽~

你的問題很清楚詳細,所以我試著回答看看。

1.認證使用者的身分
==>使用者登入進來,已經算是認証了。如果怕這個帳號是一個機器人,那麼在填寫表單時,可以再加 captcha 模組進行看圖認証。

2.讓使用者註冊時同時註冊他本人的發信email address
==>使用者註冊時,已提供了 email。如果是要讓使用者再填一個特定用於這個用途的 email 信箱,那麼可以使用 profile2 模組,增加使用者註冊時可以填寫的欄位。

3.讓使用者輸入剛認識的人的email address
==>這是填寫表單的功能,可以使用 webform 模組。至於要將這些 email address 記錄起來的話,可以利用 rules。而如果這些記錄要跟該使用者有關係的話,再加使用 references 模組。如果這中間不只如此,還要驗証,作權限控制或其它運算的話,要自己寫模組。

4.輸入完email address後會出現一個(至多個)信件範本,可供使用者在上面做些小修改後寄出
==>這個可以利用 views 模組呈現範本清單。由於依你的需求看起來並不適合使用摘要模式或是欄位模式,可利用 dispaly suite 自建一個新的模式,在 view 的設計時,指定利用自建的這個模式作呈現。
==>使用者選了特定範本之後,再來利用 rules 轉到填寫表單的地方,以這個範本為基礎作修改,最後按發送鈕。填寫與發送是 webform 的功能。至於這裡的利用 rules 作轉接,我不太確定可行性,要試了才知道,應該可行吧。

5.寄出的同時系統可以同時記錄寄出信件的時間
==>這個可以利用 rules 模組設定一個 rule,在使用者填完表單,一則將它寄出,一則將它記錄下來。

以上我們談到「記錄」,因此要有 table。在 drupal 6 的話,有 table wizard 可以拿來建立自訂的 table 並且作 crud (新增、查詢、修改、刪除) 的管理,不過它還沒有 drupal 7 的版本,暫時我腦袋中沒有可替代的模組,這個要查 drupal.org 了。

假如你是剛接觸 drupal 的新手,我猜要學到以上的功能並能運用的話,可能最快要花幾個月的時間。可以請其它人再建議看看。

Art (無有多少 | 通通學 Drupal 線上課程)