ユーザーの役割の同期に問題がありました(ユーザーごとに複数のユーザーの役割)。真夜中の石油を2泊以上燃やした後、ばかげた魔法の解決策を見つけました:)
「add_action('set_user_role'、'ksu_save_role'、10、2);」で「set_user_role」を「add_user_role」に変更しただけです。
小さな魔法の微調整後の終了コード
function ksu_save_role( $user_id, $role ) {
// Site 1
// Change value if needed
$prefix_1 = 'first_';
// Site 2 prefix
// Change value if needed
$prefix_2 = 'second_';
$caps = get_user_meta( $user_id, $prefix_1 . 'capabilities', true );
$level = get_user_meta( $user_id, $prefix_1 . 'user_level', true );
if ( $caps ){
update_user_meta( $user_id, $prefix_2 . 'capabilities', $caps );
}
if ( $level ){
update_user_meta( $user_id, $prefix_2 . 'user_level', $level );
}
}
add_action( 'add_user_role', 'ksu_save_role', 10, 2 ); // THE MAGIC MODIFICATION
コードクレジット: https://kinsta.com/blog/share-logins-wordpress/
これをfunctions.phpに追加すれば、準備は完了です。
「WoocommerceSubscriptions」や「YITHAutomaticRoleChangerforWooCommercePremium」などのロールチェンジャープラグインと互換性があります
必要な数の役割を設定および変更できます。