AmazonSES経由でHTMLメールを送信しています。
これがメールの例です-
ねえジョンdoe、
アンクルサムは、あなたがJobHouseに投稿したcraigslist.comに誰かが投稿する必要があるという仕事に応募しました。
乾杯。
現在、Gmail(およびおそらく他の電子メールクライアント)はにハイパーリンクを追加しますlist.com
。どうすればこれを防ぐことができますか?
サーバー側のソリューション:
すべてのドット(".") とアットマーク("@") をゼロ幅のスペース文字で囲みます。
例 (PHP):
$email = 'name@server.com';
$email = str_replace (
array('@', '.'),
array('​@​', '​.​'),
$email
);
または、上記のゼロ幅スペース文字 ( ) の代わりに、ユニット区切り文字 ( 
) またはレコード区切り文字 ( ) を使用することもできます。
​
視覚的には、交換前と同様に、電子メール/Web サイトのアドレスは正常に見えます。
注: ドットとアットマークを HTML コード (それぞれ.
& @
) に置き換えても、問題は解決しません。Gmail のアルゴリズムは、依然として文字列をアドレスとして解釈します。
<text>yoururl.com</text>
理論的には、電子メールの生成に使用できます。
私は現在手にテストするものが何もないので、GMailで動作するかどうかは100%ではありませんが。
電子メールを送信するときの私の理解では、HTML コンテンツにハイパーリンクを作成していない場合、クライアントがコンテンツをレンダリングする方法を制御できません。誰かが Gmail、Outlook、Mail などでメールを表示し、URL として特定された「パターン」に気付いた場合、クライアント アプリケーションは値を置き換えます。
参照: http://php.net/manual/en/function.imagettftext.php
たとえば、単純な PHP スクリプトを作成し、Web アドレスを URL パラメーターとして渡すと、その URL を含む画像が返されます。次に、HTML コードを変更し、代わりに次のようにします。
<img src="domain.com/path/to/your/text.php?text=craigslist.com" />
このようなことを行う以外に、クライアント アプリケーションがテキストをレンダリングする方法を制御する方法はありません。