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

山形水ラーメン
久しぶりに訪れた Pour~cafe’ (ロコモコ テリヤキソース) から 3 ヶ月程空きましたが、再び Pour~cafe’ (プルーカフェ) を訪れました。夏真っ盛りで暑い気候でしたし
かつ丼 (1)
日本一美味しいサバの塩焼き でも書きましたが、銀座にサテライトオフィスを設けてそちらに勤務していたことがありました。5 – 6 年程前になります。その際に開拓したリーズナブルなお店の 1
Drive Network Philosophy
FTP サーバプログラムはいくつか存在しますが、FreeBSD 付属の ftpd を拡張した BSDftpd-ssl の例を紹介します。FTP サーバに接続した際、サーバがクライアントに応答するメッセ
Preseved Flower
ほぼ社内向けな話ですが、入社前に希望のメールアカウント (メールアドレス @ 左側の文字列) を確認され、第 1 希望に rose と回答しました。(第 2 希望は普通に yasuhiro と回答)無
おかずセレクト (2013/04/15, 左半分)
ミニストップ (おかずセレクト No. 1) の続きです。03/18, 03/19 に続けて 03/22 も訪れました。一旦凝り始めるととことん突き詰める AB 型全開です。14 時過ぎに訪れましたが
サイゼリア 神田小川町店
サイゼリヤ (ランチメニュー) から 2 ヶ月程ご無沙汰していましたが、急にサイゼリアの "小エビのカクテルサラダ" が食べたくなり訪れてみました。あれ ? 行くとほぼ必ずオーダー
hamburger with fries
サービス向上を勘違いしているマクドナルド (Part 1) の続きです。完成品の未完成さここ は半分パロディも含んでいるでしょうが、パロディとは思えない写真も含まれています。すでに "質を選
WS-C2960S-48TS-L (1)
先日、Drive Network サービスで提供する基本環境の大半を FreeBSD 7.1-RELEASE i386 -> FreeBSD 9.1-RELEASE amd64 に移行しましたが
シロ (3)
沖縄本島 (No. 52 – 猫丸庵 Part 1) の続きです。注文を決める前から、猫好きな私たちメンバーのために女将が小道具を用意してこちらに引き付けてくれました。手のひらサイズのパッ
特製二代目つけ麺
めん徳二代目つじ田 (二代目つけ麺) で心残りにしていた 特製二代目つけ麺 に久しぶりにご対 "麺" 出来ました。普段は 14:00 頃等ランチタイムを外しますが、今回は開店 11
Valid HTML5 Valid CSS3 Another HTML Lint