TwitterのシェアがIEで400エラーになる理由と対策方法。

スポンサーリンク
Wordpress
スポンサーリンク

先日、「ツイッターのシェアできないよ。エラーになってるよ」って言われて、調べたらIEの場合だけ400エラーになっていました。

その時のコードは以下のようなコードです。

<a href="https://twitter.com/share?url=<?php echo get_permalink();?>&amp;text=<?php echo the_title();?>">シェア</a>
スポンサーリンク

Twitterのシェアでエラーが起こる原因は

原因はタイトル部分がエスケープされずに、そのまま表示されているため、Twitterのシェアでエラーになっているようです。

シェアのエラーへの対策方法は

phpにはurlencodeという、URL型に文字列をエンコードしてくれる関数があります。このurlencode関数を利用します。

利用した際のコードは下記になります。

<a href="https://twitter.com/share?url=<?php echo get_permalink();?>&amp;text=<?php echo urlencode(the_title('','',0));?>シェア</a>