概要
elementor/settings/tools/rollback/is_valid_rollback_version
フィルタは、Elementorプラグインのバージョン管理に関する機能を拡張するために使用されます。このフィルタを利用することで、特定の条件に基づいてロールバック可能なバージョンを検証するカスタムロジックを実装できます。このフィルタは、以下のような機能を実装する際によく使われます。
- 特定のテーマやプラグインとの互換性チェック
- サイト固有の条件を考慮したバージョン制限
- ユーザー権限に応じたロールバックオプションの制御
- バージョン履歴機能の拡張
- ベータ版や開発版の取り扱い制御
- サポートされていないバージョンに対する警告メッセージの表示
構文
フィルタは以下の構文で定義されます。
add_filter('elementor/settings/tools/rollback/is_valid_rollback_version', 'your_callback_function', 10, 2);
パラメータ
このフィルタは以下のパラメータを受け取ります。
$is_valid
: 現在のバージョンがロールバック可能かどうかを示す真偽値(boolean)。$version
: ロールバックするバージョン番号(string)。
戻り値
- このフィルタは、真偽値を返します。
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
add_filter('elementor/settings/tools/rollback/is_valid_rollback_version', function($is_valid, $version) {
// バージョン2.0.0へのロールバックは許可しない
return $version !== '2.0.0';
});
このコードは、バージョン2.0.0へのロールバックを拒否し、他のバージョンについてはロールバックを許可します。
サンプルコード 2
add_filter('elementor/settings/tools/rollback/is_valid_rollback_version', function($is_valid, $version) {
// プラグインのアップデート時のバージョンチェック
if (version_compare($version, '3.0.0', '<')) {
return false;
}
return true;
});
このコードは、バージョン3.0.0未満のバージョンへのロールバックを拒否します。
サンプルコード 3
add_filter('elementor/settings/tools/rollback/is_valid_rollback_version', function($is_valid, $version) {
// 特定のユーザー権限のみロールバックを許可
if (!current_user_can('administrator')) {
return false;
}
return true;
});
このコードは、管理者ユーザーのみがロールバックを行えるように制限します。
サンプルコード 4
add_filter('elementor/settings/tools/rollback/is_valid_rollback_version', function($is_valid, $version) {
// 最新バージョン以外へのロールバックを許可
$latest_version = '3.5.0'; // 最新バージョンを指定
return version_compare($version, $latest_version, '<');
});
このコードは、最新バージョンより古いバージョンへのロールバックを許可します。
サンプルコード 5
add_filter('elementor/settings/tools/rollback/is_valid_rollback_version', function($is_valid, $version) {
// 特定のテーマでロールバックを制限する
if (wp_get_theme()->get('Name') === '特定のテーマ名') {
return false; // 特定のテーマではロールバックを禁止
}
return true;
});
このコードは、特定のテーマを使用している場合にロールバックを禁止します。
これらのサンプルは、elementor/settings/tools/rollback/is_valid_rollback_version
フィルタの使用方法を示しており、各コードがどのようにロールバックの許可ロジックを変更できるかを理解するのに役立ちます。