Easy FancyBoxプラグインのMinifyエラーを対策
公開日
Easy FancyBoxプラグインと、W3 Total Cacheのようなキャッシュ管理プラグインにあるMinify機能を併用することでエラーが出始めました。
原因と対処方法について調べてみましたので、まとめたいと思います。
Easy FancyBoxについて
Easy FancyBoxはWordPressプラグインであり、インストールしただけで画像などをポップアップして綺麗に整形表示してくれる、よくある定番機能を提供するものです。
今回画像のポップアップをしておきたいと思ったので、プラグインの検索から最初にヒットしてそのままインストールしてました。
機能自体はカスタマイズすることなくとも、インストール後にすぐ有効になっていたので大変便利に使っております。
起きてるエラーについて
どうもEasy FancyBoxをインストールした後ぐらいからWEBサーバーのログに以下のエラーが出力され出した模様です。
1 |
[/xxxxx/wp-content/cache/minify/000000/**MINIFY-FILENAME**] [http://**URL**] File "/xxxxx/wp-content/plugins/easy-fancybox/fancybox/jquery.fancybox-1.3.6.pack.js" doesn't exist |
ログからだけの個人的な解釈のみですが、書かれていることを以下のように読み解きました。
- 起きた問題は、該当ファイルが存在しないというエラー。
- エラーが示す該当ファイルは、jquery.fancybox-1.3.6.pack.jsというファイル。
- エラーは、**URL**への参照時、**MINIFY-FILENAME**を作成する際に起きた。
どのプログラムが出力したログか記載はありませんが、**MINIFY-FILENAME**のディレクトリパスから、Easy FancyBoxと一緒に使っているW3 Total Cacheが出力しているんだと推測。
対処の確認
WEBで検索してみたところ、現象に近い内容を報告したフォーラムがいくつか見つかったのですが対策まで記載されたものがなく、なかなかよい回答にめぐり逢えませんでした…。
しかしながらその後、インストールしたEasy FancyBoxプラグインのディレクトリを詳しく見ていると、なんとどこにも告知されていない大事な事が書かれた取扱説明書(README)があることを発見!
そして、このREADMEファイルに解決につながるヒントがありました。
wp-content/plugins/easy-fancybox/readme.txt
= Plugin conflicts =
:
– When using **WP-Minify**, the javascript files likefancybox/jquery.fancybox-X.X.X.pack.js
and others need to be excluded from minification.
– When using **W3 Total Cache**, minification needs to be switched off. You can try to run **WP-Minify** alongside W3TC to be able to exclude fancybox files (as suggested above) ans still have page speed benefit from minification.
具体的な設定方法のガイドは含まれてませんが、だいたい言いたいことが伝わった気がします。
かいつまんでいうとこういうことでしょう。
- WP-MinifyとかW3 Total CacheとEasy FancyBoxを使っているとMinify機能をオフにしないといけない。
- もしくは、jquery.fancybox-X.X.X.pack.jsのようなJavascriptファイルやその他関連ファイルをMinify対象から除外するとうまくいくかもね。
W3 Total Cacheでの回避設定
ということでREADMEに書かれたことが出来るのかやってみました。
と言っても、何をどう設定したら良いのかさっぱりわかってません。
これまたWEBを検索して、W3 Total Cacheの設定方法やら、書き下すべきファイルがなんなのかやらを調査。
結局、答えが書かれた参考ページは見つからなかったという残念な状況でした。
そこで自分なりに試行錯誤を繰り返して研究、問題が収束しているだろうと思われる設定に落ち着きました。
やったことの最終案ですが、次の画面まで進みます。
[WordPress管理画面] – [Performance] – [Minify]
表示されるMinify設定画面から、以下のように設定箇所へ対象ファイルを記載して[Save all settings]ボタンで更新を反映。
- [Advanced] – [Never minify the following JS files:]
wp-content/plugins/easy-fancybox/fancybox/jquery.fancybox-1.3.7.js - [Advanced] – [Never minify the following CSS files:]
wp-content/plugins/easy-fancybox/fancybox/jquery.fancybox-1.3.7.css
ここでの2箇所にはテキストエリアが設置されており、該当するファイルを1行単位に追加していく作りだそうです。
また、パス表記はwp-content以下の相対パスで記載するんだとか。
あくまでWEB検索しただけで、きちんとマニュアルだとかソースを見たわけじゃないのでフワフワした感じですが、とりあえず今はこのような感じで登録。
設定後の気付き
全く確証がありませんが、回避設定にてしばらく放置してるけどエラーは出なくなったんだと思います。
ということで一旦、解決ということにします。
全体を通して、本当はW3 Total CacheやEasy FancyBoxのドキュメントなりソースを読んでみないとなんとも言えないと思いますが、ちょっとやりたいことの本質じゃないし、とりあえず効果があったっぽいので今は放置…。
レスポンシブ広告
関連記事
関連記事はありませんでした