我试图在Umbraco中创建一个新的成员类型,如果它还不存在,将自动创建。但是,我发现制作新MemberType
的唯一代码标记为已废弃。
umbraco.cms.businesslogic.member.MemberType.MakeNew(admin, memberType.Name)
如何使用新API执行此操作?我相信新的API位于命名空间Umbraco.Core.Models
下。
答案 0 :(得分:1)
也可以解决这个问题。我有许多由公司分开的用户,并且客户希望能够一次性“取消”批准/删除多个用户。如果我为每个公司创建MemberGroup
,那么选择它们很容易,因为它们将通过后端的“成员”页面上的下拉列表进行预先排序。
我接触到的东西,好像你看一下当前Member
的属性,它实际上是DocumentType
。因此,在使用Services.ContentTypeService
时,我尝试创建一个新的ContentType
,在Umbraco 7中是DocumentType
。但是你需要一个ParentId
来创建它。
我不知道ParentId
,因此我尝试通过获取组Member
中的当前成员并以此方式获取ParentId
来提取此内容。但是,ID为-1
。
如果有人遇到创建MemberGroups
的解决方案,我很想知道。
答案 1 :(得分:1)
如果您使用的是umbraco 7,最好使用会员类型服务。以下是您可以采用的简单方法。
public void CreateMemberType(IContentTypeComposition parent, string memberTypeAlias)
{
IMemberType memberType = new Umbraco.Core.Models.MemberType(parent, memberTypeAlias);
ApplicationContext.Current.Services.MemberTypeService.Save(memberType);
}
添加成员组
ApplicationContext.Current.Services.MemberService.AddRole("Group Name");