博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SharePoint:如何根据用户身份来自动控制Portal的Logo显示
阅读量:5998 次
发布时间:2019-06-20

本文共 1644 字,大约阅读时间需要 5 分钟。

随着智能化办公的启动,很多企业都迈向了数字化转型的行列,由于越来越多大企业客户希望有统一的Portal来做企业交流和协作的统一窗口,那么就为SharePoint管理员带来了普遍困扰:用户登录Portal时,如何根据用户的身份来自动更换Portal的Logo以及Web Part,近期在MSDN 论坛上也有人咨询该问题,这里整理并汇总下实现方式。

作为资深的SharePoint管理员,我们知道Web Part可以通过配置Audience来控制哪些Group member可以显示Web Part哪些Group Member是隐藏Web Part的,但如何根据用户身份来控制Logo显示呢?

解决方案:通过SharePoint Designer在Master Page中<head/>前做下修改。

前期准备:

• 新建Picture Library用来做Logo的存储
• 根据实际需求新建SharePoint Group
• 将AD User添加到特定的SharePoint Group中,需要注意不支持Ad Group

以Pingpang Group为例,操作如下:

1.新建Picture Library,并上传Logos,如下图所示:

SharePoint:如何根据用户身份来自动控制Portal的Logo显示

2.新建SharePoint Group,并命名为Pingpang Group,添加User:jzliu,如下图所示:

SharePoint:如何根据用户身份来自动控制Portal的Logo显示

3.使用SharePoint Designer来打开Site Collection,并点击Site Objects中的Master Pages,如下图所示:

SharePoint:如何根据用户身份来自动控制Portal的Logo显示

4.在Master Page Library中,用高级模式打开seattle.master, 并在<head/>添加如下代码:

<script src="" type="text/javascript"></script>

<script type="text/javascript">
$(function(){
var groupName="Pingpang Group";
var logoImgUrl="";
if(isMember(groupName)){
$(".ms-siteicon-img").attr("src",logoImgUrl);
}
})
function isMember(groupName){
var isGroupMember=false;
$.ajax({
url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/sitegroups/getByName('"+groupName+"')/Users?$filter=Id eq " + _spPageContextInfo.userId,
method: "GET",
async:false,
headers: { "Accept": "application/json; odata=verbose" },
success: function(data){
if(data.d.results.length>0){
isGroupMember=true;
}
}
});
return isGroupMember;
}
</script>
SharePoint:如何根据用户身份来自动控制Portal的Logo显示
5.修改“GroupName”和“Logoimgurl”,说明:Groupname必须是SharePoint Group,不支持AD Group;Group member必须是AD Users
6.当jzliu登录后,可以看到log切换为Pingpang的logo,如下图所示:
SharePoint:如何根据用户身份来自动控制Portal的Logo显示

如果Byron来自Basketball group,你需要再次按照步骤4和5操作代码,这样才能保证Byron登录时,显示是Basketball的Logo,如下图所示:

SharePoint:如何根据用户身份来自动控制Portal的Logo显示

希望经验分享对大家日后工作有所帮助~~ 感谢阅读

转载于:https://blog.51cto.com/13969817/2298329

你可能感兴趣的文章
jQuery获取Select选择的Text和 Value(转)
查看>>
C# System.IO.Path
查看>>
[基准测试]----lmbench
查看>>
Core源码(一) ConcurrentDictionary
查看>>
Mysql锁机制--写锁
查看>>
VO、DTO、DO、PO
查看>>
Java知多少(51)finally
查看>>
HNUSTOJ-1258 Time
查看>>
bzoj1061 1283
查看>>
oscached
查看>>
L119
查看>>
两列自适应布局的4种思路
查看>>
UITextField 限制输入金额(项目中遇到判断输入金额)
查看>>
openresty
查看>>
抽象类特点
查看>>
50个必备的实用jQuery代码段
查看>>
如何导出SQL Azure脚本?
查看>>
附加导航 affix,side--toolbar(可结合博客园使用~)
查看>>
C#之读取web上的xml
查看>>
VMware锁定文件失败开启模块diskearly的操作失败未能启动虚拟机
查看>>