wordporess禁用了mail()函數(shù)問題
wordpress通過郵件找回密碼報(bào)錯(cuò):
電子郵件未能發(fā)送,可能原因:您的主機(jī)禁用了mail()函數(shù)
方法一:可以聯(lián)系客服,確認(rèn)服務(wù)器是否開啟 fsockopen 相關(guān)組件(我們?nèi)糠?wù)器默認(rèn)是開啟的),利用服務(wù)器給您發(fā)件。
方法二:修改smtp,利用自己的郵箱SMTP給自己發(fā)件。
方法一:. 在網(wǎng)站的 /wp-Includes/ 目錄下找到并打開 class-smtp.php 大概是 274-282 行的位置(不同版本W(wǎng)ordPress可能行數(shù)不同),找到如下代碼:
$this->smtp_conn = @stream_socket_client( $host . ":" . $port, $errno, $errstr, $timeout, STREAM_CLIENT_CONNECT, $socket_context );
將此代碼注釋掉或者刪除,然后修改為以下代碼:
$this->smtp_conn = fsockopen($host, $port, $errno, $errstr);
方法二:服務(wù)器還是無法發(fā)件的話,,在上面步驟完成的情況下繼續(xù)添加如下代碼,利用SMTP發(fā)件:
/** * 修復(fù) WordPress 郵件發(fā)送” * 以QQ郵箱為例**/ function mail_smtp( $phpmailer ){ $phpmailer->From = "[email protected]"; //發(fā)件人 $phpmailer->FromName = "王大錘"; //發(fā)件人昵稱 $phpmailer->Host = "smtp.qq.com"; //SMTP服務(wù)器地址 $phpmailer->Port = 25; //SMTP端口,常用的有25、465、587,具體谷歌百度 $phpmailer->SMTPSecure = ""; //SMTP加密方式,常用的有SSL/TLS,具體度娘搜一下 $phpmailer->Username = "[email protected]"; //郵箱帳號(hào) $phpmailer->Password = *********; //郵箱密碼 $phpmailer->IsSMTP(); //使用SMTP發(fā)送 $phpmailer->SMTPAuth = true; //啟用SMTPAuth服務(wù) } add_action('phpmailer_init','mail_smtp');
執(zhí)行以上操作后您網(wǎng)站的郵件收發(fā)功能應(yīng)該就可以實(shí)現(xiàn)了。
其實(shí),找密碼的辦法還可以通過phpmyadmin,可以看這篇文章