Chủ đề 5: Quản lý nhóm và cấu trúc template cho nhiều trang tin (multisite) MỤC LỤC: Phần 2 – Quản lý nhóm trong liferay portal 2 1. Quản lý community 2 1.1. Các chức năng quản lý cơ bản của Portlet Enterprise Admin Communities 3 1.2. Các chức chức năng quan trọng trong việc quản lý community 5 1.2.1. Quản lý trang 5 1.2.2. Quản lý team của một community 7 1.2.3. Quản lý thành viên và vai trò của họ trong một community 8 1.3. Phân quyền truy cập trong portlet Enterprise Admin Communities và trong Community 9 1.3.1. Quyền truy cập trong portlet Enterprise Admin Communities 10 1.3.2. Quyền truy cập trong community 11 2. Các loại nhóm còn lại trong Liferay 12 2.1. Organization 12 2.2. User Group 13 2.3. User 13 Phần 3 Site templates and page templates 14 1. Page templates 14 1.1. Quản lý các Page templates 14 1.2. Phân quyền truy cập các Page template 14 1.3. Áp dụng page template vào quá trình tạo page mới 15 2. Site templates 16 2.1. Quản lý các site template 16 2.2. Phân quyền truy cập site templates 17 2.3. Áp dụng Site Template 17 Phần 4 Staging, workflow, và publishing 18 1. Staging 18 2. Publishing 19 3. Staging – publishing từ xa 20 4. Workflow 21 1. Nội dung trình bày Báo cáo này trình bày về làm thế nào để quản lý nhóm. Nó sẽ bao gồm việc thảo luận làm thế nào để tạo và quản lý user, organizations, community, cũng như làm thế nào để tạo và quản lý các page, các team, và các thành viên trong mỗi loại. Nó cũng sẽ giới thiệu về việc thiết kế và xuất bản, qui trình làm việc trong môi trường thiết kê staging workflow, lưu trữ ảo, và thiết lập các công cụ hỗ trợ nhóm. Nội dung trình bày báo cáo bao gồm: • Quản lý nhóm, các pages, các teams, và các thành viên của một nhóm • Áp dụng các site template and page template • Quản lý quy trình thiết kế (Manage staging workflow và publishing) Phần 2 – Quản lý nhóm trong liferay portal 1. Quản lý community Liferay cung cấp khả năng xây dựng hệ thống website dành cho các community, nơi mà các thành viên có thể chia sẻ các mối quan tâm của họ về cộng đồng. Các community cung cấp cho các team khả năng tạo và quản lý community và cho phép các thành viên của mình xây dựng các website khác nhau. Mỗi community có một tập hợp web page riêng, trong đó bao gồm các public page và các private page, hệ thống quản lý page, quản lý thành viên, và quản lý quyền truy cập. 1. Định nghĩa Community – cộng đồng: Nói một cách đơn giản, một cộng đồng là một nhóm đặc biệt mà người dùng trong nhóm này sẽ chia sẻ cùng nhau các mối quan tâm tương tự. Nói chung, một community là một tập hợp của người sử dụng có chung một mối quan tâm. Lưu ý rằng mỗi portal sẽ tạo ra một nhóm mặc định trong hệ thống được gọi là community Guest khi portal đó khởi chạy lần đầu tiên, group Guest không có thể bị xóa bởi vì nó là một nhóm trong yêu cầu hệ thống. Hình sau cho biết sơ đồ liên kết cơ sở dữ liệu trong quản lý community của liferay: Một tổ chức – organization cũng là một nhóm đặc biệt. Vì vậy, bạn có thể hỏi: sự khác biệt giữa một community và organization là gì? Khi nào bạn nên sử dụng community thay vì organization? Organization về bản chất là có thứ bậc trong khi community là ngang hàng (phẳng). Vì vậy, community cung cấp cho chúng ta khả năng để tham gia và mời các thành viên khác, trong khi các Organization không có khả năng này. Do đó, nếu bạn đang có kế hoạch xây dựng một trang web và để cung cấp các khả năng tham gia và mời các thành viên và với cơ cấu không cần có thứ bậc thì nên sử dụng community. Nếu bạn đang có kế hoạch xây dựng một trang web và cấu trúc phân cấp là cần thiết, nên sử dụng tổ chức.
Chủ đề 5: Quản lý nhóm và cấu trúc template cho nhiều trang tin (multi-site) MỤC LỤC: Phần 2 – Quản lý nhóm trong liferay portal 2 1. Quản lý community 2 1.1. Các chức năng quản lý cơ bản của Portlet Enterprise Admin Communities 3 1.2. Các chức chức năng quan trọng trong việc quản lý community 5 1.2.1. Quản lý trang 5 1.2.2. Quản lý team của một community 7 1.2.3. Quản lý thành viên và vai trò của họ trong một community 8 1.3. Phân quyền truy cập trong portlet Enterprise Admin Communities và trong Community 9 1.3.1. Quyền truy cập trong portlet Enterprise Admin Communities 10 1.3.2. Quyền truy cập trong community 11 2. Các loại nhóm còn lại trong Liferay 12 2.1. Organization 12 2.2. User Group 13 2.3. User 13 Phần 3 - Site templates and page templates 14 1. Page templates 14 1.1. Quản lý các Page templates 14 1.2. Phân quyền truy cập các Page template 14 1.3. Áp dụng page template vào quá trình tạo page mới 15 2. Site templates 16 2.1. Quản lý các site template 16 2.2. Phân quyền truy cập site templates 17 2.3. Áp dụng Site Template 17 Phần 4 - Staging, workflow, và publishing 18 1. Staging 18 2. Publishing 19 3. Staging – publishing từ xa 20 4. Workflow 21 1. Nội dung trình bày Báo cáo này trình bày về làm thế nào để quản lý nhóm. Nó sẽ bao gồm việc thảo luận làm thế nào để tạo và quản lý user, organizations, community, cũng như làm thế nào để tạo và quản lý các page, các team, và các thành viên trong mỗi loại. Nó cũng sẽ giới thiệu về việc thiết kế và xuất bản, qui trình làm việc trong môi trường thiết kê - staging workflow, lưu trữ ảo, và thiết lập các công cụ hỗ trợ nhóm. Nội dung trình bày báo cáo bao gồm: 1 • Quản lý nhóm, các pages, các teams, và các thành viên của một nhóm • Áp dụng các site template and page template • Quản lý quy trình thiết kế (Manage staging workflow và publishing) Phần 2 – Quản lý nhóm trong liferay portal 1. Quản lý community Liferay cung cấp khả năng xây dựng hệ thống website dành cho các community, nơi mà các thành viên có thể chia sẻ các mối quan tâm của họ về cộng đồng. Các community cung cấp cho các team khả năng tạo và quản lý community và cho phép các thành viên của mình xây dựng các website khác nhau. Mỗi community có một tập hợp web page riêng, trong đó bao gồm các public page và các private page, hệ thống quản lý page, quản lý thành viên, và quản lý quyền truy cập. 1. Định nghĩa Community – cộng đồng: Nói một cách đơn giản, một cộng đồng là một nhóm đặc biệt mà người dùng trong nhóm này sẽ chia sẻ cùng nhau các mối quan tâm tương tự. Nói chung, một community là một tập hợp của người sử dụng có chung một mối quan tâm. Lưu ý rằng mỗi portal sẽ tạo ra một nhóm mặc định trong hệ thống được gọi là community Guest khi portal đó khởi chạy lần đầu tiên, group Guest không có thể bị xóa bởi vì nó là một nhóm trong yêu cầu hệ thống. Hình sau cho biết sơ đồ liên kết cơ sở dữ liệu trong quản lý community của liferay: Một tổ chức – organization cũng là một nhóm đặc biệt. Vì vậy, bạn có thể hỏi: sự khác biệt giữa một community và organization là gì? Khi nào bạn nên sử dụng community thay vì organization? Organization về bản chất là có thứ bậc trong khi community là ngang hàng (phẳng). Vì vậy, community cung cấp cho chúng ta khả năng để tham gia và mời các thành viên khác, trong khi các Organization không có khả năng này . Do đó, nếu bạn đang có kế hoạch xây dựng một trang web và để cung cấp các khả năng tham gia và mời các thành viên và với cơ cấu không cần có thứ bậc thì nên sử dụng community. Nếu bạn đang có kế hoạch xây dựng một trang web và cấu trúc phân cấp là cần thiết, nên sử dụng tổ chức. Liferay cung cấp một môi trường cho phép người dùng quản lý community, trong đó bao gồm việc quản lý các page, quản lý team, phân công thành viên, phân công vai trò người dùng, Nói chung, community có thể được tạo ra và quản lý trong hai portlet. Portlet đầu tiên là Enterprise Admin Communities (portlet ID 134) trong Control Panel, thứ hai là My Communities (portlet ID 29). Hai portlet này gần tương tự nhau vì có chung codebase, tại sao lại cần đến hai portlet? Portlet My Communities cung cấp một cách để quản lý community dành cho cá nhân, nó có thể thêm vào bất cứ page nào trong portal hiện tại mà không cần phải vào Control Panel như portlet Enterprise Admin Communities. 1. Các chức năng quản lý cơ bản của Portlet Enterprise Admin Communities Portlet Enterprise Admin Communities cung cấp khả năng quản lý community. Nó có sẵn trong Control Panel (với điều kiện người truy cập phải có quyền truy cập thích hợp – mặc định chỉ có admin được phép truy cập Portlet Enterprise Admin Communities). ● Thêm một community: Sử dụng portlet Enterprise Admin Communities để thêm các community. Trước hết, bạn cần truy cập portlet Enterprise Admin Communities trong Control Panel, chọn Add để thêm community Chú ý khi chọn giá trị type, có các kiểu sau đây (mặc định là Open) để lựa chọn: - Open: Cho phép người dùng tham gia và rời khỏi một community bất cứ khi nào họ muốn. - Restricted (hạn chế): chỉ admin của community hoặc chủ sở hữu mới có thể thêm người sử dụng cho community hoặc loại bỏ người sử dụng từ community, người dùng không có khả năng tham gia vào community. Thay vào đó, họ có thể yêu cầu thành viên, tất nhiên, người dùng có khả năng rời khỏi community. 2 - Private: quá trình thêm người dùng không hiển thị tất cả, cũng không cho người dùng có khả năng tham gia vào community, và cũng không cho họ có khả năng yêu cầu thành viên. Thuộc tính Active là để kích hoạt community này đi vào hoạt động, tức là người dùng cuối sẽ có thể truy cập vào community này, nếu không chỉ có admin mới có thể truy cập. ● Xem danh sách community: Chỉ cần có quyền truy cập Portlet Enterprise Admin Communities, ta có thể xem được các danh sách các community hiện tai của portal, và chủ yếu việc quản lý community (bao gồm việc quản lý page và team, quản lý thành viên và vai trò người dùng) đều có các bước thao tác đầu tiên trên danh sách này - chủ yếu được thực hiện thông qua nút Action: Actions: là một danh sách các chức năng cho community tương ứng như cập nhập community, quản lý page, phân quyền người dung, phân công thành viên, Leave (rời bỏ community) hoặc Join (gia nhập community), và xóa community . Và các chức năng này cũng yêu cầu có quyền truy cập thích hợp Lưu ý rằng bạn chỉ có thể nhìn thấy các community mà bạn là một thành viên. Nói cách khác, nếu bạn không phải là thành viên của một community, bạn sẽ không có khả năng để xem community đó. ● Tìm kiếm community: Lưu ý rằng bạn sẽ có thể chỉ tìm kiếm trong một tập hợp của các community trong đó bạn là một thành viên. Nói cách khác, nếu bạn không phải là thành viên của một community, bạn sẽ không thể thấy community bằng cách tìm kiếm. ● Chỉnh sửa một community: Lưu ý rằng khi chỉnh sửa một community, bạn sẽ thấy Group ID cho community hiện tại. Trong ví dụ này, bạn sẽ thấy Group ID với giá trị 10262. Hãy ghi nhớ về Group ID, bạn sẽ cần ID này sau đó trong việc xuất bản nội dung web từ xa. ● Xóa một community: Lưu ý rằng việc xoá một community sẽ xóa tất cả các trang thuộc về community. Đồng thời, các liên kết của tất cả người dùng và vai trò được giao trong community sẽ được ngắt ngay lập tức 2. Các chức chức năng quan trọng trong việc quản lý community Phần tiếp theo ta trình bày đến các chức năng quan trọng trong việc quản lý community bao gồm : ● Quản lý trang ● Quản lý team ● Quản lý thành viên và vai trò của họ trong community Các chức năng này đều có thể truy cập dễ dàng và trực tiếp thông qua nút Actions của mỗi community trên danh sách các community 1. Quản lý trang Thành phần chính của một community là tập hợp các page, bao gồm cả public page và private page. Thông qua portlet Enterprise Admin Communities, bạn sẽ có thể quản lý các page của một community nhất định nếu bạn có quyền truy cập thích hợp. Bằng cách chọn Manage Pages trong nút Actions ta sẽ đến giao diện chính quản lý trang của một community. Ngoài các chức năng chính thêm, chỉnh sửa, và xóa các page và chỉ định quyền truy cập trên các page riêng biệt, liferay phiên bản 6.0 cung cấp chức năng Manage Pages trên một giao diện rất trực quan và có tính tương tác cao, bạn có thể đặt lại thứ tự các page bằng cách kéo và thả page, do đó bạn có thể thay đổi mối quan hệ, cấu trúc parent/children giữa các page. Ngoài ra, bạn nên có tùy chọn trong việc hỗ trợ thông tin tìm kiếm các page thông qua các tùy chọn nâng cao như keywords, title, description, languages, và thêm vào các metadata cho từng page. ● Các tiện ích: Look and feel và Logo 3 Merging pages Monitoring pages là tiện ích hỗ trợ việc thống kê và phân tích website, cụ thể là hỗ trợ công cụ Google Analytics. Chỉ liên kết thông tin tài khoản Google Analytics (Google Analytics ID) với website, ta sẽ thu nhận được các thống kê và phân tích về website đó do Google Analytics cung cấp. Ngoài ra, bạn có thể tích hợp các phân tích web khác tương tự như WebTrends Analytics. Tiện ích trợ giúp công cụ tìm kiếm thu thập thông tin từ website (sitemap) là giao thức để giúp các công cụ tìm kiếm thu thập thông tin từ website và đảm bảo rằng tất cả những thứ có liên quan được đánh chỉ mục chỉ mục. Giao thức thông báo cho công cụ tìm kiếm của cấu trúc (sitemap) của website. Tóm lại, đây là một cách dễ dàng để các webmaster thông báo cho công cụ tìm kiếm biết về các page trên site của họ tiện cho việc thu thập thông tin. Chỉ cần vào Settings -> Sitemap. Bạn có thể chọn gửi thông tin sitemap tới Google hay Yahoo!. Cài đặt hosting ảo Vitual hosting là tên của chức năngcho phép lưu trữ nhiều hơn một tên miền trên cùng một máy tính, đôi khi trên cùng một một địa chỉ IP. Ví dụ, community "Book Street" có cả public page và private page. Đối với các public page, cụ thể là page "Home", bạn cần gõ URL http://localhost:8080/web/book-street/home. Trong hầu hết trường hợp, bạn muốn thay thế bằng một tên miền thân thiện như street.bookpub.com. Nếu sử dụng Vitual hosting, URL cần nhập sẽ trở thành "http://street.bookpub.com:8080/". Vitual Hosting có nghĩa là lưu trữ nhiều hơn một tên miền trên cùng một địa chỉ IP. Có hai phương pháp cơ bản để thực hiện Vitual Hosting: ● Name based : Vitual Hosting dựa trên việc sử dụng nhiều host name được chia sẻ cùng một địa chỉ IP. ● IP address/IP-based : mỗi website sẽ chỉ đến một địa chỉ IP riêng. Bạn có thể cấu hình server web với nhiều giao diện mạng vật lý, hay các giao diện mạng ảo trên cùng một giao diện vật lý, hoặc nhiều địa chỉ IP trên cùng một giao diện mạng vật lý. Liferay sử dụng Named based Virtual Hosting cho phép có một hay nhiều community trong một portal duy nhất, được xác định bởi host name riêng biệt và độc nhất. Người dùng cuối chỉ cần nhập vào host name mà họ mong đợi để truy cập, bề ngoài là họ đang truy cập trang web khác nhau, nhưng thực tế là hướng đến một web server duy nhất. Và dựa trên host name, server xác định các community hiện tại cho người dùng. ● Các chức năng chính trong việc quản lý trang: Việc thêm, cập nhập thông tin, và xóa các page trong một community có thể thực hiện một cách dễ dàng nhưng ta cần chú ý các điểm sau: ● Khi thêm mới một page cho community hiện tại, ta có thể sử dụng các page template có sẵn để tạo nội dung page (page mới tạo có nội dung tương tự page template) ● Khi xóa page parents các page con của nó cũng bị xóa theo. Importing và exporting pages: Portal thực hiện chức năng này bằng cách tạo ra và diễn giải thông tin các page vào các tập tin *.lar. Để thực hiện Export/Import là sử dụng portlet-wise. Trong portlet Enterprise Admin Communities, bạn có thể Export/Import tất cả các page và các thông tin đi kèm của một cummunity nhất định trong một file .lar. Những mục thường được export bao gồm: ● Nội dung page: Mặc định. ● Portlet thêm vào trên các page: Mặc định bao gồm cả cài đặt, cài đặt lưu trữ, sở thích của người sử dụng, dữ liệu, ● Permissions: Việc chỉ định quyền truy cập và các cửa sổ portlet cá nhân (mục này là tùy chọn). Việc thực hiện Import và Export phải làm riêng rẽ trên hai tập hợp public page và private page vì quyền truy cập các page này là khác nhau ở một số đối tượng việc Import và Export chung sẽ dẫn đến nhầm lần, chồng chéo giữa các thông tin. 4 Lưu ý rằng LAR là viết tắt của Liferay Archive. Nó bao gồm tất cả các page, layouts, configuration, look and feel, permission. Import một tập tin LAR sẽ ghi đè lên bất kỳ page cùng tên nếu tồn tại của một community nhất định được cấu hình trong tập tin LAR. Chức năng Import và Export page hỗ trợ rất nhiều cho Admin/Owner community khi cần back up dữ liệu của community (trong trường hợp không phải là Admin của portal thì chỉ có thể sử dụng chức năng này để back up dữ liệu). Ngoài ra chúng còn tác dụng hỗ trợ việc chuyển giao dữ liệu giữa các community hoặc lớn hơn là giữa các portal Liferay hoặc giữa các portal hỗ trợ định giạng .LAR. 2. Quản lý team của một community Tương tự như các trình bày ở trên bạn có thể quản lý các team (manage teams) của 1 community cụ thể. Nhìn chung, có thể có nhiều team cho một community nhất định. Bạn có thể sử dụng chức năng quản lý các team bằng cách nhấn vào Manage Teams trong nút Actions (bên trái community trong danh sách các community) và phân công thành viên cho các team. Trong giao diện chính để quản lý team của community, ở đây ta có thể sử dụng chức năng Assign Members để quản lý thành viên của một team (thêm/loại bỏ thành viên), chức năng Edit để sửa đổi thông tin team, chức năng Delete để xóa team: Để làm thành viên của một team của community hiện tại VD: Book Street thì bạn phải là thành viên của community Book Street. 3. Quản lý thành viên và vai trò của họ trong một community Portlet Enterprise Admin Communities cung cấp khả năng thêm người dùng cho community nếu bạn có quyền kiểm soát truy cập thích hợp, và khả năng chỉ định vai trò cho người sử dụng trong community nhất định. Và hơn thế nữa, người dùng sẽ có khả năng tham gia hoặc rời bỏ một open community. Ngoài ra, với các Restricted community bạn sẽ có thể gửi yêu cầu muốn được làm thành viên, hoặc nếu là admin/owner của community bạn sẽ có thể chấp thuận hoặc từ chối yêu cầu muốn được làm thành viên. Assigning users – thêm thành viên vào community Assigning users là chức năng thường là mặc định cho admin và owner của community khi họ muốn gán một người dùng làm thành viên của community đó. Để sử dụng chức năng này chỉ cần chọn Actions -> Assign Members. Chức năng này hỗ trợ việc gán user đơn lẻ làm thành viên community, hoặc có thể chỉ định tất cả user của một tổ chức hoặc nhóm người dùng làm thành viên một community bằng cách chọn một các thẻ User, Organizations hay User Groups. Chú ý rằng nếu một người dùng VD: Lotti Stein được chỉ định vào một community thông qua cả Users và Organizations/ User Groups, chỉ có một bản ghi được lưu trong cơ sở dữ liệu, đây là một cách tiếp cận mềm dẻo để thêm thành viên cho community. Assign User Roles – chỉ định vai trò thành viên Assign User Roles là chức năng cho phép chỉ định phạm vi vai trò của người dùng trong community. Mặc định, community được tạo với 3 vai trò : Community Administrator, Community Member, and Community Owner như trong hình. Tổng quát, bạn có thể chỉ định một hoặc nhiều vai trò cho người dùng trong một community nếu bạn có đủ quyền. Chú ý rằng tất cả thành viên trong một community sẽ có quyền thành viên (Community Member). - Community Administrator : họ là siêu người dùng của community nhưng không có quyền cho người dùng khác làm admin và Owner - Community Member/ Community Content Reviewer: tất cả thành viên trong community có quyền này - Community Owner : là siêu người dùng của community và có thể chỉ định quyền cho người dùng (kể cả quyền admin, owner). Tổng quát,có 2 bước chỉ định vai trò cho người dùng, gần giống với việc gán thành viên vào các team của community : 5 ● Bước 1: chọn một vai trò ● Bước 2 : chọn các thành viên của community tham gia vào vai trò đó. Join – tham gia một community Ta có thể sử dụng Portlet My Community để join vào bất kỳ open community nào đã được active. Như trong hình với cùng 1 user Portlet Enterprise Admin Communities chỉ hiển thị community Liferay mà user Michell đã làm thành viên, còn Portlet My Community thì hiển thị tất cả các community (đã active). Vì vậy bạn chỉ có thể tham gia open community bằng portlet My Communities. Ví dụ, như user Lotti Stein của doanh nghiệp “Palm Tree Publication”, bạn có thể tham gia vào community Book Street. Để đơn giản,chỉ cần tìm Book Street trên portlet My Communities, và chọn icon Join kề bên phải, bạn sẽ thấy icon Join chuyển thành Leave Leave – rời bỏ một community Như đã đề cập, portal cung cấp khả năng cho phép thành viên rời bỏ community. Cả 2 portlet My Communities và Enterprise Admin Communities đều cung cấp chức năng này. Ví dụ bạn đang là thành viên của community Book Street và muốn rời bỏ nó, chọn icon Leave kế bên community (hoặc trong nút Actions), sẽ thấy icon Leave chuyển thành Join. Requesting membership – yêu cầu được làm thành viên Như đã đề cập, người dùng có thể yêu cầu được làm thành viên trong một restricted community, và community owners có thể xem yêu cầu đó, sau đó chấp nhận hoặc từ chối yêu cầu. Tất nhiên, việc xử lý yêu cầu chỉ có trong restricted community. Chú ý rằng một khi yêu cầu thành viên được chấp nhận, người dùng Lotti Stein sẽ thấy icon Request Membership trở thành icon Leave. Từ đó, người dùng Lotti Stein có thể rời bỏ community. Tất nhiên, mọi người dùng có thể gửi yêu cầu đến mọi restricted community. community owners sẽ xử lý yêu cầu này, có thể từ chối (Deny) hoặc chấp nhận cho phép (Approve) người gửi yêu cầu làm thành viên community. Owner có thể sử dụng portlet My Communities hoặc Portlet Enterprise Admin Communities, chọn community của mình click icon View Membership Request kế bên phải community, bạn sẽ thấy một danh sách các yêu cầu cần xem. Chú ý rằng chỉ người chủ và admin community mới có quyền xem yêu cầu thành viên. 3. Phân quyền truy cập trong portlet Enterprise Admin Communities và trong Community Như đã đề cập trước đó, portlet Enterprise Admin Communities chỉ xuất hiện trên Control Panel nếu người dùng hiện tại là một thành viên của một community. Thông thường portlet Enterprise Admin Communities nên được phân quyền khi truy cập trong Control Panel, bao gồm cả việc phân quyền quản lý page trang trong community. Trong phần này, chúng ta sẽ thảo luận về quyền truy cập trên portlet Enterprise Admin Communities, quyền truy cập trong một community. 1. Quyền truy cập trong portlet Enterprise Admin Communities Phân quyền trong portlet Enterprise Admin Communities, dấu ‘*’ là các quyền mặc định (không thay đổi đc) Như ta thấy mặc định thành viên của bất kỳ community nào và guest đều có thể xem Portlet Enterprise Admin Communities trên danh mục portlet, và các thành viên của bất kỳ community có thể được cấp quyền cấu hình portlet và quyền truy cập portlet còn guest thì không thể được cấp các quyền này. Nếu muốn ta cũng có thể cấp các quyền trên cho User không phải là một thành viên của bất kỳ communitiy. 6 2. Quyền truy cập trong community Như trên hình ta thấy thành viên community có thể được cấp tất cả các quyền truy cập trong community bao gồm các quyền liên quan đến việc : quản lý community, quản lý page, quản lý team, quản lý thành viên và vai trò thành viên, và quản lý công cụ staging – publishing. Nhưng guest thì không thể được cấp bất cứ quyền nào. Nếu muốn ta cũng có thể cấp các quyền trên cho User không phải là một thành viên của bất kỳ communitiy, để User đó có thể quản lý các community mà mình không phải là thành viên (tương tự như admin portal). Ngoài ra, còn một cách tiếp cận khác để thêm quyền truy cập community cho user, đó là việc chỉ cấp quyền truy cập một community, ví dụ cấp quyền Managa Page của community “Book Workshop” cho role "MB Topic Admin" mà không cấp quyền Managa Page lên các community khác, việc này thực hiện bằng cách chọn Permissions trong nút actions bên cạnh community "Book Workshop" rồi tích vào checkbox Manage Pages của role "MB Topic Admin". Việc cấp quyền bằng 2 cách tiếp cận khác nhau như vậy cho thấy tính mềm dẻo trong thiết kế chức năng của Liferay. 2. Các loại nhóm còn lại trong Liferay 1. Organization Một tổ chức có một hệ thống phân cấp nhất định, không như tất cả các community là ngang hàng như nhau, một tổ chức có thể chứa các tổ chức con. Theo mặc định, các tổ chức con kế thừa các quyền từ tổ chức mẹ của chúng thông qua vai trò (role). Như đã đề cập, một tổ chức – organization cũng là một nhóm đặc biệt. Organization về bản chất là có thứ bậc trong khi community là ngang hàng (phẳng). Vì vậy, community cung cấp cho chúng ta khả năng để tham gia và mời các thành viên khác, trong khi các Organization không có khả năng này. Do đó, nếu bạn đang có kế hoạch xây dựng một trang web và để cung cấp các khả năng tham gia và mời các thành viên và với cơ cấu không cần có thứ bậc thì nên sử dụng community. Nếu bạn đang có kế hoạch xây dựng một trang web và 7 cấu trúc phân cấp là cần thiết, nên sử dụng tổ chức. Quan trọng nhất, cả organization và community đều có tập các public page và private page. Chúng cũng có khả năng áp dụng các page template và site template để dễ dàng tùy chỉnh các trang web. Cơ chế quản lý organization cũng tương tự như community ở một số chức năng như : ● Quản lý trang ● Quản lý team ● Quản lý thành viên và vai trò của họ trong community Ngoài ra portlet quản trị organization trong Control Panel còn có thêm các chức năng riêng trong việc quản lý organization: ● Chức năng Add Users giúp thêm thành viên cho organization hiện tại một cách nhanh hơn, gồm 2 giai đoạn : đầu tiên tạo thành viên mới cho portal sau đó thành viên này sẽ được gán luôn vào organization. Việc này nhanh hơn nhiều nếu ta tự thêm thành viên vào portal rồi sau đó sử dụng chức năng Assign Members để thêm thành viên ● Khi tạo mới một organization (sử dụng nút Add cạnh View all, hoặc Add Regular Organization trong nút Actions) ta có thể lựa chọn giữa việc để organization này là parents organization hay là con của một organization đã tồn tại. Lưu ý một organization con chỉ có thể có một và chỉ một parents organization. Khi chỉnh sửa một organization ta cũng chỉ có thể thay đổi parents organization của parents organization đó chứ không thể add thêm. Tất nhiên, một organization không nên chọn chính nó như là parents organization của nó. 2. User Group Khi không thể phân nhóm người dùng bằng community hay organization ta dùng user group. Một user group là một nhóm đặc biệt được xây dựng không theo bất kỳ hoàn cảnh nào, nó chỉ đơn thuần là việc gom nhóm các user. Nói cách khác, user có thể được tập hợp thành user group. Mỗi user có thể được gán vào bất kỳ user group, và được cấp quyền truy cập user group thông qua role. Vì vậy, mỗi người sử dụng thuộc về nhóm người sử dụng sẽ nhận được quyền truy cập dựa trên vai trò. Ngoài ra, user group cũng có tập các public page và private page. Chúng cũng có khả năng áp dụng các page template và site template để dễ dàng tùy chỉnh các trang web. Cơ chế quản lý User Group cũng tương tự như community ở một số chức năng như : ● Quản lý trang ● Quản lý team ● Quản lý thành viên và vai trò của họ trong community Các chức năng này do portlet quản trị User Group trong Control Panel cung cấp. Giao diện chính quản lý user group với các chức năng: 3. User Người sử dụng đơn lẻ có thể coi một nhóm đặc biệt chỉ có 1 thành viên. Ngoài ra, mỗi user cũng có tập các public page và private page của riêng mình và cũng có khả năng áp dụng các page template và site template để dễ dàng tùy chỉnh các trang web. Việc quản lý user cũng đơn giản hơn việc quản lý các nhóm trên rất nhiều. Portlet quản lý user trong control panel cung cấp các chức năng sau: ● Các chức năng chính trong việc quản lý thông tin user, như thêm sửa xóa cập nhập thông tin tài khoản của user. ● Chức năng phân quyền từng người dùng vào role theo tùy chọn (sử dụng nút Actions -> Permissions) ● Và chức năng quản lý page của mỗi user (bao gồm tập các public page và private page): chức năng này tương tự với Manage Page trong việc quản trị community nên ta không trình bày lại. 8 Phần 3 - Site templates and page templates Portal có rất nhiều tính năng mạnh mẽ, tuy nhiên, sẽ gây khó khăn những người dùng chỉ muốn tạo ra một community và bắt đầu sử dụng, khi đó phải tự tạo layout, thêm portlets, và update portlets. Portlet Site Templates sẽ là công cụ tốt trong trường hợp này khi tạo sẵn các website đã được cấu hình trước, bao gồm bố trí layout, portlet, và themes. Portlet Site Templates cho phép portal administrator định nghĩa một tập các site templates như các website mẫu sẵn có dùng cho việc tạo các website mới. Bạn không cần phải tạo ra các Page mới từ một page trống (blank page), thay vào đó bạn sẽ có thể áp dụng layout và portlet của các page cấu hình sẵn từ các page khác. Portlet Page Templates cho phép portal administrator định nghĩa một tập các page templates như các page sẵn có để dùng cho việc tạo các page mới. 1. Page templates Một page template là một page được cấu hình sẵn bao gồm page layout và các portlet. Theo mặc định, các page mới luôn được tạo trống. May mắn thay, các page template sẽ thay đổi kịch bản này và giảm thời gian tạo page, các page mới có thể được tạo ra từ các page cấu hình sẵn. 1. Quản lý các Page templates Việc quản lý page template bao gồm việc thêm, xóa, cập nhật các page template và cũng có thể gán quyền truy cập (nếu bạn có quyền truy cập thích hợp, thường admin có quyền gán quyền truy cập quản lý Page templates). Page template được quy định là LayoutPrototype trong CSDL với các cột: layoutPrototypeId, companyId, name, description, settings_, và active_. Khi tạo một page template chỉ phải chú ý thuộc tính Active nếu nó được chọn có nghĩa là Page template đấy đã được kích hoạt và người dùng cuối có thể sử dụng vào việc tạo page mới trong hệ thống website của mình. Như bạn thấy, bạn có thể edit và delete page templates, và cũng có thể gán quyền truy cập trên các page template. Khi chỉnh sửa một page template, bạn sẽ có thể thấy một liên kết được gọi là Open Page Template. Khi nhấn vào liên kết, một cửa sổ mới sẽ mở ra với một URL là: /group/template-id/layout, nơi bạn sẽ có thể thêm các portlet, cập nhật portlet, cập nhật page layout. Lưu ý rằng template-id là kết hợp giữa template và id là giá trị trong cột layoutPrototypeId của page template trong CSDL. 2. Phân quyền truy cập các Page template Như bạn đã thấy, portlet Page Templates phải thông qua Control Panel. Vì vậy, để xem portlet Page Templates, bạn cần phải có sự cho phép truy cập trong Control Panel. Bảng sau đây cho thấy các quyền truy cập trên portlet Page Templates giữa Community Member (hay Organization Member và Group Member) và Guest Như ta thấy mặc định thành viên của bất kỳ community, organization, group và guest đều có thể xem portlet Page Templates trên danh mục portlet, và các thành viên của bất kỳ community, organization, group có thể được cấp quyền cấu hình portlet và quyền truy cập portlet còn guest thì không thể được cấp các quyền này. Nếu muốn ta cũng có thể cấp các quyền trên cho User không phải là một thành viên của bất kỳ communitiy, organization, group. Sau khi gán quyền truy cập vào portlet Page Templates, bạn có thể đi sâu hơn và gán quyền trên các page 9 template. Ngoài ra theo hướng tiếp cận đơn lẻ, bạn cũng có thể phân quyền cho riêng một page template (nếu có quyền truy cập thích hợp), bằng cách chọn Permissions trong nút Actions của bất cứ page template nào bạn muốn. 3. Áp dụng page template vào quá trình tạo page mới Bạn có thể áp dụng một page template khi thêm một page mới (cả public page and private page), page mới sẽ có page layout và các portlet tương tự như của page template: Việc này có thể áp dụng trong các quá trình tạo page (sử dụng chức năng Manage Pages) của community, organization, user group, hay của user nếu người dùng có quyền truy cập thích hợp 2. Site templates Một site template là một website được cấu hình sẵn bao gồm các public page và private page với page layout, các portlet và theme. Theo mặc định, các website mới luôn được tạo trống. May mắn thay, các site template sẽ thay đổi kịch bản này và giảm thời gian tạo web, các website mới có thể được tạo ra từ các website cấu hình sẵn. 1. Quản lý các site template Việc quản lý site template có nghĩa là, bạn có thể thêm, xóa, cập nhật các site template và cũng có thể gán quyền truy cập (nếu bạn có quyền truy cập thích hợp). Site template được quy định là LayoutSetPrototype trong CSDL với các cột: layoutSetPrototypeId, companyId, name, description, settings_, và active_. Tạo một page template tên là "Street Site Template" Khi tạo một page template chỉ phải chú ý thuộc tính Active nếu nó được chọn có nghĩa là Page template đấy đã được kích hoạt và người dùng cuối có thể sử dụng vào việc tạo page mới trong hệ thống website của mình. Như bạn thấy, bạn có thể edit và delete site templates, và cũng có thể gán quyền truy cập trên các site template. Khi chỉnh sửa một site template, bạn sẽ có thể thấy một liên kết được gọi là Open Site Template. Khi nhấn vào liên kết, một cửa sổ mới sẽ mở ra với một URL là: /group/template-id/home, nơi bạn sẽ có thể thêm các portlet, cập nhật portlet, cập nhật page layout. Lưu ý rằng template-id là kết hợp giữa template và id là giá trị trong cột layoutSetPrototypeId của site template trong CSDL. Xây dựng một site template Nhiệm vụ xây dựng site template sẽ bao gồm hai quá trình: manage page, và cập nhập nội dung mỗi page trong site template đó. Quá trình manage page của một site template khá đơn giản và tương tự như với việc manage page thông thường của community, organization, user group: cách nhấp vào biểu tượng Manage Pages bên cạnh site template, thêm các page mới từ đầu hoặc từ các page template, và cập nhật look and feel với các theme khác nhau nếu có thể. Các quá trình nội dung mỗi page của mỗi site template như sau: click chọn site template trên danh mục Site 10 [...]...Templates hoặc chọn edit trong nút action để vào trang edit của site template đó, sau đó chọn "Open site template" bạn sẽ thấy một cửa sổ mới sẽ được mở với một page của site template được lựa chọn Cuối cùng, bạn chỉ có thể cập nhật layout template và các portlet cho mỗi page của template Phân quyền truy cập site templates Như bạn đã thấy, portlet Site Templates phải thông qua... vậy, để xem portlet Site Templates, bạn cần phải có sự cho phép truy cập trong Control Panel Bảng sau đây cho thấy các quyền truy cập trên portlet Site Templates giữa Community Member (hay Organization Member và Group Member) và Guest 2 Như ta thấy mặc định thành viên của bất kỳ community, organization, group và guest đều có thể xem portlet Site Templates trên danh mục portlet, và các thành viên của bất... quyền cấu hình portlet và quyền truy cập portlet còn guest thì không thể được cấp các quyền này Nếu muốn ta cũng có thể cấp các quyền trên cho User không phải là một thành viên của bất kỳ communitiy, organization, group Sau khi gán quyền truy cập vào portlet Site Templates, bạn có thể đi sâu hơn và gán quyền trên các site template Ngoài ra theo hướng tiếp cận đơn lẻ, bạn cũng có thể phân quyền cho riêng... riêng một site template (nếu có quyền truy cập thích hợp), bằng cách chọn Permissions trong nút Actions của bất cứ site template nào bạn muốn Áp dụng Site Template Về cơ bản, các site template là website được xây dựng sẵn, một tập hợp các page, các layout template, portlet, và theme làm việc cùng nhau Thông thường, có các loại website: user's public và private pages; organization's private và public pages;... pages; community's private và public pages; user group's private và public pages Như đã nêu trong chương trước, mỗi organization sẽ có các public page và private page Khi xây dựng các page của một organization, chúng ta có thể các site template để tạo ngay các tập hợp page public và private một cách dẽ dàng không mất nhiều thời gian: - Và cũng tương tự khi tạo một tập các page cho User, hay User Group... lúc nào mà không gây ảnh hưởng đến trang trực tiếp Việc này là cần thiết cho việc quản lý thiết kế website (manage staging) Người sáng tạo nội dung sẽ làm việc trên các bản sao, còn người sản xuất nội dung có thể phê duyệt các bản sao hoặc từ chối các bản sao và trả lại cho người tạo ra nội dung, và người biên tập nội dung lấy nhận các bản sao do người sản xuất đưa ra và có thể từ chối tới nhà sản xuất... trình làm việc với workflow Để copy từ live group tới staging group, nhấp vào nút Copy from Live cạnh View Pages và Publish to Live Hình dưới mô tả làm thế nào activate staging, để copy từ live tới staging, và xuất từ staging tới live Activate Staging: Tạo staging group và copy các page (cả public và private page), từ live group vào staging group Với một website lần đầu kích hoạt staging nó sẽ thực hiện... Staging – publishing từ xa portal cung cấp khả năng staging và publishing từ xa mà thông qua đó người dùng có thể chọn các tập con của các page và dữ liệu, và chuyển chúng đến các live site, ví dụ như một portal từ xa nào đó Để thực hiện staging – publishing từ xa ta cần có các thông tin từ cả 2 live site và staging site Việc cài đặt này chỉ lưu thông tin lên group No1 mà không ảnh hưởng đến No2, vì vậy No2... box dùng cho staging và 2 box là production box dùng cho publishing, mỗi cái đều chỉ chứa 1 live group nhưng live group trong box staging có nhiệm vụ làm môi trường staging cho 2 group còn lại 4 Ngoài ra, bạn có thể lập nhiều hơn 2 production box như trong hình trên Những production box có thể được tổ chức môi trường phân cụm Hơn nữa, những production box có thể được phân phối theo vị trí địa lý Ví dụ,... những production box có thể được phân phối theo vị trí địa lý Ví dụ, bạn có thể đặt một box ở California, Mỹ, và một box khác ở Zurich, Thụy Sĩ Để staging và publishing từ xa, chúng ta sử dụng IP 64.71.191.145 cho staging box I, và các IP 69.198.171.104 , 69.198.171.105 cho các production boxes II và III tương ứng Workflow Trong một môi trường staging, người sử dụng có thể làm việc trên các bản sao bằng