Google Crisis Response(Google)
災害に関する情報源や、行方不明者情報の収集と検索を行う『パーソンファインダー』を初めとするツールの提供が行われています。

2010年4月17日 土曜日

Head Cleaner と ImageManager は相性に問題あり

Filed under: WordPress,プラグイン
タグ:, , , ,
時間:19時24分
投稿者:よしとも
AddClips 経由でソーシャルブックマークに登録

Googleがサイトの表示速度も評価対象に加えると言う発表をしたため(現時点では米国版のみ)、対応策として Head Cleaner を導入してみました。現時点ではほとんど影響はないとのことですが、やって置いて損はないし、表示が速くなるのはいいことです。

配布サイトに書いてある説明に従って導入したところ、AddClips のスクリプトが AddClipsId の設定をしていないとエラーを出すようになって、しかもページの表示が途中で止まってしまうようになってしまいました。ソースを確認してみると、ヘッダ部分の途中に出力されている JavaScript コードが加工され、記事部分まで文字列に含まれるようになっていました。

正常な状態

  1. <script type="text/javascript">
  2.             //<![CDATA[
  3.            
  4.                 function basename (path) { return path.replace( /.*\//, "" ); }
  5.        
  6.                 var winimg=null;
  7.                 function ps_imagemanager_popup(imgurl,title,w,h) {
  8.                     lpos=(screen.width)?(screen.width-w)/2:100;
  9.                     tpos=(screen.height)?(screen.height-h)/2:100;
  10.                     settings='width='+w+',height='+h+',top='+tpos+',left='+lpos+',scrollbars=no,location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=yes';
  11.                     winimg=window.open('about:blank','imagemanagerpopup',settings);
  12.        
  13.                     var doc = '';
  14.                     doc += '<html><head>';
  15.                     doc += '<title>' + title + ' - ' + basename(imgurl) + '(' + w + 'x' + h +')</title>';
  16.                     doc += '<style type="text/css"><!-- body { margin:0px; padding:0px; } --></style>';
  17.                     doc += '</head>';
  18.                     doc += '<body onload="self.focus();">';
  19.                     doc += '<img style="cursor:pointer;" src="' + imgurl + '" title="' + title + '" onclick="self.close();"/>';
  20.                     doc += '</body></html>';
  21.                    
  22.                     winimg.document.writeln(doc);
  23.                     winimg.document.close();
  24.                 }  
  25.                
  26.             //]]>
  27.             </script>
  28.  
  29.     </head>

異常な状態

  1. <script type="text/javascript">
  2.             //<![CDATA[
  3.            
  4.                 function basename (path) { return path.replace( /.*\//, "" ); }
  5.        
  6.                 var winimg=null;
  7.                 function ps_imagemanager_popup(imgurl,title,w,h) {
  8.                     lpos=(screen.width)?(screen.width-w)/2:100;
  9.                     tpos=(screen.height)?(screen.height-h)/2:100; settings="width="+w+',height='+h+',top='+tpos+',left='+lpos+',scrollbars=no,location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=yes';
  10.                     winimg=window.open('about:blank','imagemanagerpopup',settings);
  11.        
  12.                     var doc = '';
  13.                     doc += '
  14. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
  15. <head>';
  16.                     doc += '
  17. <title>' + title + ' - ' + basename(imgurl) + '(' + w + 'x' + h +')</title>
  18. <link rel="canonical" href="http://blog.yoshitomo.org/" />
  19. <style type="text/css" media="all">/*<![CDATA[ */
  20. /***** inline CSS *****/
  21. <!-- body { margin:0px; padding:0px; } -->
  22. /* ]]>*/</style>
  23. </head>

この部分を出力しているのは、WordPress の画像アップ機能がまだいまいちだったころの定番であった ImageManager 2.5.3 です。サムネイルをクリックしたときにポップアップウィンドウを開くためのものだと思いますが、私の場合は同じウィンドウで開くようにしているので停止させることにしました。

ちなみに、Head Cleaner の効果はなかなかのようです。設定も特にまだ変えてませんが、速度の向上が体感できました。

Comments (0)

HTML convert time: 0.157 sec. Powered by

Images is enhanced with WordPress Lightbox JS by Zeo