プラグインがロードされるのにかかる時間とそれらがどのページにロードされるかを測定する方法はありますか(コード全体を把握せずに)。さらに、どのプラグインがどのページのファイルをロードしているかを調べて、関係のないものにロードされているものを見つけたいと思います。
不必要なデータベースクエリを行い、多数のファイルをページにロードする、貧弱に書かれたプラグインがたくさんあります。
多数のプラグインを使用しているのでなければ、余分なJavaScriptファイルとCSSファイルはそれほど大きな問題ではありません。私は30か40のアクティブなプラグインを持っていた大規模なサイトで仕事をしてきました、そしてそれは問題になることができるのでサーバーはどんな高トラフィック期間の間にもクラッシュするでしょう。
このウィザードはあなたのテーマとプラグインをスキャンし、それらを組み合わせて縮小したり、それらをどのページにロードするかをお勧めします。
PluginデータベースのクエリとCPU時間を監視するには、footer.phpの最後に次のコードを追加します。
<!--<?php echo $wpdb->num_queries;
_e('queries'); ?>.
timer_stop(1); _e('seconds'); ?>.-->
これにより、各ページのソースを表示したり、いくつのクエリが行われているのか、それらのクエリにかかる時間がわかります。
例:
もちろん、これはどのPluginがクエリを担当しているかをあなたに教えてくれるわけではありませんが、さまざまな組み合わせを無効にして有効にしながらテストを行うことを可能にします。
あなたはいつでもそれらすべてを新しいプラグインに連結して代わりにそれをアクティブにすることができますが、あなたは正直なところあなたの時間を無駄にしています。それらを別々にしておくことによる保守容易性は、パフォーマンス上の利点を小さくします...
ただし、大量のプラグインを使用するとサイトのパフォーマンスに影響があることに注意してください。siege(http://www.joedog.org/index/siege-home)などのベンチマークツールを使用して、それを簡単に測定できます。
また、WP自体がリソースの浪費であることを見失ってはいけません。あなたはページロード時間から数ミリ秒マイクロ・オプティマイズすることができます、しかし最初の100ms以上の逐語的なWPロードを考えると、良いphpフレームワークを使って書かれたアプリケーションのより典型的な10-40msより個人的には気にしません。
Debug Queriesプラグインもこのタスクに役立ちます。もっと具体的になりたい、そしてコードを扱う気にしないのなら、 Plugin Test Drive (テストされたプラグインを分離する)を使います。各プラグインファイルが呼び出される直前と直後に次の関数を追加します。
<?php
function getTime()
{
$a = explode (' ',microtime());
return(double) $a[0] + $a[1];
}
$Start = getTime();
?>
<?php
$End = getTime();
echo "Time taken = ".number_format(($End - $Start),2)." secs";
?>