---
title: CloudFront 配下での User-Agent の判定方法
description: CloudFront からオリジンサーバに対して、User-Agent は送信されません。そのため、モバイルブラウザの判定に使用する wp_is_mobile() 関数を使うことができず、モバイル用のテーマの振り分けができません。 この場合、以下の手順で対応が可能です。 導入するだけで対応可能。 以下のサポートドキュメントを参照の上，設定を行う。 C3 Cloudfront Cache Contr
---

[コンテンツまでスキップ](https://knowledge.amimoto-ami.com/knowledge/self-user-agent-under-cloudfront#main-content)

- [日本語](https://knowledge.amimoto-ami.com/knowledge/self-user-agent-under-cloudfront)
- [English](https://knowledge.amimoto-ami.com/en/knowledge/detect-and-handle-user-agent-with-wordpress-and-cloudfront)

日本語

翻訳のサブメニューを表示

![Amimoto-dark-ogp.png\]](https://knowledge.amimoto-ami.com/hs-fs/hubfs/Amimoto-dark-ogp.png?height=40&name=Amimoto-dark-ogp.png)

- ホーム
- 製品
- 価格
- ブログ
- 会社

メインナビゲーションを開く

メインナビゲーションを閉じる

- ホーム
- 製品
- 価格
- ブログ
- 会社
- - [日本語](https://knowledge.amimoto-ami.com/knowledge/self-user-agent-under-cloudfront)
    - [English](https://knowledge.amimoto-ami.com/en/knowledge/detect-and-handle-user-agent-with-wordpress-and-cloudfront)

  日本語
  
  翻訳のサブメニューを表示
- [公式サイトへ移動](https://ja.amimoto-ami.com/)

[公式サイトへ移動](https://ja.amimoto-ami.com/)

 ヘルプセンター

- 検索フィールドが空なので、候補はありません。

1. [サポートドキュメント](https://knowledge.amimoto-ami.com/knowledge?hsLang=ja)
2. [Amimoto AMI](https://knowledge.amimoto-ami.com/knowledge/amimoto-ami?hsLang=ja)
3. [活用Tips](https://knowledge.amimoto-ami.com/knowledge/amimoto-ami?hsLang=ja#%E6%B4%BB%E7%94%A8tips)

# CloudFront 配下での User-Agent の判定方法

CloudFront からオリジンサーバに対して、*User-Agent* は送信されません。そのため、モバイルブラウザの判定に使用する *wp\_is\_mobile()* 関数を使うことができず、モバイル用のテーマの振り分けができません。

この場合、以下の手順で対応が可能です。

### A: 最新版の [C3 Cloudfront Cache Controller を使用する場合](https://wordpress.org/plugins/c3-cloudfront-clear-cache/)

導入するだけで対応可能。  
以下のサポートドキュメントを参照の上，設定を行う。

*[C3 Cloudfront Cache Controller の設定方法](https://knowledge.amimoto-ami.com/knowledge/setting-up-c3-cloudfront-cache-controller-plugin?hsLang=ja)*

### B: 古いバージョンの C3 Cloudfront Cache Controller を使用する場合

**※ Amimoto AMIでは  最新版の C3 Cloudfront Cache Controllerへのアップデートを強く推奨します。**

古いバージョンの C3 Cloudfront Cache Controller プラグインでも [*Nginx Mobile Theme*](https://wordpress.org/plugins/nginx-mobile-theme/) プラグイン および、判定処理を functions.php へ追加する事により uesr-agent の判定は可能です。

この方法はWordPress のバージョンによって対応方法が異なるため、以下の手順を参照の上、設定をしてください。<https://wordpress.org/plugins/nginx-mobile-theme/>

- WordPress 4.8 以前の場合、wp\_is\_mobile() を代替する関数を使用する
- WordPress 4.9 以降の場合、wp\_is\_mobile  フィルターフックを追加する

 

#### 1. Nginx Mobile Theme プラグインを導入する

[Nginx Mobile Theme プラグイン](https://wordpress.org/plugins/nginx-mobile-theme/) は Nginx にてUser-Agent 判別を行い、テーマを PC とスマートフォンで別々に使用するためのプラグインです。  
ですが、PC・スマートフォンどちらでも同じテーマを使用しての同一テーマ内で User-Agent 切り替えをする関数を使用する場合でも CloudFront から送られるヘッダデータで切り分けをすることが可能となりますので、まずこちらを導入してください。  
プラグインの詳細は  [Nginx Mobile Theme](https://knowledge.amimoto-ami.com/knowledge/mangaged-preinstalled-plugins-nginx-mobile-theme?hsLang=ja)  をご参照ください。また、使用方法については  [Nginx Mobile Theme の設定と使い方](https://knowledge.amimoto-ami.com/knowledge/mangaged-preinstalled-plugins-nginx-mobile-theme-settings?hsLang=ja)  をご参照ください。

#### 2. 判定処理を functions.php へ追加し、使用する

#### 2-1. WordPress 4.8 以前の場合、wp\_is\_mobile() を代替する関数を使用する

以下の関数をテーマの functions.php  などに追記して wp\_is\_mobile()   の代わりに使用してください。

スマートフォンからのアクセスの場合、CloudFront からオリジンサーバへ CloudFront-Is-Mobile-Viewer というヘッダが送信されるため、PHP 側でこれを判別するように処理をします。

```
function cf_is_mobile() {    $is_mobile = function_exists('wp_is_mobile') && wp_is_mobile();    // CloudFront でスマートフォンと判定された場合、true を返す。    if ( isset($_SERVER['HTTP_CLOUDFRONT_IS_MOBILE_VIEWER']) && "true" === $_SERVER['HTTP_CLOUDFRONT_IS_MOBILE_VIEWER'] ) {        $is_mobile = true;    }    // CloudFront でタブレットと判定された場合、true を返す。    // （タブレットはPCと同じ扱いにしたい場合は、$is_mobile を false にする    if ( isset($_SERVER['HTTP_CLOUDFRONT_IS_TABLET_VIEWER']) && "true" === $_SERVER['HTTP_CLOUDFRONT_IS_TABLET_VIEWER'] ) {        $is_mobile = true;        //$is_mobile = false;        // タブレットをPCと同じ扱いにしたい場合は false にする    }    return $is_mobile;}
```

#### 設定後には必ず CloudFront のキャッシュのクリアを行ってください。   

#### 2-2. WordPress 4.9 以降の場合、wp\_is\_mobile  フィルターフックを追加する

**なお、C3 Cloudfront Cache Controller プラグインの最新版ではこの対応をおこなっているため、ファイルの編集作業は不要です。  
プラグインの更新と更新後のキャッシュ削除を行ってください。**

スマートフォンからのアクセスの場合、CloudFront からオリジンサーバへ CloudFront-Is-Mobile-Viewer というヘッダが送信されるため、PHP 側でこれを判別するように処理をします。

WordPress 4.9 以降では wp\_is\_mobile というフィルターフックが追加されました。  
以下のコードをテーマの functions.php に追加することで UA の判定が可能となります。

```
add_filter( 'wp_is_mobile', function( $is_mobile ) {    // CloudFront でスマートフォンと判定された場合、true を返す。    if ( isset($_SERVER['HTTP_CLOUDFRONT_IS_MOBILE_VIEWER']) && "true" === $_SERVER['HTTP_CLOUDFRONT_IS_MOBILE_VIEWER'] ) {        $is_mobile = true;    }    // CloudFront でタブレットと判定された場合、true を返す。    // （タブレットはPCと同じ扱いにしたい場合は、$is_mobile を false にする    if ( isset($_SERVER['HTTP_CLOUDFRONT_IS_TABLET_VIEWER']) && "true" === $_SERVER['HTTP_CLOUDFRONT_IS_TABLET_VIEWER'] ) {        $is_mobile = true;    }    return $is_mobile;});
```

#### 設定後には必ず CloudFront のキャッシュのクリアを行ってください。

 

設定は以上です。

- [Amimoto Managed Hosting](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#main-content)

    - [基本事項](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E5%9F%BA%E6%9C%AC%E4%BA%8B%E9%A0%85)
    - [スタートアップガイド](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%88%E3%82%A2%E3%83%83%E3%83%97%E3%82%AC%E3%82%A4%E3%83%89)
    - [他社サーバから移行したい](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E4%BB%96%E7%A4%BE%E3%82%B5%E3%83%BC%E3%83%90%E3%81%8B%E3%82%89%E7%A7%BB%E8%A1%8C%E3%81%97%E3%81%9F%E3%81%84)
    - [管理画面のご利用方法](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E7%AE%A1%E7%90%86%E7%94%BB%E9%9D%A2%E3%81%AE%E3%81%94%E5%88%A9%E7%94%A8%E6%96%B9%E6%B3%95)
    - [サーバー接続](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E6%8E%A5%E7%B6%9A)
    - [ご契約・お支払い](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%81%94%E5%A5%91%E7%B4%84-%E3%81%8A%E6%94%AF%E6%89%95%E3%81%84)
    - [よくあるお問い合わせ](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%82%88%E3%81%8F%E3%81%82%E3%82%8B%E3%81%8A%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B)
    - [トラブルシューティング](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0)
    - [プリインストールされているプラグイン](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%83%97%E3%83%AA%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3)
    - [ベンダー別 DNS 設定ガイド](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%83%99%E3%83%B3%E3%83%80%E3%83%BC%E5%88%A5-dns-%E8%A8%AD%E5%AE%9A%E3%82%AC%E3%82%A4%E3%83%89)
    - [活用 Tips (メール編)](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E6%B4%BB%E7%94%A8-tips-%E3%83%A1%E3%83%BC%E3%83%AB%E7%B7%A8)
    - [活用 Tips (キャッシュ編)](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E6%B4%BB%E7%94%A8-tips-%E3%82%AD%E3%83%A3%E3%83%83%E3%82%B7%E3%83%A5%E7%B7%A8)
    - [活用 Tips (運用編)](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E6%B4%BB%E7%94%A8-tips-%E9%81%8B%E7%94%A8%E7%B7%A8)
    - [活用 Tips (インテグレーション編)](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E6%B4%BB%E7%94%A8-tips-%E3%82%A4%E3%83%B3%E3%83%86%E3%82%B0%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E7%B7%A8)
    - [活用 Tips (開発編)](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E6%B4%BB%E7%94%A8-tips-%E9%96%8B%E7%99%BA%E7%B7%A8)
    - [非推奨のプラグイン](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E9%9D%9E%E6%8E%A8%E5%A5%A8%E3%81%AE%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3)
    - [サービス全般](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E5%85%A8%E8%88%AC)
    - [メンテナンス](https://knowledge.amimoto-ami.com/knowledge/amimoto-managed-hosting?hsLang=ja#%E3%83%A1%E3%83%B3%E3%83%86%E3%83%8A%E3%83%B3%E3%82%B9)
- [Amimoto AMI](https://knowledge.amimoto-ami.com/knowledge/amimoto-ami?hsLang=ja#main-content)

    - [基本的なご利用方法](https://knowledge.amimoto-ami.com/knowledge/amimoto-ami?hsLang=ja#%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E3%81%94%E5%88%A9%E7%94%A8%E6%96%B9%E6%B3%95)
    - [サーバーへの接続](https://knowledge.amimoto-ami.com/knowledge/amimoto-ami?hsLang=ja#%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E3%81%B8%E3%81%AE%E6%8E%A5%E7%B6%9A)
    - [活用Tips](https://knowledge.amimoto-ami.com/knowledge/amimoto-ami?hsLang=ja#%E6%B4%BB%E7%94%A8tips)
    - [よくあるお問い合わせ](https://knowledge.amimoto-ami.com/knowledge/amimoto-ami?hsLang=ja#%E3%82%88%E3%81%8F%E3%81%82%E3%82%8B%E3%81%8A%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B)
    - [トラブルシューティング](https://knowledge.amimoto-ami.com/knowledge/amimoto-ami?hsLang=ja#%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0)
- [\[EN\] Amimoto Managed Hosting](https://knowledge.amimoto-ami.com/knowledge/en-amimoto-managed-hosting?hsLang=ja#main-content)

    - [Migration tips for AMIMOTO Managed Hosting](https://knowledge.amimoto-ami.com/knowledge/en-amimoto-managed-hosting?hsLang=ja#migration-tips-for-amimoto-managed-hosting)

- ホーム
- 製品
- 価格
- ブログ
- 会社

[![Chill listening crop-3](https://knowledge.amimoto-ami.com/hs-fs/hubfs/Amimoto_Logomark_rgb.png?width=24&height=24&name=Amimoto_Logomark_rgb.png "Chill listening crop-3")](https://ja.amimoto-ami.com/)

Flexible Cloud WordPress Hosting

<https://www.facebook.com/AmimotoAMI/> <https://twitter.com/Amimoto_Ami>

Copyright © 2026, 株式会社デジタルキューブ