The Thorを使い始めてからWordpressの再利用ブロックが正常に動かなかったり、一部のボタンアイコンが動作しなかったりしたので、調べてみました。
※下の方に修正方法も載せていますが、テーマのphpファイルに手を入れており、最悪全くwordpressが動かなくなることもありますので、修正については自己責任にてお願いいたします。
2019-11-21追記
The Thorのバージョン: 1.6.1がリリースされたので適用したところ、各JS処理を内包する大本<$(function() {~}の部分>のfunctionの「$」の表記は「jQuery」に修正されていました。
これにより、今まで起きていたJSエラーは発生しなくなりましたが、 $(function() {~}の内側の各処理におけるJSの定義にはまだ「$」が使われていたので、ボタンが押しても反応しない、The Thorで使えるはずの機能が使えないなどある場合にはやはりテーマファイルの修正が必要かもしれません。
原因はThe ThorのJSエラーっぽい
ボタンの挙動がおかしいこともあり、コンソールを調べてみたところ下記のようなエラーが発生してました。
※コンソールはChromeでF12キーを押すと、開発者ツールが表示され、その中の開発者ツールの「Console」タブに表示されます。
※エラー見たい方はConsoleタグを開いたまま、画面をF5キーなどでリロードしてあげてください。
エラーが起きていたファイルは下記の2ファイルで、原因はどうやらJqueryを使う記述で$()のように書いてたためでした。
- /themes/the-thor/admin/js/icon_window.js
- /themes/the-thor/admin/js/uploader.js
WordPressでjQueryを使う場合は$が使えず、jQueryと記述する必要があります。
修正方法
WinScpなどを使い、上記のエラーが起きていたファイルが存在する「/themes/the-thor/admin/js/」を開きます。
icon_window.jsの修正
$('#show').click(function(e) {
$('#popup, #layer').show();
});
$('#close, #layer').click(function(e) {
$('#popup, #layer').hide();
});
jQuery('#show').click(function(e) {
jQuery('#popup, #layer').show();
});
jQuery('#close, #layer').click(function(e) {
jQuery('#popup, #layer').hide();
});
uploader.jsの修正
こちらも「icon_window.js」同様に”$”をすべて”jQuery”に変換してください。
修正後はブラウザのキャッシュをクリア
ChromeやIEであれば、「Ctrl」 + 「Shift」 + 「Delete」キーの同時押しでキャッシュ削除画面が出てくるので、そこで期間を「全期間」に設定し、削除してあげてください。※ここ大事です
修正後はもう一度ブラウザでコンソールを見て、エラーが無くなっていれば対応完了です。
僕の場合はこの処理で再利用ブロックの使用や、挙動のおかしかったボタンの動作も正常になりました。