過去に作ったWPに機能を追加する方法としてプラグインを開発して追加しようという話になり、開発後プラグインを追加して有効かしたところ、前に入れていたいくつかのプラグインに不具合が生じた。

なにか重複したのかプログラムで干渉したのか、ひとまずブラウザでエラー確認してみたところ、以下のようなエラーが確認できた。

 

$.cookie is not a function

 

jQueryでクッキーの内容を扱うもので、以前に作ったいくつかのWPで自分はjQueryをつかってクッキーを利用して情報を保存したりで組み合わせたシステムがある。

今回入れたプラグインを有効化して不具合がでたのであれば、おそらく今回のプラグインの問題が確定なのだろう。

まあプラグインの開発環境が違えばプログラムの内容も違うことだってあるだろうし、他人同士が作ったものを色々とWPに入れて機能拡張していくのだから、相性悪ければこうなることをリスクとして受け入れた上でWPを利用するべきだし。

でもまあだからといって開発は自分なわけで、そのシステムが動くようにするには自分が改修するしかないので、原因を調べてみると、ひとつ思い浮かぶことがあった。

それは、jQueryのバージョン。

以前に作ったものはjQueryは1.12.4。v1の最終はここ。その後、いまはv3まで開発進んでおり、今回プラグイン開発はv3を利用している。

なんでもjQueryでのcookieの扱いは終了しているのだとかなんとか。

幸い、開発はv1知識でプログラムしていたのでプラグイン有効化する際にjQuery3を読み込む部分をコメントアウトし再度有効化したところエラーなくなり他機能も正常動作が確認できた。

WPのバージョンをアップデートするだけでなく、テーマの内容もいまの時代に見合った内容なのか確認しながら改修する必要あるなーと感じた。

ちなみに、この不具合の解消につながったサイトは以下です。感謝します。

 

勉強したことのメモ
https://taitan916.info/blog/archives/3592