ワードプレスのwp_is_mobile関数の使用方法・解説

概要

wp_is_mobile関数は、モバイルデバイスからのリクエストかどうかを調べるために使用されます。この関数は、テーマやプラグインでのレスポンシブデザインや、モバイル専用の機能を実装する際によく使われます。以下は、この関数が使われる一般的なシナリオの例です:

  1. モバイル専用のナビゲーションメニューの表示
  2. モバイル版のページテンプレートの読み込み
  3. 特定のCSSやJavaScriptの読み込みを制御
  4. 広告の表示形式を変更
  5. フォームのスタイルやレイアウトの調整
  6. モバイルユーザー向けのキャッチフレーズや通知の表示
  7. 画像のサイズや形式を変更してモバイルでの表示を最適化
  8. 特定のウィジェットをモバイルからのリクエスト時に非表示にする

構文

wp_is_mobile();

パラメータ

この関数はパラメータを持ちません。

戻り値

  • true:リクエストがモバイルデバイスからの場合
  • false:リクエストがモバイルデバイスからでない場合

関連する関数

使用可能なバージョン

この関数はWordPress 1.5以降で使用可能です。

コアファイルのパス

wp-includes/general-template.php

サンプルコード

サンプルコード1: 簡単なモバイルチェック

if ( wp_is_mobile() ) {
    echo 'モバイルデバイスからのアクセスです。';
} else {
    echo 'デスクトップデバイスからのアクセスです。';
}

このコードは、モバイルデバイスからのリクエストかどうかをチェックし、それに応じて異なるメッセージを表示します。

サンプルコード2: モバイル向けスタイルシートの読み込み

function enqueue_mobile_styles() {
    if ( wp_is_mobile() ) {
        wp_enqueue_style( 'mobile-styles', get_template_directory_uri() . '/css/mobile.css' );
    }
}
add_action( 'wp_enqueue_scripts', 'enqueue_mobile_styles' );

このコードは、モバイルデバイスからのアクセス時にだけ特定のスタイルシートを読み込みます。

サンプルコード3: モバイル専用コンテンツの表示

if ( wp_is_mobile() ) {
    get_template_part( 'template-parts/content', 'mobile' );
} else {
    get_template_part( 'template-parts/content', 'desktop' );
}

このコードは、モバイルデバイスとデスクトップデバイスで異なるテンプレートパートを読み込みます。

サンプルコード4: ウィジェットの非表示

function hide_sidebar_on_mobile() {
    if ( wp_is_mobile() ) {
        remove_sidebar_widget( 'my_widget' );
    }
}
add_action( 'widgets_init', 'hide_sidebar_on_mobile' );

このコードは、モバイルデバイスからのリクエストの場合に特定のウィジェットを非表示にします。

サンプルコード5: モバイル版の404ページを表示

if ( wp_is_mobile() && is_404() ) {
    include( get_template_directory() . '/404-mobile.php' );
    exit;
}

このコードは、モバイルデバイスで404エラーが発生した場合に、特定のモバイル版404ページを表示します。

この関数のアクションでの使用可能性

アクション名 使用可能性
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

非推奨または削除されたバージョン

特定のWordPressバージョンで非推奨または削除された情報はありません。

この関数について質問する


上の計算式の答えを入力してください