SharePoint 2013 圖文開發系列之定義站點模板


  SharePoint站點模板是一個非常好的功能,方便我們開發一類網站,然后在此基礎上做二次開發,對於SharePoint的使用,有着舉足輕重的作用。

  因為篇幅比較長,所以加上目錄,方便大家查看:

  一、為站點模板添加母版頁

  二、為站點模板添加自定義列表

  三、為站點模板添加可視化WebPart

1、添加新項目,選擇SharePoint 2013 空項目,如下圖:

clip_image001

2、選擇調試站點,部署為場解決方案,如下圖:

clip_image002

3、添加新項,選擇網站定義,如下圖:

clip_image003

4、查看onet.xml,如下圖:

clip_image004

5、查看webtemp_CustomSiteDefinition.xml,Name要和步驟4 Name一致,如下圖:

clip_image005

6、Xml簡介,如下表格:

<?xml version="1.0" encoding="utf-8"?>
<Templates xmlns:ows="Microsoft SharePoint">
  <Template Name="CustomSiteDefinition" ID="10005">
    <Configuration
      ID="0"
      Title="自定義站點"
      Hidden="FALSE"
      ImageUrl="/_layouts/images/CPVW.gif"
      Description="這是我的測試自定義站點"
      DisplayCategory="SP自定義">
    </Configuration>
  </Template>
</Templates>

  如上面表格,ID一般要大於10000,我這里選擇10005了,小於10000可能導致創建報錯;Title為模板名稱,Hidden為是否隱藏,DisplayCategory為模板分類。

<?xml version="1.0" encoding="utf-8"?>
<Project Title="CustomSiteDefinition" Revision="2" ListDir="" xmlns:ows="Microsoft SharePoint" xmlns="http://schemas.microsoft.com/sharepoint/">
  <NavBars>
  </NavBars>
  <Configurations>
    <Configuration ID="0" Name="CustomSiteDefinition">
      <Lists/>
      <SiteFeatures>
      </SiteFeatures>
      <WebFeatures>
      </WebFeatures>
      <Modules>
        <Module Name="DefaultBlank" />
      </Modules>
    </Configuration>
  </Configurations>
  <Modules>
    <Module Name="DefaultBlank" Url="" Path="">
      <File Url="default.aspx">
      </File>
    </Module>
  </Modules>
</Project>

  如上面表格,這個可以說是站點的xml文件,包括定義的列表、Feature、字段等等,都需要在這里面聲明。

7、部署站點模板,然后創建,可以看到分類、模板名稱、描述等屬性,如下圖:

clip_image006

8、打開根據模板創建的站點,如下圖:

clip_image007

9、查看站點內容,什么應用程序都沒有,如下圖:

clip_image008

  以上,是站點模板的創建過程,下面,我們還要為站點模板豐富功能,因為不可能僅僅一個站點模板,就足夠我們使用了。

****************************這是華麗麗的分隔符********************************

為站點模板添加母版頁[返回頂部]

10、添加新項,選擇模塊,命名為”MasterPageModule”,如下圖:

clip_image009

11、修改MasterPageModule的Feature文件,方便以后識別,如下圖:

clip_image010

11、添加文件夾結構,並創建母版頁,我在body里面加背景色藍色,方便以后識別是否引用的是這個母版頁,如下圖:

clip_image011

12、修改MasterPageModule的Xml文件,如下圖:

clip_image012

13、修改default.aspx頁面引用的母版頁,改為custom.master,如下圖:

clip_image013

14、修改onet.xml文件,如下圖:

clip_image014

15、刷新首頁,如下圖:

clip_image015

  背景藍色,說明已經引用我們創建的母版頁了,設置成功!

****************************這是華麗麗的分隔符********************************

為站點模板添加自定義列表[返回頂部]

16、添加新項,選擇列表,如下圖:

clip_image016

17、填寫列表名稱,選擇模板,如下圖:

clip_image017

18、在母版頁的Feature里,移除列表定義的Feature,我們單獨為列表添加Feature:

clip_image018

19、添加並修改列表定義的Feature,如下圖:

clip_image019

20、為我的列表定義添加欄(建議先英文,后改為中文,防止內部字段編碼),如下圖:

clip_image020

21、下面我們修改視圖,當然也可以定義一個新的,這里我懶了,如下圖:

clip_image021

22、列表屬性,我們修改一下相對Url(中文看着別扭),其他看你的心情了,如下圖:

clip_image022

23、因為有一個字段,類型是選項,沒有設置選項的內容和默認值,我們修改下:

clip_image023

24、修改自定義站點的onet.xml文件,添加如下(自定義列表Feature的Guid),如下圖:

clip_image024

25、根據站點模板,新建網站,發現創建好就自帶我們定義的列表,如下圖:

clip_image025

26、查看列表,視圖里有我們創建的幾個欄,如下圖:

clip_image026

27、新建項目,選項類型也是正確的,我很欣慰,如下圖:

clip_image027

  如上所示,就是為站點定義添加自定義列表的過程,其實就是添加一個列表定義,然后在站點模板的onet.xml文件里,添加一個Feature節點。

****************************這是華麗麗的分隔符********************************

為站點模板添加可視化WebPart[返回頂部]

28、添加新項,選擇可視化web部件,如下圖:

clip_image028

29、在可視化webpart前台文件上添加控件,如下圖:

clip_image029

30、在可視化webpart后台文件上,添加方法代碼,如下圖:

clip_image030

31、在Default.aspx頁面上添加用戶控件的引用,並添加webpartzone和webpart:

  Assembly="$SharePoint.Project.AssemblyFullName$"

clip_image031

32、部署解決方案,打開首頁,如下圖:

clip_image032

33、輸入Url,點擊顯示圖片,如下圖:

clip_image033

  以上,就是站點模板使用的簡單介紹,這里,我只為站點模板添加了母版頁、列表可視化WebPart,其實還可以添加網站欄、事件接收器等其他模塊,有興趣的可以嘗試一下。

參考鏈接

http://msdn.microsoft.com/en-us/library/ms454677(v=office.14).aspx

http://msdn.microsoft.com/en-us/library/ms447717(v=office.14).aspx

http://msdn.microsoft.com/en-us/library/ms474369(v=office.14).aspx


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM