OFC 315SharePoint Portal Server 2003企业定制 陈曦TH-Coterie 议程 什么是"SharePoint Portal企业定制"企业定制的优秀案例:TARGET 美国第二大零售商SPS企业定制技术:范围与限制定制实践最佳实践听众:熟悉SPS,致力于SPS定制的开发者与架构师. 什么是SharePoint Portal企业定制 什么是"企业定制"Corporate Branding通常的定义是,通过徽标、图片、以及企业的风格设计,对其产品的观感和触感进行自定制,从而凸现出该产品的企业个性.对于"SPS企业定制",我们需要了解更多深入了解企业内部的成熟标准、企业文化.SharePoint Portal的能力范围.SPS企业定制的受支持尺度. "标准"定制步骤 加载企业标识,提升用户体验:UI的修改与自定制自定制BannerCSS除了"风格、颜色"之外:菜单项定制替换标准导航栏Breadcrumb定制页面框架修改自定制Web部件 对已有区域页面进行简单修改 优秀案例:TARGET Corp TARGET简介 "财富"排名23300,000+ 雇员,集中在美国12BN – 13BN QuarterlyTotal revenues up 11.5% to $46.839 billion (2004)from $42.025 billion (2003)Harvard Business School Study WALMART & TARGETClose to 1.7BN TechnologyWhat about us – Microsoft?..and Why SharePoint TARGET的优秀定制 "TARGET"一直在颜色和风格上保持统一SharePoint的定位从每个WSS网站的分别部署,到丰富内容的集中整合,SharePoint提供了高定制化的企业搜索以及个性化服务这只是非常复杂的需求中的一个方面 SPS企业定制:范围与限制 了解SPS定制的支持范围(KB898631)创建自定制的站点/区域模板(复制、更名)在创建站点/区域之前修改自定制模板中的xml, aspx文件了解那些不支持的事情修改默认的站点/区域模板在创建自定制站点/区域后,重新修改其模板修改Webtemp.xml 或Webtempsps.xml 预备技术 在实践开始前,我们要做哪些准备SharePoint 网站架构FrontPage 2003Site DefinitionWebPart 开发 定制实践 图片定制部分 Image Part修改站点LOGO在"网站设置"中填写自定义LOGO的位置添加、修改站点图片<%System Drive%>\Program Files\Common Files\Microsoft Shared\web server extensions\60\TEMPLATE\IMAGES 可以在此目录下创建所需的文件夹CSS定制部分<%SystemDrive%>\Program Files\Common Files\Microsoft Shared \web server extensions\60\TEMPLATE\LAYOUTS\[Loc ID]\STYLES 定制实践 Why FrontPage and Why NOT FrontPageFrontPage2003,功能强大的SharePoint工具破坏网页与模板的Ghost关联什么是网站/区域模板(Site Definition)网站定义包括派生出所有 SharePoint 网站和列表的空白页和架构的集合 网站定义以网页和 XML 文件的形式存储在每个前端 Web 服务器的文件系统上SPS各个区域应用了不同的模板(DEMO)一种很高程度的自定制与自动化 定制实践 网站模板的工作原理模板文件存放在Web前端服务器的文件系统中数据库中并不存放实际页面,而只有页面上的Web部件信息 定制实践 模板文件结构概览(DEMO)位置:\\SPS-Server\c$\Program Files\Common Files\Microsoft Shared\web server extensions\60\TEMPLATE\2052列表模板、文档库模板、生成站点的配置方案都是由CAML语言设计的 模板文件结构概览 网站定义文件 Maps file ProgIDs and file extensions of document types to specific icons and to controls for opening each type. Local_Drive:\Program Files\Common Files\Microsoft Shared\Web server extensions\60\TEMPLATE\XML DOCICON.XML Defines the columns, views, and contents of a list Local_Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60\TEMPLATE\2052\site_definition_name\LISTS\List_definition_name\ SCHEMA.XML Defines navigation bars such as the top link bar and the quick launch, available lists, document templates, base types, configurations, modules Local_Drive:\Program Files\Common Files\Microsoft Shared\Web server extensions\60\TEMPLATE\2052\site_definition_name\XML ONET.XML Specifies configurations of lists and modules for a site definition. Local_Drive:\Program Files\Common Files\Microsoft Shared\Web server extensions\60\TEMPLATE\2052\XML WEBTEMP.XML 定制实践 什么是CAMLCollaborative Application Markup Language 基于XML,用于在SharePoint中定义网站、列表、字段、视图、表单的语言.可通过3种途径使用CAML自定制SharePoint网站:通过脚本代码,调用Object Model通过web service通过前端服务器 定制实践 站点模板主要组成部分:default.aspx列表模板(LISTS文件夹)文档模板(DOCTEMP文件夹)ONET.XML 定制实践 站点模板的索引:WEBTEMP.XML每个前端服务器上至少有一个WEBTEMP.XML,包含了网站创建时可用的网站定义站点模板分为两个层次:TemplateConfiguration每个Template下的不同Configuration共享相同的列表模板和NavBar,但可以指定不同的页面和列表实例Best Practice:不要修改默认的WEBTEMP.XML 定制实践 站点模板的核心文件:ONET.XML每个网站定义都包含一个ONET.XML定义顶部链接栏和快速启动栏定义网站定义中使用的文档和列表定义定义创建网站时要引入的文件Best Practice: 不要修改系统自带的ONET.XML 定制实践 SCHEMA.XML每个列表都对应一个SCHEMA.XML定义 views, forms, toolbar and specia fields Best Practice: 不要修改系统自带的SCHEMA.XML 定制实践 DOCICON.XML每个前端服务器包含一个DOCICON.XML将文件的 ProgID和扩展名映射得到文件的图标和打开文件的控件Caution:升级系统可能导致DOCICON.XML中的更改丢失 定制实践 创建站点定义:复制一个站点定义文件夹,重命名为SPSxxx复制WEBTEMPSPS.XML,重命名为WEBTEMPSPSxxx.XML修改此WEBTEMPSPSxxx.XML修改网站定义重启IIS(iisreset) 创建一个区域模板 定制实践 在网站定义中进行企业定制创建网站定义修改default.aspx为空白页面删除ONET.XML中的Web部件定义以此模板创建SPS区域在模板中修改静态页面样式替换页面中的动态内容WebControlWebPart区域ONET中定义页面WebPart属性 定制"TARGET"区域 最佳实践 了解SPS的定制体系自定义图片与CSS有选择的使用FrontPage2003活用WSS的模板保存功能不要修改默认的SPS模板文件利用Web Control活用WebPart Branding a SharePoint Portal Server 2003 Site: Part 1http://msdn.microsoft.com/office/default.aspx?pull=/library/en-us/odc_sp2003_ta/html/Office_SharePointApplyingCorporateBrand.aspBranding a SharePoint Portal Server 2003 Site: Part 2, How to Apply your own Corporate Brandhttp://msdn.microsoft.com/office/default.aspx?pull=/library/en-us/odc_sp2003_ta/html/Office_SharePointHowToApplyBrand.aspMicrosoft SharePoint Products and Technologies 2003 SDKhttp://msdn.microsoft.com/office/default.aspx?pull=/library/en-us/spptsdk/html/SPSDKWelcome_SV01017094.asp Supported and Unsupported Scenarios for working with custom site definitions and custom area definitions in Windows SharePoint Services and in SharePoint Portal Server 2003http://support.microsoft.com/default.aspx?scid=kb;en-us;898631?Ryan Rogers's SharePoint Blog : On Site Definitionshttp://blogs.msdn.com/ryanrogers/archive/2005/06/04/425148.aspx 站点模板介绍http://msdn.microsoft.com/library/en-us/spptsdk/html/tsovIntroTemplates_SV01015722.asp?frame=true?模板与站点定义http://msdn.microsoft.com/library/en-us/spptsdk/html/tsovGuidelinesCustomTemplates_SV01018815.asp?frame=true?主要的结构文件http://msdn.microsoft.com/library/en-us/spptsdk/html/SPPTWSSSchemaFiles_SV01087964.asp?frame=true?如何从现有的站点模板创建出新的站点模板http://msdn.microsoft.com/library/en-us/spptsdk/html/tsptCustomExistingWebTemplate_SV01017467.asp?frame=true 敬请关注 微软Office技术专家俱乐部http://www.msotec.net/DesktopDefault.aspx一本即将完成的中文参考书:《SharePoint技术指南》一个未来的WebPart商务网站http://www.webpart.com.cn 联系我 Blog:http://blog.happynet.org/choralMSN:choral@gmail.com