[WordPress]ツイートがブログに埋め込めなくなった…。ついでにマークアップも確認してみた
この記事は約10分ぐらいで読めます
WordPressのデフォルトの機能でのツイート埋め込み
WordPressのサイト上にツイートを埋め込みたい場合、以前はWordPress > Twitter Blackbird Pieというプラグインを使って埋め込んでいました。これはツイートの背景にそのツイートの本人のアカウントの背景をスタイルしてくれたりと見た目にもわかりやすい機能で結構好きだったんですが、確か3.4だったかその位でこの表示にデフォルトで対応するようになりました。
ツイートのURLを貼り付けるだけで見た目もいい感じになるしすっごい便利だったので使っていたんですが、先日書いた[ネタ]Twitterライフを楽しくしてくれるお気に入りの意味不明なbot&診断メーカーという記事でツイートを埋め込もうとしたとき、この機能がツイートを全然表示してくれなくなっている事に気付きました。
以前も何故か表示されないことはあって、何度かアクセスし直すと表示されたりもしたんですが…今回は全く表示されないです。一回も上手く表示されるのを見ることなく二日経ったのでこれはダメだと判断しました。
ちなみに同様の方法でツイートを埋め込んでいる過去記事のハッシュタグ #基本無料のPhotoshop等では今も問題なく表示されています。新規の埋め込みが上手くいかないということですね。
原因がわからないけどちょっと見直してみる
で、対策としては改めて元々のBlackbird Pieをまた入れ直してみるとか他の方法を講じてみるという方法もあるんでしょうし、もしかしたらこの記事を見た人が「こうすれば今までと変わらず埋め込めるだろ調べろボケ」とか「設定がおかしくなってんだよ確かめろボケ」って教えてくれるかもしれないですけど(待ってますw)、前からこのBlackbird Pieが吐き出すコードが気になってはいたのでちょっと他の方法がないものか調べることにしました。
Blackbird Pieの機能でツイートURLから吐き出されたHTMLは、複雑な表示をしている為かなり分量も多いです。そしてそれはまあいいんですけど、私が前から気になっていたのはこれがblockquote
要素で囲まれていない点です。通常ブログには自分のツイートを貼り付ける頻度が高いだろうとは思うんですけど、やはり一度他のWebサイトにポストされたものではあるので引用とする方が適切ではないかと思う訳です。
Twitterの公式ツイート埋め込み機能
そこでTwitter公式の出番です。…別にこのめんどくささを解消出来たわけじゃないんですけどw すみません。
これで埋め込めるコードは、しっかりとblockquote
タグで囲まれています。
ちょっと見た目は簡素になってしまいましたが、埋め込まれたツイートであることはちゃんとわかる表示になっています。
ちなみに、最後のwidgets.jsは当然一回読み込めばいいので複数埋め込む場合はblockquote
タグで囲まれた部分だけ貼り付ければOKです。また、このJavaScriptはついこの間配布されたTwitter公式の埋め込みタイムライン設置時にも読み込まれているので、タイムライン設置済みのページにはこのスクリプトを設置する必要がありません。
欲を言えばこのblockquote
タグにはcite
属性も付けて欲しかったところですけど…参照元リンクがあるので便利さにおいては問題なしですね。個人的にはのちのちブラウザーがcite
属性のついた引用ブロックやテキストには勝手にリンクが張られるとかそういう機能を持つような仕様になればベストだと思ってるんですけどね。
実はURLだけでもちゃんと表示してくれる
で、どういう事かちょっとわからないんですけど公式が吐き出してくれるコードのリンク先となっているツイート自体のURL、例えばhttps://twitter.com/webcre8/statuses/345347396017979394と、通常ツイートをクリックして飛べるhttps://twitter.com/webcre8/status/345347396017979394とはURLが微妙に違います。statusにesがついていますね。
実はこのツイートを埋め込む公式のURLを記述するだけで、埋め込みコードと同じblockquote
要素でのコードを吐き出してくれるようです。これは多分widgets.jsを設置しているおかげなんでしょうけど、他にも
- 埋め込みコードをわざわざ配布していること
- 通常のURLでは埋め込み出来なくなっていること
- 新規に埋め込むことが出来ないのに以前の記述はうまくいっていること
- Twitter公式の実装とWordPress側のスタンス(Blackbird Pie機能を廃止するのか等)
とこの辺がイマイチよく分かりません。目的はほぼ解決してるのでいいっちゃいいんですけど、知的好奇心として知っておきたい話題ではあります。
終わりに
というわけで、直面した問題にまっすぐ対処せずに他の方法を選んでしまった感じです。Blackbird Pieの表示は好きなのでどうせなら元通りに表示できるといいんですけど。
一度気にしてしまった以上はBlackbird Pieが吐き出すコードがblockquote
要素にならない限り使う事は出来ないですけど、なぜこうなってしまったのか、本来なら以前のように今も貼り付けることが出来るはずなのかは知りたいです。誰か知ってたら教えてください…w