Microsoft Office SharePoint Server 2007的文件目錄結構

安裝了MOSS2007後,所有與SharePoint相關的文件都放在本地目錄C:/Program Files/Common Files/Microsoft Shared/web server extensions/12下面。

下面介紹一些主要的文件目錄。

1、 ISAPI目錄
此目錄下面存放的是SharePoint自帶的Web Services,我們也可以自定義Web Services封裝在SharePoint裏面。自定義Web Services方法見:Writing Custom Web Services for SharePoint Products and Technologies。

2、 Resources目錄
SharePoint 有兩個資源文件夾,目錄分別爲C:/Program Files/Common Files/MicrosoftShared/web server extensions/12/CONFIG/Resources和C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/Resources,本地化工作主要是編寫Resourses裏的文件,網站如果顯示的一些標題或描述不符合我們的要求,那麼可以通過修改資源文件裏的
<Data Name="修改元素">
<Value>網站顯示的內容</Value>
</Data>
要引用資源文件裏面的內容,一般通過$Resources:開頭。
例如:<%$Resources:sps,LayoutPageZone_TopZone%>
其中:sps表示資源文件名,與sps.zh-CN.resx相對應。LayoutPageZone_TopZone表示sps.zh-CN.resx文件中的
<Data Name="LayoutPageZone_TopZone">
<Value>頂部區域</Value>
</Data>
節點。
注:一般不推薦修改所有C:/Program Files/Common Files/Microsoft Shared/web server extensions/12目錄下的文件,因爲這樣將給版本升級帶來問題。要加入我們自定義的內容通過增加文件到相應的目錄下即可。比如這裏我們可以增加一個資源文件,把我們要修改的元素放在裏面。

3、 TEMPLATE目錄
這是一個最主要的目錄。子目錄介紹如下:
(1)、SiteTemplates目錄
放置各種網站定義模板。每個網站定義模板都會有一個ONET.XML文件,它位於 C:/Program Files/Common Files/Microsoft Shared/Web Server Extensions/12/TEMPLATE/SiteTemplates/Site_Definition_Name/XML folder
ONET.XML有五個節:
1、NavBars:指定主頁的頂部導航和左部導航
2、ListTemplates:指定該站點可創建的各種列表(自定義列表、文檔庫、圖片庫等)
3、DocumentTemplates:指定在創建文檔庫時可以創建的文檔模板(Microsoft Office Word 文檔、Microsoft Office FrontPage 網頁、Microsoft Office Excel 電子表格等)
4、Configurations:指定站點在創建時默認生成的各種列表和模塊
5、Modules:指定站點中默認包含的Web部件庫
注意:修改ONET.XML後需要重新啓動IIS,纔可生效

實例:基於已有模板創建站點模板。
步驟:
1、打開C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/SiteTemplates目錄
2、複製粘貼一個SPS文件夾,改名爲GASSPS
3、找到C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/2052/XML目錄
4、在目錄中創建一個名爲WEBTEMPGASSPS.XML的文件,把下列XML粘貼到文件中
<?xml version="1.0" encoding="utf-8"?>
<!-- _lcid="2052" _version="12.0.4518" _dal="1" -->
<!-- _LocalBinding -->
<Templates xmlns:ows="Microsoft SharePoint">
<Template Name="GASSPS" ID="10001">
   <Configuration ID="0" Title="浙江天然氣模板" Hidden="FALSE" ImageUrl=""
       Description="此模板用於初始化浙江天然氣網站。" >
   </Configuration>
</Template>
</Templates>
5、重啓IIS(iisreset)
6、打開創建站點頁面,在“選擇模板”節中多了一個“自定義”選項,下面就有我們剛添加的“浙江天然氣模板”。

(2)、THEMES目錄
放置各種網站主題。

實例:創建自定義的主題
步驟:
1、先找到 Theme 文件夾位置 C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/THEMES
2、複製一個 Theme 的文件夾如 CLASSIC 更改成自己要的名字如 GASTHEME
3、在文件夾中,將CLASSIC.INF 改成與自己文件夾相同的名字如 GASTHEME.INF
4、打開 GASTHEME.INF 將 title 改成與自己文件夾和文件名相同的名字如GASTHEME
5、找到 C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/LAYOUTS/2052/SPTHEMES.XML 文件,複製並粘貼一個<Templates>元素,修改裏面的內容如下:
  <Templates>
             <TemplateID>GASTHEME</TemplateID>
              <DisplayName>天然氣主題</DisplayName>
              <Description>天然氣主題將被應用</Description>
              <Thumbnail>images/thwheat.gif</Thumbnail>
              <Preview>images/thwheat.gif</Preview>
