WPユーザー代替フィルター
LINE Connect が WordPress のユーザー関連処理を代替実装へ切り替えるためのフィルター群です。
対象フック
- slc_filter_use_alternative_user_provider: 代替ユーザープロバイダーを有効化または無効化します。
- slc_filter_get_userdata: 通常モードで
get_userdata()の結果を変更します。 - slc_filter_get_userdata_alternative: 代替モードでユーザーデ ータを返します。
- slc_filter_get_user_meta: 通常モードで
get_user_meta()の結果を変更します。 - slc_filter_get_user_meta_alternative: 代替モードでユーザーメタを返します。
- slc_filter_update_user_meta: 通常モードで
update_user_meta()の結果を変更します。 - slc_filter_update_user_meta_alternative: 代替モードでユーザーメタ更新を実行します。
- slc_filter_delete_user_meta: 通常モードで
delete_user_meta()の結果を変更します。 - slc_filter_delete_user_meta_alternative: 代替モードでユーザーメタ削除を実行します。
- slc_filter_get_current_user_id: 通常モードで現在のユーザーIDを変更します。
- slc_filter_get_current_user_id_alternative: 代替モードで現在のユーザーIDを返します。
- slc_filter_is_user_id_valid: 通常モードでユーザーIDの妥当性判定を変更します。
- slc_filter_is_user_id_valid_alternative: 代替モードでユーザーIDの妥当性を判定します。
- slc_filter_get_linked_userids_by_roles_alternative: 代替モードで指定ロールに紐づくユーザーIDを返します。
- slc_wp_user_query_alternative: 代替モードで
WP_User_Query相当のユーザー検索結果を返します。 - slc_get_user_from_line_id: LINE ID からユーザーデータを取得します。
- slc_roles: ロール一覧に独自のステータスや疑似ロールを追加します。
制御用フィルター
slc_filter_use_alternative_user_provider
UserProvider が代替ユーザープロバイダーのフックを使うかどうかを制御します。
引数
$use_alternative: (bool) 代替パスを使うかどうか。既定値はfalseです。
補足
true を返すと、UserProvider は通常の WordPress ユーザー関数の代わりに *_alternative フックを呼び出します。
使用例
add_filter('slc_filter_use_alternative_user_provider', '__return_true');
置き換え用フィルター
slc_filter_get_userdata
通常モードで UserProvider::get_userdata() が返す get_userdata() の結果を変更します。
引数
$userdata: (WP_User|false) WordPress が返したユーザーオブジ ェクト。$user_id: (int) ユーザーID。
使用例
add_filter('slc_filter_get_userdata', function($userdata, $user_id) {
// WP_User オブジェクトに対して独自の処理を行う
return $userdata;
}, 10, 2);