• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

株式会社ハイファイブクリエイト

東京都を拠点にWebサイト制作やシステム構築、WordPress保守管理やウェブコンサルティングを提供。

  • SERVICE
  • ABOUT
  • WORKS
  • BLOG
  • NEWS
  • CONTACT
ホーム / ブログ / TIPS / WP REST APIのエンドポイントを無効にする

WP REST APIのエンドポイントを無効にする

池田祐太郎 | 2017年12月19日 公開


WordPress4.7からWP REST APIがデフォルトで有効となりました。
特に設定していなければ、管理画面にログインしていなくとも投稿や固定ページ、カスタム投稿やメディアといったコンテンツ一式を取得、表示することが可能です。

参考:WP REST APIを使って静的HTMLページにWordPressの投稿情報を表示する

勝手に情報を取得されると困る、というケースもあると思います。
ここではREST APIでエンドポイントを無効にし、情報を取得できないように設定する方法をご紹介します。

WordPress4.7での動作確認となり、今後変わる可能性があります。

記載するソースコード例

非ログイン状態でのREST API エンドポイントを無効にするソースコードです。
「namespaces」で例外を追加しており、例ではoembedとcontactform7を追加しています。
不要な場合は該当箇所を削除します。

/*
 * REST APIを無効にする
 *
 * Embed以外
 *
 * License: GPLv2 or later
 */
function nendebcom_deny_restapi_except_embed( $result, $wp_rest_server, $request ){
 
    $namespaces = $request->get_route();
 
    // /oembed/1.0
    if( strpos( $namespaces, 'oembed/' ) === 1 ){
        return $result;
    }
    // /contact-form-7/v1
    if( strpos( $namespaces, 'contact-form-7/' ) === 1 ){
        return $result;
    }
 
    return new WP_Error( 'rest_disabled', __( 'The REST API on this site has been disabled.' ), array( 'status' => rest_authorization_required_code() ) );
}
add_filter( 'rest_pre_dispatch', 'nendebcom_deny_restapi_except_embed', 10, 3 );

上記コードをfunctions.phpに記載します。バックアップは必ず取るようにしましょう。

確認方法

無事にREST APIが無効になっているかの確認方法は、以下のアドレスにアクセスします。

https://(サイトURL)/wp-json/wp/v2/posts/?p=1

※id1の記事のREST APIにアクセスします

下記のような文言が表示されていれば、無事REST APIが無効になっています。

{"code":"rest_disabled","message":"The REST API on this site has been disabled.","data":{"status":401}}

ちなみに、当サイトの場合無効にしていないため、表示されています。
https://highfivecreate.com/wp-json/wp/v2/posts/?p=1

コードはWordPress4.7 の WP REST API を無効にする – ねんでぶろぐを参考にさせていただきました。
参考元では、JetPackやGutenbergへの対応方法が記載されています。

メールコンサルティング
WordPress保守管理サービス

Filed Under: TIPS, WordPress 関連タグ:WordPressカスタマイズ

池田祐太郎

WordPressの導入を10年以上にわたって手掛けており、主に小〜中規模のコーポレートサイト・ECサイト・ブランドサイト等の企画・開発・保守・コンサルティングなどを行ってきました。2012年にハイファイブクリエイトを創業し、現在はWordPressの保守やコンサルティング、ディレクションや開発業務などを担当しています。 プロフィール詳細

この記事と関連する記事

WordPressの固定ページでタグやカテゴリーを使いたいときはカスタム投稿タイプを検討する
2022年1月27日
タグ: WordPressカスタマイズ
カテゴリー: WordPress
フレームワークを使ってWordPressサイトをリニューアルしたら表示速度が速くなった話
2018年6月4日
タグ: Webサイト高速化, WordPressカスタマイズ
カテゴリー: WordPress, ホームページ制作, モバイル
WP固定ページや投稿内でphpファイルを読み込むショートコード
2018年4月1日
タグ: WordPressカスタマイズ
カテゴリー: TIPS

人気記事

  1. 同一サーバー上に構築するWordPressのテスト環境の作り方
  2. サイト制作の要件定義書に普段書いている内容(ダウンロード可)
  3. ダウンロードして即使えるサイトマップ(サイト構成図)のテンプレート5点
  4. コラム:class名とid名はどうやってつければいい?
  5. Elementorで表を作る3つの方法
  6. 【2022年最新】WooCommerceで作られた国内ECサイト一覧まとめ

最初のサイドバー

WordPress保守管理サポート

Search

最近の投稿

  • なぜかSSL化されないエックスサーバーのWordPress 簡単インストール機能でhttpsに変更し常時SSLを実現する方法
  • ブラウザ戦争の一区切り。Internet Explorer のサポート終了で思うこと
  • エクセルを使って顧客データから任意の条件に合う顧客を抽出する方法
  • 2022年以降WordPressのテーマを選ぶ際にこれだけは注意しておきたいポイント
  • ブロックエディタを拡張するSnow Monkey Editorプラグインはコーポレート+ブログに適切

カテゴリー

  • CSS初心者
  • HTML初心者
  • TIPS
  • WooCommerce
  • WordPress
  • エステサロン
  • お知らせ
  • キュレーション
  • サイトマップ
  • システム会社
  • デベロッパーツール入門
  • ブログ
  • ホームページ制作
  • ホームページ制作無料講座
  • メール
  • モバイル
  • 仕事のこと
  • 制作実績
  • 整体院
  • 美容院
  • 雑感

タグ

Android aws Backlog BtoC CMS css Dropbox Paper elementor google workspace Gutenberg HTML IE10 iPhone jQuery Mac php SEO SNS ssh SSL Sublime Text Webサイト高速化 WordPress WordPressカスタマイズ WordPressテーマ WordPress構築調査 WPRocket アクセス解析 アプリ クラウド クラウドソーシング サブスクリプション サーバー ショートカット スマホサイト スマートフォン ツール フルサイト編集 ブログ プラグイン マーケティング リニューアル 保守管理 最適化 集客するサイト構築

アーカイブ

CONTACT

お問い合わせはこちら

Footer

  • PRIVACY POLICY
  • 特定商取引法に基づく表示
  • 転載・引用について
  • Facebook

© 2022 high five create All rights reserved.