プラグインElementorのelementor/icons_manager/migration_allowedフィルタの使用方法・解説

概要

elementor/icons_manager/migration_allowed フィルタは、Elementorがアイコンのマイグレーションに関する許可設定を行う際に使用されます。このフィルタを利用することで、アイコンのマイグレーションが許可されるかどうかを制御することができます。これにより、特定の条件下でアイコンのマイグレーションを禁止したり、カスタマイズしたりすることが可能となります。

よく使われる機能

  1. 特定の条件(例: 管理者のみ)においてアイコンのマイグレーションを許可する。
  2. サイトの特定の設定に基づいてアイコンの管理を最適化する。
  3. 他のプラグインとの互換性を確保するためにマイグレーションをカスタマイズする。
  4. マイグレーションプロセス中のエラーハンドリングを実装する。
  5. ユーザーのロールに基づいてマイグレーションの設定を制御する。
  6. バージョンアップによるマイグレーションの挙動を変更する。

フィルタの構文

add_filter( 'elementor/icons_manager/migration_allowed', 'your_function_name' );

パラメータ

  • $allowed (bool): 現在のマイグレーション許可状態。デフォルトは true

戻り値

  • bool: マイグレーションが許可される場合は true、禁止される場合は false

使用可能なバージョン

  • Elementorバージョン: 3.0.0以降
  • WordPressバージョン: 5.0以降

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

アクション 使用例
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

function allow_icon_migration( $allowed ) {
    // 管理者のみマイグレーションを許可
    return current_user_can( 'administrator' );
}
add_filter( 'elementor/icons_manager/migration_allowed', 'allow_icon_migration' );

このサンプルコードは、サイトにアクセスしているユーザーが管理者である場合のみアイコンのマイグレーションを許可します。

サンプル2

function deny_icon_migration( $allowed ) {
    // マイグレーションを常に禁止
    return false;
}
add_filter( 'elementor/icons_manager/migration_allowed', 'deny_icon_migration' );

このサンプルでは、常にアイコンのマイグレーションを禁止します。この設定は、特定の状況下でマイグレーションを防ぐのに役立ちます。

サンプル3

function conditional_migration( $allowed ) {
    // 特定のオプションをチェックし、アイコンマイグレーションを許可
    if ( get_option( 'allow_icon_migration' ) ) {
        return true;
    }
    return false;
}
add_filter( 'elementor/icons_manager/migration_allowed', 'conditional_migration' );

このサンプルは、WordPressのオプションから特定の設定を確認し、それに基づいてマイグレーションを許可します。

サンプル4

function based_on_environment( $allowed ) {
    // ステージング環境の場合はマイグレーションを許可しない
    if ( defined( 'WP_STAGING' ) && WP_STAGING ) {
        return false;
    }
    return true;
}
add_filter( 'elementor/icons_manager/migration_allowed', 'based_on_environment' );

このサンプルでは、ステージング環境である場合にはアイコンのマイグレーションを禁止します。これにより、本番環境でのリスクを軽減します。

サンプル5

function user_role_based_migration( $allowed ) {
    // "editor"のロールを持つユーザーに対してマイグレーションを許可
    return current_user_can( 'editor' );
}
add_filter( 'elementor/icons_manager/migration_allowed', 'user_role_based_migration' );

このサンプルでは、「エディター」ロールを持つユーザーにのみアイコンのマイグレーションを許可します。このようにして、特定のロールに基づく細かい権限の管理ができます。

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


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