クラウディア窓辺さんが警告をうけたのでAIを使って黙らせた話
はじめに
こんにちは。10年以上ほったらかしにしていたWordPressのサイトを久々に整備しました。
とくに問題もなかったので、そのままでいましたが、常にいつか問題がおきるのでは?と頭の隅にもやもやしたものがあったのですが、仕事も全然関係ない分野にいましたし、いろいろ設定周りで面倒なんだよな⋯という、昔の記憶がジャマをしてなかなか動き出すことができずにいました。
Googleドメインがサービス終了し、他のサイトに移管したドメインの整理のついでにサイトの方もいい加減になんとかしないと⋯という感じで、いろいろいじり始めたところ、久々に開いた管理画面に、クラウディア窓辺さんがいました。
懐かしいやら、申し訳ないやら複雑な気持ちになりつつ、クラウディア窓辺さんも一緒にあたらしいサイトに来てもらうことに⋯。
引越先のWordPressの管理画面で公式からインストールしようとすると、なんかもう削除されててインストールできくなっていたので、バックアップからzipにしてインストール。
もろもろ設定して環境を整えて、サイトの運用を開始するまでは問題なかったのですが、本格的にサイトをいじろうと、Wordpress をデバックモードにしたところ、Notice
が表示されました。
Notice: Function _load_textdomain_just_in_time was called incorrectly.
Translation loading for the hello-claudia domain was triggered too early.
This is usually an indicator for some code in the plugin or
theme running too early.
Translations should be loaded at the init action or later.
Please see Debugging in WordPress for more information.
(This message was added in version 6.7.0.)
in /xxxxxx/app/public/wp-includes/functions.php on line 6114
まあ、古いプラグインですし、公開も終了していますので、さもありなんな状況です。
やっぱりWordPressはめんどくさいなぁ⋯と思ったのですが、今流行のAIで解決できたら面白いかも⋯と思いつきまして、やってみました。
ローカル環境を用意する
まず、テスト環境を用意するのも昔はXAMPを使って⋯みたいな感じだったのですが、最近はどうなの?って思って調べたら(というか、Geminiに聞いた)、ローカル環境を管理するツールがありました。
なにこれ、めちゃくちゃ便利だし、めんどうなSSLもローカル用に設定できちゃったりする。
というわけで、このサイトを参考に、ローカルのテスト環境を用意。
SSLを設定するのがちょっと面倒ではあるけど、昔にくらべたらもう、魔法か?ってくらい簡単でした。インストール時にhttp://
と固めて記録されてしまうところが何箇所かあるので、それをうまくhttps://
に置換えできれば問題なく動きます。
サイトの設定やらなにやらも「All-in-One WP Migration」を使って問題なく移設。こういうツールも10年前はなかなかなくて、スクリプト自作してたりした、うっ頭痛が⋯。
VS Code Insidersの準備
さて、問題解決してくれるAIは、Github Copilotさんです。Agent Modeでテキパキやってもらいたいと思います。ただ、それにはVS CodeにGithub Copilotの機能拡張をインストールして動かす必要があって、しかもVS Codeは通常のバージョンでなく、VS Code Insidersというバージョンで作業する必要があります(2025年3月現在)。
- VS Code Insidersをインストール(VS Codeと併存できます)
- Github Copilotの機能拡張をインストール
- さらにプレリリースバージョンへ切り替え(2025年3月現在)
Github Copilotさんにお願いする
設定が完了したら、Copilotのチャットウィンドウを開き、右下のドロップダウンメニューから、
- エージェント
- Claude3.7 Sonnet(Preview)
を選択します(いろいろ試して、Claude3.7が一番精度よい印象)。
あとは、hello-claudia.phpを開いた状態で、チャットウィンドウで
以下の警告がでました。
<上記のエラー文>
とか聞いてみます(改行をする場合は、Shift+Enter)。
あとは、コーヒーでも飲みながら数分まちます。
上記のように進捗が随時表示されます。コードの修正が終わると、以下のような表示になるので、問題ななければ、「保持」をクリックして修正を反映します(わかりやすいコメントも追加されるので、すごく助かります)。
管理画面を再読込みして、警告が表示されなくなれば、終了です。
警告が消えない場合は、「まだ警告が出ますけど⋯」と追加の質問をしていくと、同じ階層や、別の階層のファイルを検索して、他のエラーの原因の箇所を見つけて修正案を提示してくれます。
ほんとにコードに触らないで解決してしまったので、驚きです。
他にもいろいろ試してみましたが、〇〇がインストールされてないので、brew install ◯◯
を実行してもいいですか?とか聞いてきて実行もしてくれたりもします。笑い事でなく、中に誰かいるの?って感じになります。すごいよね。
おわりに
実際には、もっと面倒なこと(他のプラグインの警告やファイルがAgent Modeがガシガシとファイルを上書きして元のファイルに戻れなくなったり、ローカル環境ではなく個別ファイルを何度もアップしてのデバックだったり⋯)もあったのですが、省略していい感じの話にしています。
とはいえ、今回の感想としては、WordPress周りもそうですが、サーバーのコンパネも使いやすくなっていて、ワンクリックで環境が整ったりで終始楽しく作業できました。昔の苦労したトラウマがあったとして、それがもっと過酷になっている界隈っていうのは稀で、たいていは便利になってたり、楽になってたりするもんなのだなぁって思ったのと、しばらく離れいたからこそ、そう感じたのかもしれない⋯とか思ったりしました。
Discussion