* 概要 [#l92028b3]

Twitter に関する事。未整理。

#contentsx(depth=1:2)


* Tweet Button あれこれ [#qec6d45a]

** W3C Markup Validation 対策 [#rbc3d776]

*** 現象 [#vd697031]

[[Twitter の Documentation:https://dev.twitter.com/docs/tweet-button#ways-to-add-the-tweet-button-to-your-website]] に載っている通りのコードを追加すると、[[Markup Validation:http://validator.w3.org/]] の結果 Invalid と言われてしまう。

 <a href="https://twitter.com/share" class="twitter-share-button" data-lang="en">Tweet</a>
 <script>(省略)</script>

*** 対策 [#h3c46374]

data- attribute of anchor tag とかいう独自属性なんぞを使わせるな、ということで。

 <a href="https://twitter.com/share?lang=en" class="twitter-share-button">Tweet</a>
 <script type="text/javascript">(省略)</script>

*** 参考 URI [#a244e26a]
- [[Tweet Button | Twitter Developers:https://dev.twitter.com/docs/tweet-button]]
- [[The W3C Markup Validation Service:http://validator.w3.org/]]


** Double encoding 対策 [#u2925645]

*** 現象 [#mee04751]

このページの URL のように、Percent-encoding された文字を URL に含むページに Tweet Button を設置して、かつ url パラメータの値を指定しない場合、Button をクリックすると Percent-encoding が 2 回実施された URL をツイートすることになってしまう。

期待動作:
 http://www.colorless-sight.jp/wiki/?Tips%2FTwitter

実際の動作:
 http://www.colorless-sight.jp/wiki/?Tips%252FTwitter

*** 対策 [#l8fd7ec6]

url パラメータの値を適切に指定すれば回避できる。

対策 (1):
 <a href="https://twitter.com/share" class="twitter-share-button" data-url="<?php echo $link['reload'] ?>" data-lang="ja">Tweet</a>

対策 (2):
 <a href="https://twitter.com/share?url=<?php echo urlencode($link['reload']) ?>&amp;lang=ja" class="twitter-share-button">Tweet</a>

*** 参考 URI [#b436df8a]
- [[Tweet Button | Twitter Developers:https://dev.twitter.com/docs/tweet-button]]
- [[Issue 2005 - twitter-api - Double URL encodes in count button search string - Twitter&#39;s API Issue Tracker - Google Project Hosting:http://code.google.com/p/twitter-api/issues/detail?id=2005]]
- [[そなーブログ  &raquo; Blog Archive   &raquo; Pukiwikiにツイッター公式「ツイートボタン」を設置する:http://sonarsrv.com/blog/web/377.html]]


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS