Home » Program » WordPress HTML5, CSS3 Valid (No. 2) (Tag: , , )

twitter や facebook のいいね ! ボタンを埋め込みたい場合、それぞれから提供されるタグでそのまま Valid とされることは経験上ほぼありません。(特に Another HTML Lint)

WordPress 向けに permalink() 等を含んでいますが、適時変更することで別の CMS や素の HTML5 でも Valid とされるコーディングをご紹介します。(twitter, facebook, Google+)

<div id="fb-root"></div>
<script type="text/javascript" src="http://platform.twitter.com/widgets.js" charset="utf-8"></script>
<script type="text/javascript" src="http://wg.drive.ne.jp/rose/wp-content/themes/Evander/js/wg.fb.js"></script>

<div>
  <ul>
    <li class="tweet"><a class="twitter-share-button" href="http://twitter.com/share?count=horizontal">Tweet</a></li>
    <li class="like"><div id="fb-like" class="fb-like"></div></li>
    <li class="plus"><div id="g-plusone" class="g-plusone"></div></li>
  </ul>
</div>

<script type="text/javascript">
    var fb = document.getElementById('fb-like');

    fb.setAttribute('data-href',       '<?php the_permalink(); ?>');
    fb.setAttribute('data-send',       'false');
    fb.setAttribute('data-layout',     'button_count');
    fb.setAttribute('data-show-faces', 'true');
</script>

<script type="text/javascript">
    var gp = document.getElementById('g-plusone');

    gp.setAttribute('data-size', 'medium');
    gp.setAttribute('data-href', '<?php the_permalink(); ?>');

    window.___gcfg = { lang: 'ja' };

    (function() {
        var po   = document.createElement('script');
        po.type  = 'text/javascript';
        po.async = true;
        po.src   = 'https://apis.google.com/js/plusone.js';

        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(po, s);
    })();
</script>

HTML5 向けのカスタムデータ属性は、setAttribute() で追加してチェッカーを迂回していることになりますが、draft 段階の現在、今後ソースの変更を迫られる場合もかつて HTML と CSS の分離が進んだ様に、JavaScript で汎用化して分離しておくと一斉変更が容易かもしれません。

# それより早くサイトのリニューアルが迫られる方が現実的かな

Random Select

海底遺跡 (3)
与那国島 (No. 10 – 居処屋どぅーらい) の続きです。翌朝は与那国観光の目的の 1 つである海底遺跡を訪れました。グラスボートやスノーケリング・ダイビングと方法がありますが、今回は
FreeBSD Logo
FreeBSD を使い始めて 10 年以上経ちました。初めて挑戦した頃のバージョンが 2.2.5 で、当時は Google 等の検索エンジンに頼ることも出来ないので、リンクを追いかけてドキュメントやコ
ボンディ 通信販売 ビーフカレー (5)
自宅 de ボンディ (Part 2) の続きです。2 回目1 回目は土曜日のランチ、2 回目は翌日日曜日のランチです。"お酒は我慢出来てもカレーは難しい" 私にとって、2 日連続
立山連峰 (4)
富山出張 (No. 4 ? スターバックス コーヒー 富山環水公園店) の続きです。出張 2 日目は移動日として東京に帰りました。初日に富山空港の外に出た瞬間に気が付きましたが、正面一帯に立山連峰が見
釜上げ (中盛 + ちくわ天)
うどん 丸香 (きつねうどん・釜上げ) で初めて "かけうどん用のトッピング" 以外の天婦羅を試しました。おそらく "classic (定番の焼ちくわ)" です
FreeBSD Logo
X-Forwarded-For patch (stunnel-4.35-xforwarded-for.diff) を適用した stunnel 4.35 を 5.08 にアップデートした際に、stunn
雑貨さくら (1)
与那国島 (No. 12 – 東崎 ? 祖納港) の続きです。数年前に西表島を訪れたことがあります。帰った後に やえやまブログ があることを思い出し、石垣島・西表島・与那国島から 2 つず
FreeBSD Logo
現在 専有レンタルサーバ ビジネスプレミアム で主に使用している radserv XG1+ の BIOS, RAID BIOS のバージョンアップの検証中に dd コマンドによる書き込み結果も測定しま
偽アカウント (例)
ここ最近 Facebook で知らない女性から何件か申請 (友達リクエスト) がありました。もちろんまるで知りません。過去にも何度かありましたが、ここ最近申請があるケースの特徴は、Facebook に
沖縄そば定食 (おきなわそばセット)
うちなぁ料理と古酒家 ニライカナイ (沖縄ちゃんぽん) 以来 2 週間ぶりに再び訪れました。前回の時点でメニューが変わっていました。内容というよりはレイアウトの変更がほとんどの様でしたが、うまく撮れな
Valid HTML5 Valid CSS3 Another HTML Lint