Comment Mail Notify:適用於Twenty Ten主題的WordPress評論郵件回複代碼

來源:互聯網
上載者:User

預設情況下,當讀者在你的WordPress網站上提交了評論留言後,作為管理員的你會收到系統自動發給你的通知訊息,這是個很方便的提醒功能。

問題是,你給評論者的回複卻不會通過郵件通知到對方,這個就不是很方便啦!網上搜一下,好多外掛程式支援評論郵件回複通知的功能,不過試了一下,多數過於複雜or花哨了:我僅僅是需要提供給讀者一個選項,讓他們自己選擇是否接受我的郵件回複通知就行了。

繼續搜尋,發現大師WillinKan已經提供了詳盡的代碼來實現這個功能,而且很細心的分多個情景給大家選擇。原文是《CommentMailNotify》,請有興趣的讀者移步圍觀之~我選擇的情景是:有複選框,訪客可以決定是否要內送郵件通知。WillinKan的原始代碼中相關的提示是繁體中文的,最好根據需要改成簡體中文。把所需的代碼修改後複製進所用主題functions.php檔案的<?php...?>中即可。

幾個要注意的地方:
1)先設定好用來自動回複讀者評論的可用郵箱地址
必須在你的空間商那裡建立一個以你的網站網域名稱為尾碼的專用郵箱。例如,常用的格式有no-reply@yourdomain.com。WillinKan提供的代碼中預設就是這個格式的郵箱,如果你不用這個格式的話,可以修改$wp_email='no-reply@'為自己定義的郵箱。

2)CSS樣式問題
其他主題我不清楚,不過我使用的TwentyTen主題是必須修改CSS的,不然複選框和提示會錯位。這裡要贊一下WillinKan,我在他的部落格上留言請教如何修改CSS,他很詳細地回複了,好人啊……我得好好總結下,讓更多使用TwentyTen主題的童鞋能用上大師的代碼。

直接進網站背景“外觀-編輯”頁面,找到style.css檔案。

搜尋到以下代碼:
respondinput{
margin:009px;
width:98%;
}

在}符號後下一行直接添加以下代碼:
#respondinput#comment_mail_notify{
margin:09px;
width:10px;
}

繼續搜尋到以下代碼:
#respond.form-submit{
margin:12px0;
}

添加一段代碼:
display:inline;

最終變為:
#respond.form-submit{
margin:12px0;
display:inline;
}

3)解決郵件代發問題指定真實寄件者地址)
預設情況下,如果你的主機支援mail()函數,那麼按照以上步驟使用CommentMailNotify就可以正常發回複郵件給讀者了。不過還有一個小問題,我也不知道是不是所有主機都會有這種情況:預設通過WordPress發出的郵件都是由空間商的郵件伺服器代發的。

這是什麼意思呢?舉個例子,預設情況下,不做任何配置的話,讀者在我的網站上留言,WordPress本身會自動發郵件通知我。這個發送郵件的地址一般都是wordpress@mydomain.com,而且容易被當作垃圾郵件。原因很簡單,仔細查看下收到的通知訊息就明白了,因為這類郵件是由主機商的某個郵件伺服器信箱代發的,與“寄件者”顯示的地址不一致,易被判為仿冒郵件。同樣的道理,雖然我在CommentMailNotify代碼中已經指定了一個no-reply@yourdomain.com,可是實際寄件者並不是這個地址。

650) this.width=650;" title="wordpress-mailed-by[1].png" src="http://img1.51cto.com/attachment/201309/135032493.png" alt="135032493.png" />

解決方案?網上有很多說法,各執一詞。我是誤打誤撞解決這個問題的:使用外掛程式wp-mail-smtp。關於wp-mail-smtp,網上提到它的教程一般都是這麼說的:Windows主機禁用了mail(),於是必須用smtp形式來發郵件,故採用wp-mail-smtp來使用第三方郵箱……慢著,為啥很少人提到wp-mail-smtp也是支援mail()函數的?我直接在這個外掛程式的設定頁指定了no-reply@yourdomain.com,選擇發送方式為UsethePHPmail()functiontosendemails,並且勾選了複選框“Setthereturn-pathtomatchtheFromEmail”,就完成設定了。測試了一下,無論是留言審核提醒,還是讀者評論自動回複,都會以no-reply@yourdomain.com為真實寄件者地址。

雖然解決了這個奇怪的郵件代發問題,只是我還是有點繞不過彎來:既然我的linux主機本身就支援mail()函數,我又何必多此一舉通過一個外掛程式來使用這個函數?應該是有直接修改程式的方法,只是我沒找到而已。若您對此問題有所瞭解,歡迎指點一下迷津!

好了,從現在開始你的WordPress網站已經能夠自動將你的回複發郵件通知讀者了。

本文出自 “猴叔的部落格” 部落格,請務必保留此出處http://glitter.blog.51cto.com/7943065/1299143

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.