2014-09-24 63 views
1

我正在使用以下php代碼將電子郵件發送到wordpress中的不同郵件服務器。yahoo郵件中的超鏈接不可點擊

home_url value = http://ipaddress/website/ 

$url= home_url()."/?page_id=309&pin=".$pin; 
$to=$email; 
$subject="Registration Successful ! "; 

$password=rand(10000, 99999); 

$mess .="<p>Dear ".$name .",</p><p></p>"; 
$mess .="<p>Please find link below to active your account. </p><p></p>"; 
$mess .="<p></p>".$url."<p></p>"; 
$mess .="<p><a href=' ".$url." '>".$url."</a></p><p></p>"; 
$mess .="<p> Thanks, </p><p></p>"; 
$mess .=" <p>Test Support Team </p><p></p>"; 
//$headers = "Content-type: text/plain; charset = ".$chrst. "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$from_name = get_bloginfo('name'); 

$from_email = get_option('opt_glocal_site_email'); 

if ($from_email) { 

    $headers .= 'From: '.$from_name.' <'.$from_email.'>'. "\r\n"; 

} else { 

    $headers .= 'From: '.$from_name. "\r\n"; 

} 

$send = mail ($to, $subject, $mess, $headers); 

它發送帳號激活超鏈接的用戶,但問題是,超鏈接是不是在雅虎郵箱點擊。

相同的代碼發送電子郵件到Gmail,Hotmail完美和鏈接可點擊任何一個指導我可能是什麼問題。

檢查元素在雅虎這個鏈接:

<a rel="nofollow" target="_blank" onclick="return theMainWindow.showLinkWarning(this)" class="removed-link" id="yui_3_16_0_1_1411592352265_2952">http://ipaddress/website/?page_id=309</a> 

**注:我已經使用的 「http://」。用href屬性**

任何幫助將不勝感激。

+0

我猜這是垃圾郵件文件夾?在任何情況下,我已經看過這個與查詢urls'?foo',這是重寫解決。看起來雅虎可能不喜歡url中的參數。 – 2014-09-24 21:29:23

+0

我使用'home_url()'和'$ from_name'和'$ from_email'的標準變量替換測試了您的代碼,並通過可點擊的鏈接取回了電子郵件。其他的事情正在導致這種情況,可能在WordPress本身。 – 2014-09-24 21:31:01

+0

如果home_url值確實是= http:// ipaddress/website /,並且確實是$ url = home_url()。「/?page_id = 309&pin =」。$ pin;你發送一個這樣的鏈接:http:// ipaddress/website //?page_id = 309&pin = ...你的中間有兩個斜槓。雅虎可能不喜歡那樣?我有一種感覺,這只是一個錯字。 (隨機間距是這樣,它不會變成一個超鏈接) – Blizzardengle 2014-09-24 21:37:56

回答

1

當您發送電子郵件到雅虎電子郵件地址時,如果您不包含rel =「nofollow」,他們的服務器將破壞您的鏈接。我試圖通過wordpress發送電子郵件時遇到了這個問題。

修改後的代碼的版本應該是這樣的:

$mess .="<p><a rel="nofollow" href=' ".$url." '>".$url."</a></p><p></p>"; 

我認爲這是雅虎試圖從獲得付費鏈接斷開履帶阻止人們。
如果你實現了這一行代碼,那麼你的鏈接應該在雅虎工作。

1

可能是你需要改變從HTTP鏈接到https這樣

<a href="https://yoursite.com"></a> 

它的工作對我來說

0

您可以使用stripslashes()身體電子郵件的剝離多餘的斜線,然後看它是否works.I有類似的問題和stripslashes()完美的爲我工作

$mess=stripslashes($mess);