AIの登場により、WordPress開発者の働き方が変化しています。AIを活用することで、コードの生成やエラーのトラブルシューティング、使い慣れないAPIの仕組みの理解、自然言語による指示からのプロトタイプ作成など、さまざまな作業を効率化できます。しかし、AIが生成したコードをそのまま本番サイトに導入できるとは限りません。

WordPress開発では特にこの点が重要になります。サイトの設計、パフォーマンス、セキュリティ、アクセシビリティ、保守性に関する判断には、プロジェクト全体への理解が欠かせません。AIが生成したコードが、既存のプラグインやテーマ、API、ビジネス要件と適合するかどうかを、開発者自身が見極める必要があります。

AIは解決策の提案から実装まで支援してくれますが、そのアプローチが適切か、誤った前提に基づいていないか、意図した問題をきちんと解決できているかを評価するのは、あくまで開発者の役割です。

今回は、数名のWordPress開発者の実体験も交えながら、AIを活用する際にどのような判断を行っているのか、実際の開発現場での取り組みをご紹介します。

AIが生成したコードにもレビューが必要

AIは実在しない関数やAPIを提案したり、プロジェクトの要件を誤解したり、誤った前提に基づいてコードを生成したりすることがあります。また、一見しただけでは気づきにくいバグが混入する可能性もあります。

生成されたコードには、入力値の検証やサニタイズ、出力時のエスケープ処理といったセキュリティ対策が欠けている場合もあります。コードの生成方法にかかわらず、こうした対策はWordPressのセキュリティガイドラインでも推奨されています。

具体例として、AIツールを使ったWordPressプラグインの開発手順を紹介した記事を公開しています。この記事では、特定の操作を制限したユーザー権限を持つプラグインを作成する実例を取り上げたのですが、その過程で、Cursorを使って「クイック編集」のリンクを削除しようとしたところ、「編集」機能まで削除されてしまうことがありました。画面上の変更が指示どおりに行われたとしても、本来そのユーザー権限で利用できるはずの機能が維持されているか、確認する必要があったのです。

ここで重要なのは、単にAIにやり直しを指示することではなく、変更を指示した機能だけでなく、変更の影響を受けるべきではない既存の機能が、引き続き正常に動作するかどうかも確認する必要があります。

コードを書く前に、まずは解決すべき課題を理解する

WordPress開発者に求められるのは、コードを書くことはもちろん、まず解決すべき課題を理解し、ビジネス上の要件を技術的な解決策に落とし込む必要があります。

具体的には、何を開発するのか、各機能をどのように連携させるのか、長期的にビジネスにどう貢献するのかを考えます。そのためには、適切なシステム設計の選択、メリットとデメリットの比較検討、将来的なメンテナンスの見通しなども欠かせません。

Mark Szymanski氏の経験は、こうした開発者の役割をよく表しています。Szymanski氏は、見た目を整えることが中心だった仕事から、AIを活用してより複雑なビジネスアプリケーションを構築する仕事へと移行しました。単に動作するサイトを短時間で完成させることではなく、ビジネスが抱える根本的な課題を解決するために、どのような技術を組み合わせるのが最適化を判断することを目指しています。

Jos Velasco氏は、AIを使ってサーバーデータを分析し、手作業では発見に時間がかかるパターンを特定しているといいます。ただし、AIが何らかのパターンを発見しても、すぐに変更を加えるわけではありません。実際のサイトの動作と照らし合わせて分析結果を検証し、どのような対応が必要かを判断しています。

コードの生成からレビューへ

AIがコードを生成するスピードにレビューが追いつかなくなると、今度はレビュー作業が開発全体のボトルネックになります。

重要なのは、AIが生成したコードが動作するかどうかだけではありません。意図したとおりに機能するか、適切なWordPressのコーディング規約に準拠しているか、アプリケーション全体との整合性が取れているか、本番環境に導入しても問題ないかは、開発者が判断する必要があります。