</Templates>
上面兩個圖片是參考Wheat主題的圖片,也可以改成自己的圖片,圖片存放位置 C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/IMAGES文件夾下
6、打開“網站設置”中“網站主題”,就可以找到我們剛剛添加的GASTHEME主題了。

(3)、LAYOUTS目錄
網站所有的頁面功能(網址後面有 _layouts的頁面)都集中於此目錄下面(除了模板中的Default.aspx以及某類型List相關頁面)。可以添加自己的功能頁面,方法:

(4)、ADMIN目錄
管理中心的頁面功能集中此目錄下面。

(5)、CONTROLTEMPLATES目錄
放置各種服務器控件。

(6)、IMAGES目錄
放置網站用到的主要圖片,如網站Logo等。

(7)、FEATURES目錄
放置各種Feature,在MOSS 2007中feature功能之強大超乎想象,可以說對一個已有的網站功能性的增強最後多數都要通過feature來實現。包括母版頁、內容頁以及文檔庫等都是通過Feature來實現的。

實例1:使用Feature自定義母版頁。
步驟:
1、         打開Feature目錄C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/FEATURES
2、         新建一個GASMASTERPAGES文件夾
3、         在GASMASTERPAGES文件夾下,新建Feature.xml文件,將下列內容粘貼到文件中
<!-- _lcid="1033" _version="12.0.4518" _dal="1" -->
<!-- _LocalBinding -->
<Feature Id="cbdddc58-c0e1-4d64-99bc-071379a910f3"
          Title="Gas Master"
          Description=""
          Version="12.0.0.0"
          Scope="Site"
          Hidden="False"
          DefaultResourceFile="core"
          xmlns="http://schemas.microsoft.com/sharepoint/">
   <ElementManifests>
        <ElementManifest Location="ProvisionedFiles.xml"/>
   </ElementManifests>
</Feature>
在這個XML文件中,以下關於Featrue的metadata 包含在Featrue 元素中。(更詳細的信息請參閱Feature.xml Files)
ID: 一個GUID,用於唯一標識這個Feature,可以通過VS生成
Title:Feature 的名字,可以在網站內關於Site Featrues的頁面中看到。
Description:對description的描述。
Version:Feature的版本;
Scope:其值可以是Web或Site,它指明瞭這個Feature是應用於整個的Site Collection還是僅僅用於單獨的一個子站點。
Hidden:值可以是True或False.該設置指定了這個Feature是否在Site Feature頁面上顯示。
DefaultResourceFile: 資源文件名字,Feature依賴它提供其它附加的配置信息。
Feature.xml文件中的<ElementManifests>元素,這個元素包含了另一個XML文件的位置,而這個文件包含的<Elemnets>的內容是Feature要實現的。
<ElementManifest>元素指明瞭要使用一個名爲ProvisionedFiles.xml的文件,以下是該文件的<Elements>元素內容。
4、         在GASMASTERPAGES文件夾下,新建ProvisionedFiles.xml文件,將下列內容粘貼到文件中
<!-- _lcid="1033" _version="12.0.4518" _dal="1" -->
<!-- _LocalBinding -->
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <Module Name="OSGMasterPages" Url="_catalogs/masterpage" Path="MasterPages" RootWebOnly="TRUE">
        <File Url="Gasmaster.master" Type="GhostableInLibrary">
           <Property Name="ContentType" Value="" />
           <Property Name="PublishingPreviewImage" Value="~SiteCollection/_catalogs/masterpage/$Resources:core,Culture;/Preview Images/Gas.png, ~SiteCollection/_catalogs/masterpage/$Resources:core,Culture;/Preview Images/Gas.png" />
           <Property Name="MasterPageDescription" Value="" />
      </File>
 </Module>
 <Module Name="PublishingLayoutsPreviewImages" Url="_catalogs/masterpage" IncludeFolders="??-??" Path="" RootWebOnly="TRUE">
       <File Url="Gas.png" Name="Preview Images/Gas.png" Type="GhostableInLibrary">
       </File>
    </Module>
</Elements>
5、         新建MasterPages和zh-cn文件夾,在MasterPages文件夾中新建Gasmaster.master文件,在zh-cn文件夾中放入一張模板頁的圖片Gas.png
6、         重啓IIS(iisreset)
7、         在SharePoint服務器上運行CMD.exe,
輸入命令切換目錄:cd C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/BIN
安裝Feature輸入命令:stsadm -o installfeature -filename GASMASTERPAGES
激活Feature輸入命令:stsadm -o activatefeature -filename GASMASTERPAGES/feature.xml -url http://portal:8000
8、         打開“網站設置”中“母版頁”,就可以看到我們剛剛添加的Gasmaster.master母版。
參考連接:Create a Feature: Add Custom Master Pages to your Site Collections

實例2:使用Feature定義站點中的菜單項
包括其中第一個CustomAction在“網站設置”頁面中的“外觀”標題下創建了一個自定義鏈接.第二個CustomAction在頁面的“網站操作” 菜單下增加了一個用戶自定義菜單項.第三個CustomAction在文檔庫的“新建”下拉菜單下創建了一個自定義菜單項.第四個 CustomAction在文檔庫的“操作”下拉菜單下創建了一個自定義菜單項。
步驟:
1、創建一個Feature.xml文件
在Features目錄下創建一個目錄例如MyMenu,在其中創建一個Feature.xml文件,文件內容如下:
<?xml version="1.0" encoding="utf-8" ?>
<!-- _lcid="1033" _version="12.0.4017" _dal="1" -->
<!-- _LocalBinding -->
<Feature Id="6098EC11-8128-409A-8D2C-414E93F67DD4"
            Title="$Resources:GasMenu,MenuTitle;"
            Description="$Resources:GasMenu,MenuDescription;"
            Version="12.0.0.0"
            Scope="Web"
           Hidden="FALSE"
           DefaultResourceFile="customDocumentLibrary"
            xmlns="http://schemas.microsoft.com/sharepoint/">
            <ElementManifests>
                <ElementManifest Location="LightUp.xml" />
            </ElementManifests>
</Feature>
2、在C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/Resources文件夾中新建GasMenu.zh-CN.resx文件,輸入以下內容
<?xml version="1.0" encoding="utf-8"?>
<!-- _lcid="2052" _version="12.0.4518.1016" _dal="1" -->
<!-- _LocalBinding -->
<root>
<Data Name="MenuTitle">
<Value>天然氣菜單項</Value>
</Data>
<Data Name="MenuDescription">
<Value> 添加了四個菜單項,分別爲在“網站設置”頁面中的“外觀”標題下創建了一個自定義鏈接、在頁面的“網站操作”菜單下增加了一個用戶自定義菜單項、在文檔庫的“新建”下拉菜單下創建了一個自定義菜單項和在文檔庫的“操作”下拉菜單下創建了一個自定義菜單項。</Value>
</Data>
</root>
   3、創建Feature的描述文件LightUp.xml
文檔的內容如下:
<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<!-- create command link site setting page -->
<CustomAction Id="SiteSettings" GroupId="Customization"
                Location="Microsoft.SharePoint.SiteSettings"
                            Sequence="106"
                            Title="Custom Site Setting Command">
                            <UrlAction Url=""/>
     </CustomAction>
     <!-- Add command to site action dropdow -->
        <CustomAction Id="SiteActionsToolbar"
                       GroupId="SiteActions"
                                   Location="Microsoft.SharePoint.StandardMenu"
                                   Sequence="1000"
                                   Title="Custom Action"
                                   Description="custom site action"
                                   ImageUrl="/_layouts/images/ACG16.GIF">
                                   <UrlAction Url=""/>
    </CustomAction>
       <!-- Document Library Toolbar New Menu DropDown -->
       <CustomAction Id="DocLibNewToolbar"
               RegistrationType="List"
                     RegistrationId="101"
                     GroupId="NewMenu"
                     Rights="ManagePermissions"
                     Location="Microsoft.SharePoint.StandardMenu"
                     Sequence="1000"
                     Title="Custom New Command"
                     Description="custom new command "
                     ImageUrl="/_layouts/images/ACG16.GIF">
                     <UrlAction Url=""/>
    </CustomAction>
       <!-- Document library Toolbar Actions Menu Dropdown -->
       <CustomAction Id="DocLibActionsToolbar"
               RegistrationType="List"
                     RegistrationId="101"
                     GroupId="ActionsMenu"
                     Rights="ManagePermissions"
                     Location="Microsoft.SharePoint.StandardMenu"
                     Sequence="1000"
                     Title="Command on Document Library"
                     Description=" command on document library"
                     ImageUrl="/_layouts/images/ACG16.GIF">
                     <UrlAction Url=""/>
         </CustomAction>
