Разрешили пользователям регистрировать свой собственный веб-сайт, и в то же время это добавляет их как пользователя на этот сайт.
Тем не менее, есть ли способ по умолчанию использовать их для подписчика на сайте, а не автоматически добавлять их в качестве администратора.
Я просмотрел в беспорядке wp-signup.php и wp-activate.php, и он не хочет указывать их как администратора в любом месте.
Спасибо, Том
Итак, это невозможно сделать по умолчанию.
Поскольку у меня уже был крючок для wpmu_activate_blog()
я просто создал другого с более низким приоритетом, который будет запущен после. Эта функция также имеет 2 параметра, которые мне нужны. Поэтому после активации учетной записи я просто удаляю роль администратора и устанавливаю новую роль на уровне уровня подписки.
add_action( 'wpmu_activate_blog', array( $this,'set_new_user_role' ), 15, 2 );
public function set_new_user_role( $blog_id, $user_id ) {
$user = new WP_User( $user_id, '', $blog_id ); $user->remove_role( 'administrator' ); // @NOTE - Set this role depending on user subscription level. $user->add_role( 'subscriber' );
}
Вам понадобится нечто вроде многоузлового плагина управления ролью . Это позволяет вам определять роли пользователей по умолчанию для каждого блога в многоуровневой настройке