Facebook Likeボタンのdescriptionを編集する with CakePHP
facebookボタンを押した時にピョンと出てくるポップアップの descriptionを編集したい。 そんな時は、以下のようなmetaタグをhead内に書くことで編集できる。
<head> ... <meta property="og:description" content="A description to be used in the share dialog." /> </head>
CakePHPでmetaタグを埋め込む方法
さて、この仕組みをcakeで利用する場合、 それぞれのview内でHtmlヘルパーを使ってcssやjsをhead内に埋め込むようなやり方で metaタグを埋め込みたいという欲求に駆られる。
$this->Html->css('hoge', null, array('inline' => false));
こんな感じのやつ。
Htmlヘルパーのmetaメソッドの使い方
そこで、Htmlヘルパーにmetaメソッドがあるんじゃないかと思って調べたら、ずばりそのものがあった。 descriptionのmetaタグを出力したい時には以下のような形で良いらしい。
echo $this->Html->meta( 'description', 'A description to be used in the share dialog.' );
ただ、"og:description"のような独自のmetaタグを入れたい時、このメソッドには配列でデータを渡す必要があるので、最終的には以下のようなコードになった。
echo $this->Html->meta( array( 'property' => 'og:description', 'content' => 'A description to be used in the share dialog.' ), null, array('inline' => false) );