</Elements>
4、重啓IIS(iisreset)
5、在SharePoint服務器上運行CMD.exe,
輸入命令切換目錄:cd C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/BIN
安裝Feature輸入命令:stsadm -o installfeature -filename MyMenu
激活Feature輸入命令:stsadm -o activatefeature -filename MyMenu/feature.xml -url http://portal:8000
疑問:在Feature.xml中,雖然把編碼方式改爲encoding="GB2312",但是使用漢字都不能識別出來,可是在LightUp.xml文件中雖然編
方式爲encoding="UTF-8",但是使用漢字都能識別出來,感覺很奇怪。

實例3:使用Feature創建用戶控件。
請看KaneBoy的 DelegateControl:SharePoint Server 2007內置的一個“用戶控件包裝器”

實例4:使用Feature創建自定義的文檔庫。
請看宋振乾的 如何在MOSS2007中創建一個定製的 Document Library Feature

 
Microsoft Office SharePoint Server 2007(簡稱MOSS2007)的母版頁

MOSS2007 中所有的頁面都是由母版頁(Master Pages)和內容頁(Content Pages)組成, MOSS 2007中的Master Page和在ASP.net中使用的Master Page是一樣的.它們定義了網站頁面的基本佈局. Page layout的概念類似於ASP.net 2.0中的Content Page,它指向一個Master Page並且實現Content Placeholders 的內容.下面是一篇介紹ASP.NET 2.0中母版頁組成結構的很好的入門文章。
Master Your Site Design with Visual Inheritance and Page Templates
母版頁允許多級嵌套,所有在sharepoint中的站點默認都使用default.master這個母版頁。這個文件位於
C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/GLOBAL這個目錄下。default.master母版頁是全局母版頁,任何對該頁面的修改將影響所有的sharepoint站點,而且會影響管理中心站點。
sharepoint的母版頁中定義了許多佔位符(content placeholder)。這些佔位符定義了頁面的不同區域,開發人員可以定製佔位符最
顯示給用戶的內容。SharePoint中定義的佔位符中多數並不允許用戶重寫其內容。多數的sharepoint頁面都包括了 PlaceHolderMain這個佔位符,它控制了頁面的主要內容部分,典型情況下,該佔位符將包括多個web部件區域,用來拖webpart進去。但對於開發人員來說,可以用來放置想要放的任何東西。
下面列出了sharepoint的母版頁中定義的所有佔位符:(詳細位置請對照default.master)
1、<asp:ContentPlaceHolder ID="PlaceHolderGlobalNavigationSiteMap" runat="server" />
放置連接到頂級站點的超連接
2、<asp:ContentPlaceHolder ID="PlaceHolderGlobalNavigation" runat="server" />
放置頂部一行內容。
3、<asp:ContentPlaceHolder ID="PlaceHolderSiteName" runat="server" />
放置站點名稱
4、<asp:ContentPlaceHolder ID="PlaceHolderSearchArea" runat="server" />
放置搜索框
5、<asp:ContentPlaceHolder ID="PlaceHolderHorizontalNav" runat="server" />
放置水平導航欄
6、<asp:ContentPlaceHolder ID="PlaceHolderTopNavBar" runat="server" />
放置水平導航欄一行內容。
7、<asp:ContentPlaceHolder ID="WSSDesignConsole" runat="server" />
頁面編輯控件,當頁面進入編輯頁面模式時使用(當我們點 Site Actions, Edit Page後)
8、<asp:ContentPlaceHolder ID="SPNavigation" runat="server" />
在 Windows SharePoint Services中默認爲空,用於附加的頁面編輯控件
9、<asp:ContentPlaceHolder ID="PlaceHolderPageImage" runat="server" />
左側的圖片
10、<asp:ContentPlaceHolder ID="PlaceHolderTitleLeftBorder" runat="server" />
Title區左側邊框
11、<asp:ContentPlaceHolder ID="PlaceHolderTitleBreadcrumb" runat="server" />
TitleBreadcrumb頁面導航區
12、<asp:ContentPlaceHolder ID="PlaceHolderPageTitleInTitleArea" runat="server" />
Breadcrumb區下面的標題
13、<asp:ContentPlaceHolder ID="PlaceHolderMiniConsole" runat="server" />
一個放置頁面級命令的地方,比如在WIKI站點裏的Edit Page, History, Incoming Links
14、<asp:ContentPlaceHolder ID="PlaceHolderTitleRightMargin" runat="server" />
Title區右側空白
15、<asp:ContentPlaceHolder ID="PlaceHolderTitleAreaSeparator" runat="server" />
TitleAreaSeparator區
16、<asp:ContentPlaceHolder ID="PlaceHolderLeftNavBarDataSource" runat="server" />
左側導航區數據源
17、<asp:ContentPlaceHolder ID="PlaceHolderCalendarNavigator" runat="server" />
在頁面中有日曆時爲其顯示一個日期選擇框
18、<asp:ContentPlaceHolder ID="PlaceHolderLeftNavBarTop" runat="server" />
左側導航區上面的導航區
19、<asp:ContentPlaceHolder ID="PlaceHolderLeftNavBar" runat="server" />
左側導航區
20、<asp:ContentPlaceHolder ID="PlaceHolderLeftActions" runat="server" />
左側導航區下面的動作區
21、<asp:ContentPlaceHolder ID="PlaceHolderNavSpacer" runat="server" />
左側導航區的寬度
22、<asp:ContentPlaceHolder ID="PlaceHolderLeftNavBarBorder" runat="server" />
左側導航區的邊框元素
23、<asp:ContentPlaceHolder ID="PlaceHolderBodyLeftBorder" runat="server" />
頁面body的邊框元素
24、<asp:ContentPlaceHolder id="PlaceHolderPageDescription" runat="server" />
頁面描述區
25、<asp:ContentPlaceHolder id="PlaceHolderMain" runat="server" />
頁面主體
26、<asp:ContentPlaceHolder ID="PlaceHolderBodyRightMargin" runat="server" />
頁面body的右邊空白
27、<asp:ContentPlaceHolder ID="PlaceHolderFormDigest" runat="server"/>
這是頁面中必備的 "form digest"安全組件。
28、<asp:ContentPlaceHolder ID="PlaceHolderUtilityContent" runat="server" />
頁面底部需要的一塊特殊內容
29、<asp:ContentPlaceHolder ID="PlaceHolderBodyAreaClass" runat="server" />
附加在頁面頂部的body中的樣式
30、<asp:ContentPlaceHolder ID="PlaceHolderTitleAreaClass" runat="server" />
TitleArea附加的樣式
31、<asp:ContentPlaceHolder id="PlaceHolderAdditionalPageHead" runat="server" />
提供給內容頁添加所有可以放在<head>區域的內容,如CSS、JS等。
 
Microsoft Office SharePoint Server 2007的CSS應用

CSS在SharePoint頁面中的應用順序
1、 CORE.CSS
2、 
http://www.heathersolomon.com/blog/archive/2006/10/27/sp07cssoptions.aspx
對頁面修改可以通過SharePoint Designer(簡稱SPD)打開整個站點進行修改,也可以使用其他一些文本編輯器直接對物理文件進行
改。
當我們打開一個Sharepoint頁面時,Sharepoint將首先判斷此頁面(母版頁和內容頁)是否被破壞了結構(被SPD或其他工具修改過
被修改了部分將保存在Sharepoint的數據庫中),如果是就從數據庫中找到該頁面的將其顯示出來,如果沒有,則從Sharepoint服務
的C:/Program Files/Common Files/Microsoft Shared/web server extensions/12目錄中找到相應物理文件來顯示頁面,

 

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/xeppp/archive/2009/01/15/3788956.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章