Гиперссылка в почте yahoo не кликабельна

Я использую следующий php-код для отправки электронной почты на разные почтовые серверы в WordPress.

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);

он отправляет гиперссылку активации учетной записи пользователю, но проблема в том, что гиперссылка не активна в почте yahoo.

тот же код отправляет электронную почту на gmail, hotmail отлично, и ссылка активна, любой подскажет, в чем может быть проблема.

Проверить элемент в Yahoo на наличие этой ссылки:

<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.**

любая помощь будет оценена.


person UMAR-MOBITSOLUTIONS    schedule 24.09.2014    source источник
comment
Я так понимаю это в папке со спамом? В любом случае я видел это раньше с запрошенными URL-адресами ?foo, которые были решены путем перезаписи. Кажется, Yahoo может не понравиться параметры в URL.   -  person    schedule 25.09.2014
comment
Я протестировал ваш код, используя стандартные замены переменных для home_url() и $from_name и $from_email, и получил электронное письмо с активной ссылкой. Что-то еще вызывает это, вероятно, в самом WordPress.   -  person Funk Forty Niner    schedule 25.09.2014
comment
Если значение home_url действительно равно http://ipaddress/website/ и действительно равно $url= home_url()./?page_id=309&pin=.$pin; Вы отправляете ссылку вида: http://ipaddress/website//?page_id=309&pin=... У вас две косые черты посередине. Yahoo может не понравиться? Хотя у меня ощущение, что это просто опечатка. (случайный интервал был таким, чтобы он не превратился в гиперссылку)   -  person Blizzardengle    schedule 25.09.2014
comment
@Blizzardengle Я только что проверил эту теорию, и я все еще получил электронное письмо с кликабельной ссылкой.   -  person Funk Forty Niner    schedule 25.09.2014
comment
Кликабельно где? Gmail — волшебник, делающий свое дело (исправляющий код), Yahoo не так уж и много. Что это такое ‹a rel=nofollow target=_blank onclick=return theMainWindow.showLinkWarning(this) class=removed-link id=yui_3_16_0_1_1411592352265_2952›ipaddress/website/?page_id=309‹/a›? Это тоже может расстраивать Yahoo ИЛИ, ЧТОБЫ ЧЕСТНО, я думаю, что это может быть проблема с заголовком. Адрес отправителя с фактического сервера отправляет почту? Знает ли он, что вы отправляете электронное письмо в формате HTML? Может быть зачистка его и показывать только текст.   -  person Blizzardengle    schedule 25.09.2014
comment
См. здесь: css-tricks.com/sending-nice-html- email-with-php В ваших заголовках отсутствует версия MIME. Это тоже основные заголовки. Yahoo может хотеть более продвинутые.   -  person Blizzardengle    schedule 25.09.2014
comment
ребята, спасибо, что пролили свет на эту проблему, да, я только что заметил, что электронная почта доставляется в папку со спамом, где ссылка не активна, когда я помечаю ее как безопасную, и та же ссылка электронной почты становится доступной для кликов в папке «Входящие». есть ли способ сделать ссылку доступной в папка со спамом тоже.   -  person UMAR-MOBITSOLUTIONS    schedule 25.09.2014


Ответы (3)


Когда вы отправляете электронное письмо на адрес электронной почты Yahoo, их серверы разрушат ваши ссылки, если вы не укажете rel="nofollow". У меня только что была эта проблема при попытке сделать электронную почту через wordpress.

исправленная версия вашего кода должна выглядеть так:

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

Я предполагаю, что Yahoo пытается помешать людям получать платные ссылки от поисковых роботов.
Если вы реализуете эту строку кода, ваши ссылки должны работать в Yahoo.

person Jason Gallavin    schedule 13.03.2015

Возможно, вам нужно изменить ссылку с http на https, как это

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

это работа для меня

person Latief Anwar    schedule 19.05.2017

Вы можете использовать stripslashes() в теле письма, чтобы удалить лишние косые черты, а затем посмотреть, работает ли это. У меня была похожая проблема, и stripslashes() отлично сработало для меня.

 $mess=stripslashes($mess);
person geekbro    schedule 26.11.2017