sharepoint-book-cover

Tìm hiểu về Masterpage trong Sharepoint Server

Một trong những thuật ngữ thông dụng nhất của Sharpepoint là Master Pages. Vậy Master Pages có tầm quan trọng như thế nào? Bằng cách nào mà Master Pages có thể làm việc với các nội dung trong site và bằng cách nào chúng ta có thể thêm những vùng web part và những vùng để quản lý nội dung. Để giúp đỡ cho các bạn có thể tùy biến giao diện và gán những thuộc tính quản lý trong Sharepoint, trong bài viết này chúng tôi sẽ trình bày các khái niệm cốt lõi nhất của MOSS 2007 như: Master Pages, Page Layouts, Controls và Content Types.


Một trong những thuật ngữ thông dụng nhất của Sharpepoint là Master Pages. Vậy Master Pages có tầm quan trọng như thế nào? Bằng cách nào mà Master Pages có thể làm việc với các nội dung trong site và bằng cách nào chúng ta có thể thêm những vùng web part và những vùng để quản lý nội dung. Để giúp đỡ cho các bạn có thể tùy biến giao diện và gán những thuộc tính quản lý trong Sharepoint, trong bài viết này chúng tôi sẽ trình bày các khái niệm cốt lõi nhất của MOSS 2007 như: Master Pages, Page Layouts, Controls và Content Types.

Master Pages
Master pages không phải là một khái niệm mới hay một tính năng riêng lẻ của Sharepoint. Master pages đã từng được giới thiệu cùng với ASP.NET 2.0, nó được ví như ngôi nhà quản lý tập trung, dùng để quản lý bố cục và thiết kế website hoặc ứng dụng. Chỉ tính riêng 1 file master page có thể quản lý vô số giao diện các trang trong cùng 1 site hoặc 1 ứng dụng.  

Content Pages
Content Pages là một phần của Master pages. Master pages lưu trữ bố cục và thiết kế trong khi Content pages quản lý nội dung. Content pages phụ thuộc vào master page. Trong Sharepoint, Content Pages được gọi là Page Layouts. File Master Page sẽ kết hợp với Page Layout để tạo ra lớp trình bày nội dung cho Sharepoint Site.

Sự kết hợp của Master Page và Page Layout

Master Page and Page Layout Create the Rendered Page

Những thành phần của file Master Page
Master Page sẽ chứa code của tất cả bố cục giao diện người dùng dành cho site. Nó bao gồm CSS, Javascript và HTML. Ví dụ về những gì bạn sẽ đặt tại trang master page:
1. Header code bao gồm logo công ty và các thương hiệu hình ảnh
2. Navigation (Danh mục chính)
3. Footer code bao gồm bản quyền và các liên kết
4. CSS (Cascading Style Sheet) Styles
5. Body background colors, images hoặc styles
6. Các chức năng thông dụng của JavaScript
Các thành phần cốt lõi khác được sử dụng trong file Master Page là Content Placeholder. Content Placeholder là nơi được đặt trước để chèn nội dung vào. Nội dung sẽ được lưu trữ trong Page Layouts và sau đó sẽ được chèn vào Master Page. Ví dụ, một trang Master Page đơn giản sẽ đi theo hướng như sau:
1. Mở thẻ HTML/Body
2. CSS Styles
3. Chức năng của JavaScript
4. HTML code cho header
5. Content Placeholder cho nội dung chính của trang
6. HTML code cho footer
7.  Đóng thẻ HTML/Body 
Thẻ Content Placeholder sẽ có dạng như sau:
<asp:ContentPlaceHolder id=”MyPlaceholder” runat=”server” />
Content Placeholders có thể được bao bọc trong mã HTML, ví dụ như thẻ: DIV, SPAN hoặc TABLE. Hay nói một cách hay hơn là ở bất kỳ nơi nào bạn muốn chèn nội dung thì bạn có thể hiệu chỉnh cho trang đó bằng cách chèn thẻ Content Placeholder.
Có rất nhiều yêu cầu đối với Content Placeholders dành cho Sharepoint. Lưu ý: Nếu không có placeholders, site sẽ không hoạt động. Nếu bạn không muốn hiển thị placeholders trên site của bạn, bạn có thể ẩn các placeholder bằng cách nhóm chúng vào thẻ ẩn của ASP:Panel control, hoặc bạn có thể set cho mỗi placeholder với visible=”false”

Những thành phần chủ yếu của Master Page

Components of a Master Page file

Những thành phần của file Page Layout
Page layout chứa tất cả Content Control khớp với Content Placeholders từ file master page. Lấy ví dụ, khớp với nội dung quản lý từ ví dụ mẫu Content Place Holder ở trên thì Page Layout sẽ có dạng như sau:
<asp:Content ContentPlaceholderID=”MyPlaceholder” runat=”server”>
        Insert field controls, web part zones or HTML code here
  </asp:Content>
Nội dung bố cục trang là nội dung sẽ thay đổi từ trang tới trang, lấy ví dụ:
  • Tiêu đề, tác giả
  • Khung Body Text
Ngoại trừ thẻ đăng ký HTML/Body, không có bất kỳ thẻ nào được phép nằm ngoài Content Controls trong file page layout. Nếu bạn để thẻ HTML hoặc mã bên ngoài Content Controls, nó sẽ làm hư trang đó .
Nội dung Sharepoint được thêm vào các content controls trong page layout bằng 1 trong 2 cách sau: Field Controls hoặc Web Part Zones

1. Field Controls
là những vùng nội dung mà được map vào các cột trong Content Type. Vị trí của Field control được quản lý bởi file page layout và không thể di chuyển bằng cách chỉnh sửa nội dung thông qua giao diện Web. Điều này rất có ích cho những nội dung cần được duy trì ở vị trí cố định trong site. Field control có dạng như sau:
<SharePointWebControls:TextField FieldName=”ArticleByLine” runat=”server”/>
2. Ngược lại, Web Part Zones cho phép chỉnh sửa nội dung và di chuyển nội dung ở bất kỳ nơi nào trong trang. Web part zone được chỉ định trong page playout và sau đó content editor có thể chọn lựa để thêm, xóa hoặc sắp xếp Web part với những vùng chỉ định. Web Part Zone có dạng như sau:
<WebPartPages:WebPartZone runat=”server” AllowPersonalization=”false” FrameType=”TitleBarOnly” ID=”MiddleRightZone” Title=”Middle Right Zone” Orientation=”Vertical”><ZoneTemplate></ZoneTemplate></WebPartPages:WebPartZone>

Những thành phần chủ yếu của Page Layout

Components of a Page Layout File

Content Types
Content Types là một khái niệm mới đồng thời cũng là một tính năng mới trong Sharepoint 2007. Content type là một tập hợp các thuộc tính được áp dụng cho 1 category đặc trưng mà nội dung của nó được sử dụng nhiều lần. Thông qua content types, bạn có thể quản lý các siêu dữ liệu và sự thay đổi của tài liệu hoặc các dạng tài liệu.
Các columns từ 1 content type được chuyển đến các field controls trong page layout. Một content type có thể tham chiếu đến nhiều page layout, nhưng 1 page layout chỉ có thể tham chiếu đến 1 content type. Điều này cho phép bạn có thể dễ dàng thay đổi page layout của 1 trang trong 1 site mà không cần thỏa hiệp nội dung khi mà nội dung đó bị quản lý bởi content type


Mối liên hệ giữa Content Type, Page Layout và Master Page

 

Comments

comments

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>