显示隐藏 Site Actions 菜单项.docx
- 文档编号:4173181
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:11
- 大小:16.63KB
显示隐藏 Site Actions 菜单项.docx
《显示隐藏 Site Actions 菜单项.docx》由会员分享,可在线阅读,更多相关《显示隐藏 Site Actions 菜单项.docx(11页珍藏版)》请在冰点文库上搜索。
显示隐藏SiteActions菜单项
显示隐藏SiteActions菜单项
SharePoint2010使用“SiteActions"菜单替换了原来的MOSS2007“SiteSettings”菜单,它默认的子菜单项有很多,比如“NewPage”,“MoreOptions”,“ViewAllSiteContent”等等,当然我们也可以通过Feature创建自己的SiteActions菜单项,这不是我们所有讨论的问题,本文主要讨论如何通过简单的方式(用户权限/Javascript脚本)来显示/隐藏某些SiteActions菜单项。
SiteActions菜单项构成
首先我们来了解一下SharePoint默认SiteActions菜单项,我们可以通过查看母版页的源代码看到这些菜单项,这里简单贴一下部分代码:
查看SiteAction代码
asp:
ContentID="Content1"ContentPlaceHolderID="SPNavigation"runat="server">
sharepoint:
uiversionedcontentuiversion="4"runat="server">
ContentTemplate>
divid="s4-ribbonrow"class="s4-prs4-ribbonrowhidetitle">
divid="s4-ribboncont">
SharePoint:
SPRibbon
runat="server"
CssFile=""
PlaceholderElementId="RibbonContainer"
FixedPositioningEnabled="true"
PermissionsString="EditListItems,AddAndCustomizePages"
PermissionMode="Any"
ApplyPermissionsToRibbonOnly="false">
SharePoint:
SPRibbonPeripheralContent
runat="server"
Location="TabRowLeft"
CssClass="ms-siteactionscontainers4-notdlg">
spanclass="ms-siteactionsmenu"id="siteactiontd">
SharePoint:
SiteActions
runat="server"
accesskey=""
id="SiteActionsMenuMain"
PrefixHtml=""
SuffixHtml=""
MenuNotVisibleHtml=" ">
CustomTemplate>
SharePoint:
FeatureMenuTemplaterunat="server"
FeatureScope="Site"
Location="Microsoft.SharePoint.StandardMenu"
GroupId="SiteActions"
UseShortId="true">
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_EditPage"
Text=""
Description=
""
ImageUrl="/_layouts/images/ActionsEditPage.png"
MenuGroupId="100"
Sequence="110"
ClientOnClickNavigateUrl=
"javascript:
ChangeLayoutMode(false);"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_TakeOffline"
Text=""
Description=
""
ImageUrl="/_layouts/images/connecttospworkspace32.png"
MenuGroupId="100"
Sequence="120"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_CreatePage"
Text=""
Description=""
ImageUrl="/_layouts/images/NewContentPageHH.png"
MenuGroupId="200"
Sequence="210"
UseShortId="true"
ClientOnClickScriptContainingPrefixedUrl="if(LaunchCreateHandler('Page')){
OpenCreateWebPageDialog('~site/_layouts/createwebpage.aspx')}"
PermissionsString="AddListItems,EditListItems"
PermissionMode="All"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_CreateDocLib"
Text=""
Description=""
ImageUrl="/_layouts/images/NewDocLibHH.png"
MenuGroupId="200"
Sequence="220"
UseShortId="true"
ClientOnClickScriptContainingPrefixedUrl="if(LaunchCreateHandler('DocLib')){
GoToPage('~site/_layouts/new.aspx?
FeatureId={00bfea71-e717-4e80-aa17-d0c71b360101}
&ListTemplate=101')}"
PermissionsString="ManageLists"
PermissionMode="Any"
VisibilityFeatureId="00BFEA71-E717-4E80-AA17-D0C71B360101"/>
SharePoint:
MenuItemTemplaterunat="server"id="MenuItem_CreateSite"
Text=""
Description=""
ImageUrl="/_layouts/images/newweb32.png"
MenuGroupId="200"
Sequence="230"
UseShortId="true"
ClientOnClickScriptContainingPrefixedUrl="if(LaunchCreateHandler('Site')){
STSNavigate('~site/_layouts/newsbweb.aspx')}"
PermissionsString="ManageSubwebs"
PermissionMode="Any"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_Create"
Text=""
Description=""
MenuGroupId="200"
Sequence="240"
UseShortId="true"
ClientOnClickScriptContainingPrefixedUrl="if(LaunchCreateHandler('All')){
STSNavigate('~site/_layouts/create.aspx')}"
PermissionsString="ManageLists,ManageSubwebs"
PermissionMode="Any"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_ViewAllSiteContents"
Text=""
Description=""
ImageUrl="/_layouts/images/allcontent32.png"
MenuGroupId="300"
Sequence="302"
UseShortId="true"
ClientOnClickNavigateUrl="~site/_layouts/viewlsts.aspx"
PermissionsString="ViewFormPages"
PermissionMode="Any"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_EditSite"
Text=""
Description=""
ImageUrl="/_layouts/images/SharePointDesigner32.png"
MenuGroupId="300"
Sequence="304"
UseShortId="true"
ClientOnClickScriptContainingPrefixedUrl="EditInSPD('~site/',true);"
PermissionsString="AddAndCustomizePages"
PermissionMode="Any"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_SiteWorkflow"
Text=""
Description=""
ImageUrl="/_layouts/images/ManageWorkflow32.png"
MenuGroupId="300"
Sequence="305"
UseShortId="true"
ClientOnClickNavigateUrl="~site/_layouts/workflow.aspx"
PermissionsString="EditListItems,AddAndCustomizePages"
PermissionMode="Any"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_SitePermissions"
Text=""
Description=""
ImageUrl="/_layouts/images/Permissions32.png"
MenuGroupId="300"
Sequence="310"
UseShortId="true"
ClientOnClickNavigateUrl="~site/_layouts/user.aspx"
PermissionsString="EnumeratePermissions"
PermissionMode="Any"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_Settings"
Text=""
Description=""
ImageUrl="/_layouts/images/settingsIcon.png"
MenuGroupId="300"
Sequence="320"
UseShortId="true"
ClientOnClickNavigateUrl="~site/_layouts/settings.aspx"
PermissionsString="EnumeratePermissions,ManageWeb,ManageSubwebs,
AddAndCustomizePages,ApplyThemeAndBorder,ManageAlerts,
ManageLists,ViewUsageData"
PermissionMode="Any"/>
SharePoint:
MenuItemTemplate
runat="server"
id="MenuItem_CommitNewUI"
Text=""
Description=""
ImageUrl="/_layouts/images/visualupgradehh.png"
MenuGroupId="300"
Sequence="330"
UseShortId="true"
ClientOnClickScriptContainingPrefixedUrl="GoToPage('~site/_layouts/prjsetng.aspx')"
PermissionsString="ManageWeb"
PermissionMode="Any"
ShowOnlyIfUIVersionConfigurationEnabled="true"/>
SharePoint:
FeatureMenuTemplate>
CustomTemplate>
SharePoint:
SiteActions>span>
SharePoint:
SPRibbonPeripheralContent>
SharePoint:
SPRibbon>
div>
div>
divid="notificationArea"class="s4-noti">
div>
SharePoint:
DelegateControlrunat="server"ControlId="PublishingConsole">
SharePoint:
DelegateControl>
div>
WebPartPages:
WebPartAdderID="WebPartAdder"runat="server"/>
div>
ContentTemplate>
sharepoint:
uiversionedcontent>
asp:
Content>从代码中我们可以看出,SiteActions的菜单项是通过一个个SharePoint:
MenuItemTemplate/>来是实现的,而且我们发现MenuItemTemplate的两个重要的属性PermissionsString和PermissionMode,通过对这两个属性的设置可以简单实现菜单的显示和隐藏。
首先我们来了解下官方对这两个属性的定义。
PermissionsString:
设置和获取用户权限,比如“ADDLIstItem”,“ManageSite”(用户对站点的权限)
PermissionMode:
只有两个值AnyorALL(Any:
只要当前用户满足PermissionString其中一个权限就显示菜单,ALL:
必须都满足才显示菜单)。
既然了解了这个两个属性,你就已经明白了为啥有的用户能看到SiteSettings菜单,有的用户却不能。
顺便贴一下微软官方PermissionsString所有值:
ListPermissions
SitePermissions
PersonalPermissions
ManageLists
CancelCheckout
AddListItems
EditListItems
DeleteListItems
ViewListItems
ApproveItems
OpenItems
ViewVersions
DeleteVersions
CreateAlerts
ViewFormPages
ManagePermissions
ViewUsageData
ManageSubwebs
ManageWeb
AddAndCustomizePages
ApplyThemeAndBorder
ApplyStyleSheets
CreateGroups
BrowseDirectories
CreateSSCSite
ViewPages
EnumeratePermissions
BrowseUserInfo
ManageAlerts
UseRemoteAPIs
UseClientIntegration
Open
EditMyUserInfo
ManagePersonalViews
AddDelPrivateWebParts
UpdatePersonalWebParts
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 显示隐藏 Site Actions 菜单项 显示 隐藏 菜单