WordPressには「XML-RPC」という、遠隔からサイトを操作できる便利な機能があります。
ただこの機能、セキュリティリスクになることもあります。
そこで当記事では、XML-RPCの基本と、WordPressでの無効化方法をわかりやすく解説します。初心者の方でもすぐ実践できる内容ですので、ぜひ参考にしてください。
目次
XML-RPCとは
XML-RPCは、XML形式のデータをHTTPでやり取りし、WordPressを外部から操作できる仕組みです。
具体的には、スマホのブログ投稿アプリや外部のサービスで、WordPressに記事の投稿や編集などを行うために使われます。
便利な一方、外部からのアクセス経路になるため、セキュリティ面では注意が必要です。
なぜXML-RPCを無効化すべき?
遠隔操作の仕組みを利用したサイバー攻撃の標的になることがあるためです。
特に代表的なのが「ブルートフォース攻撃」と呼ばれるもので、パスワードを何度も試して不正ログインを狙います。また、サイトの負荷が高まったり、情報が漏洩するリスクもあります。
そのため、XML-RPCを利用しない場合は、不要な通信を遮断するため無効化するのがおすすめです。WordPressサイトへの不要なログイン試行対策や、ピンバック機能の悪用防止にも有効です。
WordPressでXML-RPCを無効化する方法
XML-RPCを無効化する方法は主に2つあります。プラグインを使うかテーマのコードを編集する方法です。
プラグインを使う
「Disable XML-RPC-API」などのプラグインをインストールし、有効化するだけで無効化できます。
特に設定項目は無いので、ただ有効化するだけでOKです。
プラグインのインストール方法はこちらの記事を参考にしてください。

WordPressで制作したサイトは、プラグインを使って簡単に機能を拡張することができますよね。当記事では、プラグインのインストール方法について解説してきます。 おすすめプラグインを見る プラグインのインストール方法は2つ プラグインのインストール方法は、下記の2つになります。基本的には、...
functions.phpにコードを追加する
テーマのfunctions.phpに以下のコードを追加するだけでも無効化できます。
プラグインの入れすぎは避けるべきなので、できるだけこちらの方法がおすすめです。
add_filter('xmlrpc_enabled', '__return_false');
テーマファイルを直接編集するのに抵抗がある場合は、次のようなプラグインを利用すれば安心です。

WordPressの「functions.php」ファイルは、初心者はあまり触らない方が無難です。 色んなカスタマイズが可能な反面、操作を間違えるとエラーが出てしまうリスクがあるからです。 そこで本稿でご紹介するのは「Code Snippets」というプラグイン。functions.ph...
テーマファイルを編集せずに、専用のフィールドにコピペして実現できます。
無効化されているか確認するには?
以下をコピペして、あなたのサイトURLに差し替えてからアクセスすれば確認できます。
あなたのサイトURL/xmlrpc.php
アクセスしたときの状態は以下のように判別できます。
※サーバーやセキュリティプラグインによって表示が異なる場合があります。
無効化後の注意点
XML-RPCを無効化すると、次のような機能が使えなくなる点に注意が必要です。
- スマホアプリ(WordPress公式アプリなど)からの投稿や編集
- 外部サービスとの自動連携(一部のSEOツールなど)
もしこれらの機能を利用する場合は、XML-RPCを完全に無効化せず、アクセス制限やセキュリティ対策を組み合わせる方法を検討してください。
たとえば、Basic認証を設定したり、特定IPのみ許可するなどの対策になります。設定する場合は、下記記事を参考にご覧ください。

WordPressサイトにアクセス制限をかけたいことってありますよね。 会員限定サイトなどの運営時や、セキュリティの面からもサイトにアクセス制限をかけたりします。最もメジャーな手段が「BASIC認証」と呼ばれる認証方法です。 プラグインを使って設定したり、一般的なサーバーなら管理画面から...

「サイトへの不正アクセス、フォームから飛んでくるスパムがひどい。」 そんな時には「.htaccess」を編集してアクセスをブロックする対策が有効です。シンプルで効果的な対策なので、ぜひ試してみてください。 当記事では、初心者の方も安心して取り組めるように、わかりやすくご紹介します。 ...
まとめ
XML-RPCは、スマホアプリや外部サービスとWordPressをつなぐ便利な機能ですが、セキュリティリスクもあります。特に使っていない場合は、無効化しておくのが安全です。
プラグインやコード追加でかんたんに無効化できますので、ぜひ実施してみてください。まずは自分のサイトでXML-RPCが有効になっていないか確認し、使っていなければ無効化を検討しましょう。
WordPressテーマ集
コメント