Instagram for WordPressが重いから勝手にカスタマイズしてみた

February 10, 2013,
tags: instagram wordpress


このエントリーをはてなブックマークに追加

ニートのときに書いた旅行の記事を読もうとしたらレスポンスに20秒近くかかっていました。
原因を探る為に調べていたら、どうやら「Instagram for WordPress」のプラグインが足を引っ張っていたようです。

んで、コードをみてみるとなんと画像1回1回ご丁寧にphp側でinstagramのAPIと通信しているじゃございませんか・・・

まあaltタグ入れたいから何だろうけど、なんかすごく微妙だし、僕のブログではaltタグとか重要じゃないし・・・ってことで勝手にカスタマイズしてみようと思った訳です。
ということでinstagram_embed_shortcode関数を以下のように修正しましょう。

function instagram_embed_shortcode($atts, $content = null){
  extract(shortcode_atts(array(
    'url' => '',
    'size' => 'middle',
    'addlink' => 'yes',
    'alt' => null,
  ), $atts));
  switch($size) {
    case 'large':
      $_size = 'l';
      $maxwidth = 612;
      break;
    case 'small':
      $_size = 't';
      $maxwidth = 150;
      break;
    case 'middle':
    default:
      $_size = 'm';
      $maxwidth = 306;
      break;
  }

  $url .='/media/?size='.$_size;
  $html = "<img src='$url' width='$maxwidth' height='$maxwidth' alt='$alt'>";
  return $html;
}

これでレスポンスタイムが20sから300msへ!!爆速になりましたw
ちなみにurl,size以外の引数としてaltも用意したので必要な方は使ってください。

comments powered by Disqus