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

概要

is_network_admin関数は、リクエストページがネットワーク管理者ページかどうかを調べるために使用されます。この関数は、マルチサイト環境での特定の操作や判定に役立ちます。具体的には、以下のような機能を実装する際によく使われます。

  1. ネットワーク管理者専用のメニュー項目の表示/非表示
  2. ネットワークレベルの設定を変更する際の権限チェック
  3. ネットワーク管理者専用のウィジェットの登録
  4. ネットワーク管理用のスクリプトやスタイルのキューイング
  5. 特定のリダイレクト処理の実装(管理者のみ)
  6. プラグインでのネットワークに関連する設定ページの表示
  7. ネットワークの統計情報の表示
  8. ネットワーク全体のカスタム投稿タイプの管理

構文

is_network_admin();

パラメータ

この関数にはパラメータはありません。

戻り値

戻り値は、リクエストがネットワーク管理者画面である場合は true、そうでない場合は false です。

関連する関数

is_network_admin関数に関連する機能や判断を行うためのその他の関数については、次のリンクを参考にしてください。
is_network_admin

使用可能なWordPressバージョン

is_network_admin関数は、WordPress 3.0以降で使用可能です。

コアファイルのパス

この関数は、WordPressコアファイルの以下のパスに含まれています。

wp-includes/plugin.php

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

アクション 使用可能性
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

サンプルコード

サンプルコード1: コンディショナルチェック

if (is_network_admin()) {
    echo "このページはネットワーク管理者ページです。";
}

このコードは、現行ページがネットワーク管理者ページである場合にメッセージを表示します。

サンプルコード2: メニュー項目の表示

add_action('admin_menu', 'custom_network_menu');
function custom_network_menu() {
    if (is_network_admin()) {
        add_menu_page('ネットワーク設定', 'ネットワーク設定', 'manage_network', 'network-settings', 'network_settings_callback');
    }
}

このコードは、ネットワーク管理者ページでのみ表示されるカスタムメニュー項目を追加します。

サンプルコード3: スタイルのキューイング

add_action('admin_enqueue_scripts', 'enqueue_network_admin_styles');
function enqueue_network_admin_styles() {
    if (is_network_admin()) {
        wp_enqueue_style('network-admin-style', plugins_url('/css/style.css', __FILE__));
    }
}

このコードは、ネットワーク管理者ページに特定のスタイルシートを追加します。

サンプルコード4: 管理者専用リダイレクト

if (is_network_admin()) {
    wp_redirect(admin_url('network/settings.php'));
    exit();
}

このコードは、ネットワーク管理者ページであれば特定の設定ページにリダイレクトします。

サンプルコード5: プラグインの条件付き機能

if (is_network_admin()) {
    // ネットワーク設定を表示するための機能を実行
    display_network_settings();
}

このコードは、ネットワーク管理者であれば特定の設定表示機能を実行します。

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


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