OGPの2つのプラグインを修正してみた
このNibbleblogのOpen Graphプラグインのog:imageとTwitter Cardプラグインのtwitter:imageのURLがおかしいので修正した
2016-01-11 | Nibbleblog
プラグインのダブルスラッシュ問題
このNibbleblogにはプラグイン機能があり、このうちFacebookのOpen Graphプラグインのog:imageと、Twitter Cardプラグインのtwitter:imageのURLがhttp://www.example.com//themes/テーマ名/css/img/image.pngとダブルスラッシュ(//)が入っておかしなことになっていた。そこで、以下の2つのスクリプトを次のとおり修正した。
/plugins/open_graph/plugin.bit(Open Graphプラグイン)/plugins/twitter_cards/plugin.bit(Twitter Cardプラグイン)
コードの修正内容
//$og['image'] = $settings['url'].HTML_THEME_IMG.'image.png';
$og['image'] = preg_replace('/([^:]\/)\//', '$1', $settings['url'].HTML_THEME_IMG.'image.png');
いずれもmeta要素のcontent属性の値となるURLを生成するコードで、修正部分は同じ。PHPのPCRE正規表現を用いて、ダブルスラッシュを普通のスラッシュにpreg_replaceで置換しただけ。しかし正規表現というのは、なぜかいつも顔文字に見えてくる。

コメントはありません
コメント