質問: 自分の役割がマルチサイト/ネットワークに表示されないのはなぜですか? 私のネットワークは、他のサイトではなく一部のサイトで役割を示しています。説明できないという理由で、新しいユーザーを追加したときに、自分のネットワークのサブサイトのドロップダウンボックスで選択できる役割がありません。また、サイトに割り当てられた私の新しいユーザーがそのサイトのユーザーのリストに表示されていません。これは修正可能ですか?現在の状況の画像の下。下の写真はメインサイトが適切に役割を持っているが、ネットワークのサブサイトはそうではないことを示しています。
回答: ありがとうございました。この問題は、10時間にわたる確実なデバッグに相当します。これは私にとって本当のクマでした。これを少し拡張するために、プログラムでサイトを作成している場合にこの問題を解決できるようにする機能を私のサイトに追加しました。基本的に、これはwp_user_rolesが指定されたブログに設定されているかどうかを確認します。もしそうなら、関数は正しい方法で新しいオプションを設定するためにwp_user_rolesを使います。 /** * sometimes, user roles do not properly get set when a new site is set up * to fix this issue, we check to make sure the data is added properly and update if not * see https://wordpress.stackexchange.com/questions/11725/why-are-my-roles-not-visible-in-a-multi-site-network */ function maybeadduserroles($blog_id){ switch_to_blog($blog_id); if(get_option('wp_user_roles')){ update_option('wp_'.$blog_id.'_user_roles', get_option('wp_user_roles')); delete_option('wp_user_roles'); } restore_current_blog(); }