見出し画像

Shortcode spoilerが動かなくなったと思ったらplugin同士のコンフリクトでした。

Wordpressを利用したウエブサイトを運営しておりますが、昨日からShortcodes ultimateで記載したspoilerが動かなくなっているのを発見しました。spoilerはタイトル部分をボタンと共に表示させておき、ボタンをクリックすると内容が表示され、もう一度クリックすると内容が隠れる機能の部品ですが、ブログ内容に応じて頻繁に使うというものでもなく、たまに法令の引用などで条文などを内容として記載することがあります。spoilerが動かなくなっていたというのは、spoilerの表示はできていましたが、ボタンをクリックしても内容の表示がだせない、動かない状態となっていました。

運営しているwebsite(https://tm106.jp)はAutoptimizeというCashe系のプラグインを導入していますので、最初はAutoptimizeの設定を疑い、JSのinlineのチェックを疑いましたが、チェックを外しても復旧せず。他のAutoptimizeの設定の枝をいくつか試したものの復旧せず。さらにAutoptimizeのJSコードの最適化のcheckも外しても復旧せずで、途方に暮れる感じでした。

一旦休息後、動かないのはJSファイルが破損したか、読み込めていない筈なので、spoilerが動いていたころから後の時点でインストールしたPluginを疑い、AutoptimizeのJSコードの最適化を停止しながら順次疑わしいpluginを停止します。Leverage Browser Caching、LINE Auto Post、One Click Accessibility、Post to Google My Business、WP External Linksなどなど。疑わしいものをcheckすると言っても実際は止めてもあまり問題のないものを停止します。これらを順次停止したところで、spoilerが動かずは変わりません。そこで素人ながらF12のdeveloper toolを起動させると、JQueryのerrorが12個もあり、すぐには解決できそうもない感じがしました。

でもJQueryのerrorらしいことははっきりしてきたので、headerに<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>のCDNを追加してみることに。するとerrorがZeno font resizerというpluginのjqueryだけになり、これを無効化するとspoilerが復活しました。Goal In!!

Zeno font resizerはサイトを訪れた人が文字サイズを変更できるpluginで、それがコンフリクトを生じていたとは。軽そうなプラグインでも問題は起こるもんですね。この手の問題は、食べ合わせ見たいなものでしょう。食べ物の相性みたいに、たまたま同じ引数や変数を使用した際に生じるplugin同士やテーマとplugtinの相性だと思います。本当は、もっと原因を追求して、spoilerが動かないのはこういう訳と言いたいところですが、そこまでなんちゃってweb管理人のレベルでは時間がかかり過ぎそうです。


この記事が気に入ったらサポートをしてみませんか?