Jos Velasco氏も、AIを活用したWordPressへのコードの貢献について、レビューの重要性を指摘しています。AIを使えばパッチの作成を効率化できますが、その変更をプロジェクトに取り入れるべきかどうかは、コントリビューターやコミッターが判断しなければなりません。

WordPressのAI貢献ガイドラインでも、提出するコードの内容を理解し、レビューと検証を行い、必要なテストを実施することは、コントリビューター自身の責任であると明記されています。こうした確認は、パッチをメンテナーに提出する前の段階から必要です。

一方、開発者はレビュー作業そのものにもAIを活用しています。Rich Tabor氏は、Claude CodeとCopilotを組み合わせた開発手法を紹介しています。一方のツールで生成したコードをもう一方でレビューし、技術的な判断は自身で行うというものです。また、Mike Auteri氏も、開発ワークフローに自動コードレビューを取り入れています。

Auteri氏が採用しているのは、テスト駆動開発(TDD)という手法で、人間がテストを書き、AIがそのテストを満たすコードを実装します。 開発者があらかじめ期待する動作をテストとして定義することで、要件の解釈から実装までをAI任せにせず、コードが満たすべき条件を明確にできます。

なお、テストに合格したり、AIによるレビューで問題が見つからなかったりしても、そのコードを本番環境に導入してよいとは限りません。GitHubのCopilotに関するガイドラインでも、自動レビューでは問題を見落としたり、実際には存在しない問題を指摘したりする可能性があると説明されています。AIによるレビューは、あくまで人間によるレビューを補完するものであり、代わりになるものではありません。

プロンプトの書き方だけでは不十分

AIに的確な指示を出すスキルは重要ですが、優れたプロンプトを書けることが、AIを活用する開発者にとって最も重要なスキルというわけではありません。

それ以上に重要なのは、AIにどのような背景情報を与えるべきか、どのような制約のもとで作業させるべきか、そして何をもって成功とするかを理解していることです。

Mark Szymanski氏は、AI Operating System(AIOS)と呼ぶ独自の仕組みを使って、AIに必要な背景情報を提供しています。その一環として、ビジネスに関する情報、開発方針、クライアントとの過去のやり取りなど、プロジェクト固有の知識をファイルにまとめています。毎回汎用的なプロンプトでAIに指示を出すのではなく、プロジェクトの背景やビジネス上の目的を理解させたうえで作業を進める方法です。

とはいえ、十分な背景情報を与えたからといって、AIの出力を理解する必要がなくなるわけではありません。WordPressやウェブ開発の基礎知識がなければ、動作するコードを生成できたとしても、そこにどのようなトレードオフがあるのか、プロジェクトに適した実装なのかを正しく判断できない可能性があります。

これからのWordPress開発者に求められるもの

AIを使いこなせるからといって、それだけでWordPress開発者としての価値が高まるわけではありません。AIを活用して作業を効率化しながらも、どのような方法で開発を進めるか、生成されたコードに問題はないか、長期的に保守できるかといった点を、自分で判断できるかどうかが重要になります。

AIはコードの作成を手伝ってくれますが、それが本当にプロジェクトに適した解決策なのかを判断するには、開発者の知識と経験が欠かせません。

Kinstaでは、こうした開発作業を支えるさまざまな機能とサービスを提供しています。ステージング環境では、変更を本番サイトに反映する前に安全にテストでき、標準搭載のパフォーマンス監視ツールでは、ページの表示速度が遅い原因を調査可能です。また、サーバーに関連する問題が発生した際には、WordPressに精通したエンジニアが24時間365日体制でサポートします。WordPress開発・運用に、ぜひWordPress専用マネージドクラウドサーバーをお試しください。

Bud Kraus

2009年からWordPressの対面・オンライン講師として活動するほか、サイト開発やコンテンツ制作にも携わっている。これまでに、WordPress関連企業向けの教育動画を制作し、多数の記事を執筆してきた。