У меня определена пользовательская роль, которая имеет отдельную страницу профиля во внешнем интерфейсе. На странице профиля есть wp_editor с кнопкой Add Media. Но изображение не прикрепляется. Эта ошибка появляется при загрузке изображения - Извините, вы не можете прикреплять файлы к этому сообщению.
Это возможность пользовательской роли:
$admins = get_role( 'trip_vendor' );
$admins->add_cap( 'upload_files' );
$admins->add_cap( 'level_1' );
$admins->add_cap( 'edit_post' );
$admins->add_cap( 'edit_posts' );
$admins->add_cap( 'edit_other_posts' );
$admins->add_cap( 'publish_posts' );
$admins->add_cap( 'read_post' );
$admins->add_cap( 'read_private_posts' );
$admins->add_cap( 'delete_post' );
$admins->add_cap( 'can_edit_posts' );
Вот как пользовательская роль регистрируется с помощью ajax:
$user = $_POST['user'];
$pass = $_POST['pass'];
$creds = array();
$creds['user_login'] = $user;
$creds['user_password'] = $pass;
$creds['remember'] = true;
$user = wp_signon( $creds, is_ssl() );
if ( is_wp_error($user) )
{
$result['type'] = 'failed';
$result['message'] = __( 'Incorrect Login Credentials!.', 'wp-travel-engine' );
if ( defined( 'DOING_AJAX' ) && DOING_AJAX )
{
$result = json_encode($result);
echo $result;
}
}
else{
$_SESSION['login'] = 'login';
$_SESSION['user'] = $user;
$_SESSION['pass'] = $pass;
$result['type'] = 'success';
$result['message'] = __( 'Logging In...', 'wp-travel-engine' );
if ( defined( 'DOING_AJAX' ) && DOING_AJAX )
{
$result = json_encode($result);
echo $result;
}
}
Может кто-нибудь дать несколько рекомендаций по этому поводу?