Thứ Hai, 23 tháng 6, 2014

Tại sao nên sử dụng Drupal - Ưu điểm và nhược điểm của Drupal

Drupal được biết đến như một hệ quản trị nội dung ổn định và mạnh mẽ, sự ổn định và mạnh mẽ từ nhân của Drupal khiến cho Drupal được tin dùng cho các website lớn có lượng người truy cập cao. Sự linh hoạt trong nền tảng của Drupal giúp cho các lập trình viên có thể lập trình mở rộng website của họ theo bất kỳ hướng nào, tính năng nào mà hầu như không gặp khó khăn gì .


Ưu điểm của Drupal
- Nền tảng mạnh mẽ, ổn định, mã nguồn được tối ưu nâng cao hiệu suất hoạt động giúp tiết kiệm nguyên của hệ thống . Là nền tảng vững chắc cho các website có lượng truy cập lớn như BBC England, MTV …Một trang báo công nghệ sử dụng Drupal khá thành công là trang Thông Tin Công Nghệ .
- Cấu trúc linh hoạt giúp các lập trình viên mở rộng chức năng không hạn chế theo nhu cầu sử dụng .
- Drupal cực kỳ thân thiện với công cụ tìm kiếm, đó là một lợi thế rất lớn khi SEO luôn là một vấn đề được quan tâm đối với bất kỳ trang web nào .
- Tính năng Multiple giúp bạn có nhiều website với một lần cài đặt Drupal . Giúp bạn điều khiển và quản lý dễ dàng hơn.
- Drupal chạy được cả trên server Linux và Windows trong khi Jooma chỉ chạy tốt trên server Linux .
Nhược điểm của Drupal
- Drupal được đánh giá là khó sử dụng với người dùng mới . Việc tạo các Menu khiến tôi cảm thấy thực sự bối rối . Có lẽ sự bối rối này chính vì thói quen sử dụng Joomla .
- Drupal có ít các thành phần mở rộng (extensions) hơn Joomla. Mỗi khi có phiên bản Drupal mới bạn phải chờ các nhà cung cấp nâng cấp extensions của họ để tương thích .
- Cách bố trí của website Drupal khiến người mới sử dụng khó tìm kiếm và đánh giá nên dùng extensions nào .

Tại sao nên sử dụng Drupal để phát triển web?
Có thể bạn nghe đâu đó người ta nói về Drupal, hoặc bạn thấy một vài website rất đẹp được tạo ra sử dụng Drupal.Drupal là 1 CMS (hệ quản trị nội dung), có nghĩa là Drupal sẽ hỗ trợ ta quản trị nội dung, bất kỳ kiểu nội dung gì.
Mọi thông tin trong Drupal được gọi là node. Node được xem là 1 đơn vị thông tin nhỏ nhât trong Drupal. Node có thể là 1 bài viết, 1 bài blog, 1 tin tức mà bạn đang đọc.
Nodes có nhiều kiểu khác nhau được gọi là "kiểu nội dung". Drupal có sẵn vài kiểu nội dung như "story" và "page". Bạn có thể tạo kiểu nội dung riêng cho bạn, ví dụ bạn tạo kiểu nội dung là tin tức (gồm 1 hình thumbnail đại diện cho bài tin tức, phần giới thiệu, nội dung chính...)

Bạn có thể tạo được gì với Drupal?
Với Drupal bạn có thể tạo:
· Một web tĩnh đơn giản, một trang web cá nhân, một trang blog
· Một website công ty
· Một webiste thông tin mua bán, giao dịch nhà đất
· Một website rao vặt, một website bán hàng online
· Một website mạng xã hội giống Myspace, twitter...
· ...
Về cơ bản, không có giới hạn với Drupal, bạn có thể tạo bất kỳ website nào theo ý bạn.
Tại sao nên sử dụng Drupal?
· Dể sử dụng (thậm chí không cần biết html, php...)
· Nhiều modules, nhiều themes
· Cộng động sử dụng lớn
· Tạo website nhanh chóng


Nguồn:http://phantuanduy.blogspot.com/

Những khái niệm cần nắm khi sử dụng Drupal

Làm quen với hệ thống của Drupal 7


Trên thanh công cụ quản trị hệ thống của Drupal có các menu Dashboard- bảng quản lý các tác vụ thường dùng, Content- quản lý nội dung, Structure- quản lý cấu trúc website, Apperance- quản lý giao diện, People- quản lý tài khoản người dùng, Modules- quản lý cài đặt, kích hoạt, phân quyền module, Configuration- cấu hình website, Reports- các báo cáo về tình trạng hệ thống, Help- trợ giúp, Add content- thêm vào bài viết mới, Find content- tìm kiếm bài viết.


Đầu tiên, bạn cần thay đổi một số thông tin cơ bản của website. Bạn vào menu Configuration rồi bấm Site imformation tại khung System. Ở trang hiện ra, bạn có thể thêm vào câu khẩu hiệu tại ô Slogan, sửa tên website tại ô Site name, Number of posts on front page- chọn số lượng bài viết hiển thị tại trang chủ. Riêng đối với khung Error Pages, bạn có thể tạo trang báo lỗi 404 (báo lỗi trang không tồn tại) để thân thiện người dùng, rồi thêm đường dẫn vào ô Default 404 (not found) page. Khi xong, bạn bấm Save Configuration để thay đổi có hiệu lực.

Để viết bài cho website, bạn bấm Add content trên thanh công cụ, bấm vào liên kết Article ở trang hiện ra. Tiếp theo, bạn nhập tiêu đề bài viết vào ô b, nhập các từ khóa vào ô Tags (các từ khóa này giúp ích quá trình seo, ngăn cách giữa các từ khóa là dấu phẩy (,), nhập nội dung vào khung Body (khung nhập nội dung này rất đơn giản, không có các công cụ soạn thảo văn bản, bạn có thể sử dụng các thẻ HTML), chọn định dạng văn bản ở trường Text Format.

Bạn bấm nút Browse ở mục Image để chèn hình ảnh đại diện cho bài viết. Drupal chỉ hỗ trợ các định dạng ảnh png, gif, jpg, jpeg, dung lượng tập tin tải lên không quá 8MB.

Ngoài ra, bạn có thể quy định một số thuộc tính cho bài viết như Menu Settings- đánh dấu chọn vào ô Provide a menu link để tạo menu cho bài viết, Comment settings- mở hoặc đóng tính năng bình luận ở cuối bài viết, Authoring Information- thông tin về tác giả bài viết. Khi viết xong, bạn bấm Save.

Những định nghĩa thường được sử dụng khi phát triển Drupal.
1.      Node:
Mỗi khi bạn tạo một đơn vị dữ liệu mới trong Drupal, bạn đang tạo một cái node mới. Một cái node có thể là một trang đơn giản với text và image, nhưng cũng có thể là một content type đã bị thay đổi hoàn toàn mà bạn tạo ra để chứa một bộ sưu tập hình ảnh nào đó. Một node được hiểu như một single instance của content, ngược lại một content type (đôi khi được gọi là một “node type”) được hiểu là một cấu trúc data đặc biệt cái được dùng cho một chuỗi các node.

Mặc định, có hai content type được kích hoạt là Page và Story.
Drupal có cung cấp một số cách cơ bản để duyệt (basic ways of navigating) các node, nhưng với module Views (một trong những modules không thể thiếu của Drupal), bạn có thể tạo ra các navigation scheme thích hợp với website của bạn.

2.      Users: Có 2 loại user:
     1.      Autheticated Users: Là user đã đăng ký account và đã đăng nhập. Đối với Drupal, account được tạo ra đầu tiên trong hệ thống User của Drupal sẽ có quyền lực tối cao và có thể làm bất cứ việc gì. Account này, được biết đến là user/1, cần được sử dụng để thực hiện những update mang tính bảo mật.
     2.      Anonymous Users: Là user không đăng ký hoặc chưa đăng nhập.

3.      Roles và Permissions: Là phương tiện quản lý quyền hạn của user trong Drupal:
     1.      Permissions: Là các công việc cụ thể mà một user có thể làm được trong Drupal.
      2.      Roles: Là một quyền hạn được tạo ra bởi một nhóm các permissions để đại diện cho một chức năng nào đó. Ví dụ Role gửi comment sẽ gồm các permissions là xem bài viết và gửi comment.

    Mỗi khách hàng thăm website của bạn đều được coi là một user (người dùng) cho dù họ có tài khoản (authenticated user) hay chưa có tài khoản (anonymously) tại website của bạn. Mỗi user có một mã để xác định họ là ai gọi là ID, anonymous users có ID là 0, trong hệ thống luôn tồn tại một user đặt biệt với ID là 1 được gọi là administrator hay gọi tắt là admin, user này được tạo trong quá trình cài đặt Drupal và có thể làm bất cứ thứ gì trong website.
Mỗi một user được gán một số permission (quyền) thông qua các role (vai trò), một role là một tập hợp các permission. Để gán quyền cho user đầu tiên ta tạo một role, sau đó gán (chọn) các quyền cho role đó (nói cho Drupal biết role này có thể làm gì và không được làm gì trên website) cuối cùng là gán role đó cho user.

Drupal cũng định nghĩa sẵn một số role như “anonymous user” (tập các permission dành cho những user không có tài khoản) và “authenticated user” (tập các permission dành cho các user đã có tài khoản), bạn hoàn toàn có thể gán thêm hoặc xóa các quyền của 2 role này.

4.      Blocks và Regions:
Drupal chia một trang thành markup, nội dung của page và các regions của page đó. Regions có thể không chứa, chứa một hoặc nhiều các blocks, blocks có thể chứa bất kỳ nội dung nào mà bạn muốn nó hiển thị. Thường thì block được tạo ra bởi các module, nhưng vẫn có thể tạo “tay”.

Có thể “đặt” block vào bất cứ region nào, và di chuyển block từ bất cứ region nào đến các region nào còn lại. Mỗi module đều có thể cung cấp block riêng của nó, vì thế mỗi khi bạn enable một module mới, bạn nên kiểm tra xem có block mới nào tồn tại hay không? Để chắc chắn block có thể hiển thị cho đúng user, bạn có thể cần phải điều chỉnh permission được định nghĩa bởi module mới đó.

5.      Categories, Taxonomy, Vocabularies và Terms:
Con người dường như có một yêu cầu không thể thỏa mãn về việc phân loại mọi thứ. Chúng ta xây dựng thư viện với sách được sắp xếp theo chủ đề, chúng ta dùng các quy ước đặt tên Latin để phân loại cỏ cây và thú vật thành họ hàng, và chúng ta dùng các category để sắp xếp các blog post của mình. Khoa học của việc đặt tên và phân loại mọi thứ gọi là taxonomy. Trong phạm vi Drupal, thuật ngữ taxonomy được hiểu là bất cứ hình thái tổ chức nào dựa trên các category và sự phân loại. Một taxonomy thường có một cấu trúc mang tính thứ bậc (hierarchical strucutre), giống như một cây phả hệ – các term ở các “nhánh” trên cùng của “cây” thường liên quan đến nhiều thứ, nhưng ở các nhánh nhỏ hơn thì các term sẽ càng cô đọng và rõ ràng hơn.

6.      Pager:
Pager là một collection của các liên kết cái chia một danh sách dài các nodes hoặc comments thành các phần nhỏ hơn. Mỗi page chứa một số lượng items giống nhau. Ví dụ có 100 items, nếu chia 10 items một trang thì ta sẽ có 10 trang. Pager thường gồm là liên kết đến 10 trang đó và các liên kết “next”, “previous”, first, last.

7.      Hooks và Quy ước đặt tên:
Khả năng mở rộng của Drupal được dựa trên quy ước đặt tên sử dụng cho các functions của nó, các conventions đó được hiểu như là các hooks. Hooks là một cơ chế để thực thi việc thừa kế, chia sẻ, sử dụng, cho phép sử dụng các functions của các modules khác nhau trong Drupal, và được sử dụng theo một quy ước đặt tên của riêng Drupal.

8.   Region và Block
Region (vùng, miền) trong Drupal ám chỉ các khu vực trên website, chúng được ghép lại để tạo thành một website như vùng trên (header) vùng chân (footer) vùng bên phải (right sitebar) vùng bên trái (left sitebar) vùng nội dung ở giữa (content)… – xem Hình dưới.

Block là các khối mỗi khối thực hiện một chức năng, nghiệp vụ nào đó trên website ví dụ như khối User login – cho phép người dùng đăng nhập, khối Search form hiển thị các control nhằm tìm tiếm trên website, khối Shopping cart hiển thị các mặt hàng mà khách hàng đặt mua, khối Who’s online hiển thị có bao nhiêu người đang truy cập vào website…Block được hiển thị trong các Region, các bạn muốn hiển thị Block ở đâu thì kéo chúng vào các Region ở các vị trí tương ứng.


Nguồn: http://phantuanduy.blogspot.com/

Chủ Nhật, 22 tháng 6, 2014

So sánh WordPress, Joomla và Drupal

So sánh WordPress với Joomla và Drupal trong giải pháp CMS


WordPress thường được biết đến là một mã nguồn mở thông dụng nhất trong giải pháp tạo một blog từ đơn giản đến chuyên nghiệp vì khả năng tùy biến cao, sử dụng dễ dàng và nhất là có nhiều plugin/theme hỗ trợ.
Trở lại những năm gần đây, WordPress đã dần trở thành một CMS đầy ngẫu nhiên do người dùng tự phong cho nó khi mà nó đã phát triển ngoài tầm của một mã nguồn blog, bạn có thể làm một trang tin tức, trang bán hàng, cổng doanh nghiệp, forum, mạng xã hội mini,…




Nhưng để trở thành một CMS thực thụ như Joomla hay Drupal, WordPress cần có thêm nhiều thời gian để phát triển thêm một số tính năng cần có. Nhung điều đó không có nghĩa là không làm được ngay bây giờ, mà dưới đây là những giải pháp biến WordPress thành một CMS thực thụ thông qua việc sử dụng các plugin cần thiết.

1. Để giống CMS, WordPress cần một bộ CCK

Joomla!

Khi sử dụng Joomla hay Drupal thì chắc chắn bạn đã nghe qua về khái niệm CCK (Content Construction Kit) và ngay cái tên của nó cũng đã gợi nhớ cho chúng ta điều gì đó, nó sẽ giúp bạn quản trị từng nội dung trên website theo phong cách riêng của bạn, ví dụ như ngoài việc bạn có thể tạo thêm các extra fields cho các bài viết bạn còn có thể tạo ra các template riêng biệt cho từng category từ đó bạn có thể tạo ra cho website của bạn sự phong phú về mặt nội dung và hiển thị. Với Joomla! bạn có thể tham khảo một số extensions CCK phổ biến và hoàn toàn miễn phí như K2FLEXIcontent component hay K2 component,…

WordPress

Mặc định WordPress không có thêm tính năng này nhưng bạn vẫn có thể hoàn toàn tự làm cho mình một CCK như ý muốn từ việc kết hợp custom post type, custom taxonomy và custom field.
Hiện tại plugin Pods có thể giúp bạn làm được việc này bằng cách cho phép tự tạo các custom post type, custom taxonomy, custom field dễ dàng và phân nhóm sử dụng cho chúng theo phong cách riêng.
Ngoài ra, nếu bạn cần giải pháp xây dựng cấu trúc bài viết theo phong cách riêng để phù hợp với từng yêu cầu thì có thể thử với IG PageBuilder hoàn toàn miễn phí hoặc Visual Composer (trả phí).

Drupal

Ở Drupal 7, ngoài sức mạnh của core như Content Types and FieldsNodesTaxonomy, etc. người dùng có thể mở rộng Drupal site của mình bằng các module mạnh mẽ như: Views (724 470 usage), Ctools (672 003 usage), Wysiwyg (339 780 usage), etc. để thay đổi cách hiện thị cũng như cung cấp thêm các tính năng tiện lợi và hữu ích cho người dùng.

2. CMS cần có các tính năng tạo layout riêng cho page

Tính năng này sẽ cho phép khách hàng tạo ra một trang riêng để hiển thị một thông tin gì đó đặc biệt, ví dụ như tạo một trang về Showcase thì nó sẽ có các chức năng hiển thị các tác phẩm mà họ đã hoàn thành, trang contact thì sẽ tự động có thêm bản đồ mà khách không cần phải chèn thủ công các mã chèn bản đồ vào nội dung.

WordPress

wordpress-custom-templateThế trong WordPress thì sao? May mắn thay, WordPress hoàn toàn có thể làm được bằng tính năng Page Template rất mạnh mẽ.
Cách tạo một page template rất dễ. Bạn có thể kết hợp thêm việc sử dụng custom field cho page để nhận các giá trị cho khách nhập vào và nó sẽ tự động áp dụng vào trong code của page template để hiển thị.

Drupal

Đối với Drupal 7, module Views nổi tiếng kết hợp với block visibility sẽ được sử dụng để đạt được multi-layout hay featured pages. Views hỗ trợ UI mạnh mẽ cho phép người dùng tạo pages, blocks với nhiều kiểu hiển thị nội dung khác nhau mà không cần biết về coding vd: Custom Front PageSlideshow blockjCarousel blockLatest CommentsCustom Taxonomy Page, etc.

Joomla

Joomla thì sao?, mặc định đã hỗ trợ rất nhiều View, các view này sẽ giúp người dùng tạo landing page, detail page voi layout và style khac nhau tùy theo mục đích sử dụng. Việc override các view này cũng tương đối dễ dàng, nó cho phép thay đổi style, structure cua layout. Đối với các view đặc biệt, user có thể tạo thêm các view.

3. Phân quyền thành viên là tính năng không thể thiếu cho CMS

Hệ thống phân quyền thành viên không bao giờ thiếu trong các CMS để có thể tiến lên các giải pháp cao hơn như tạo trang membership, forum, teamwork,…Tính năng quan trọng này đều có trong Joomla và Drupal, vậy WordPress có không?

WordPress

Trong WordPress, nó có hỗ trợ sẵn một hệ thống xác định chức vụ của thành viên và mỗi chức vụ sẽ được định sẵn các quyền mà WordPress đã làm sẵn. Ví dụ với các thành viên có quyền Subscribed thì chỉ có thể xem bài viết, thảo luận nhưng không đăng nội dung được, còn quyền Contributor sẽ chỉ có chức năng viết bài chứ không thể publish và sửa lại bài đã publish,…
Danh sách các chức vụ có sẵn trong WordPress
  • Super Admin
  • Administrator
  • Editor
  • Author
  • Contributor
  • Subscribed
Xem thêm:

Joomla

Trong Joomla, việc quản lý phân quyền bao gồm: Quản lý User, quản lý Group, quản lý quyền. Trong đó mỗi Group được gán cho 1 hoặc nhiều quyền. 1 User có thể trực thuôc nhiều group, như thế 1 user có thể có nhiều quyền khác nhau trong hệ thông.
Nhóm thành viên mặc định trong Joomla
  • Guest
  • Manager
    • Administrator
  • Register
    • Author
    • Editor
      • Publisher
  • Super Users
Quyền thành viên mặc định trong Joomla
  • Guest
  • Public
  • Registered
  • Special
  • Super users
Để phù hợp với mục đich sử dụng, người dùng có thể thoải mái thay đổi, tạo mới group, access level, ban gần như không cần đến sự hỗ trợ của các 3rd extension. Đây là ưu điểm của Joomla so với WordPress về tính năng phân quyền.

Drupal

Drupal 7 hỗ trợ hệ thống quàn lý user bằng Roles. Mỗi role sẽ có những quyền khác nhau tuỳ theo cài đặt của người quản trị. Dưới đây là những role mặc định hỗ trợ bởi Drupal core with Standard profile:
  • Anonymous User
  • Authenticated User
  • Administrator
Người quản trị có thể tạo thêm roles với những quyền khác nhau tuỳ theo nhu cầu.

4. CMS nên có giải pháp để tương tác với thành viên

dw-question-answer
Các tính năng tương tác giữa độc giả và người quản trị không bao giờ thiếu trong các CMS, ở đây mình xin liệt kê các giải pháp liên quan đến cộng đồng và hỗ trợ khách hàng trên cả 3 CMS.

A. Forum & Social Network

Joomla
Drupal
WordPress
Nhưng hầu hết các site lớn đều lựa chọn giải pháp sử dụng một bộ nguồn forum riêng và sau đó tích hợp với WordPress mà phổ biến nhất có lẽ là PHPBB.

B. HelpDesk

Helpdesk là nơi để bạn giải đáp các thắc mắc của khách hàng, tương tự như forum nhưng đôi lúc nó còn là một portal riêng.
Joomla
  • Help Desk
  • RSTickets!Pro
  • Hoduma
  • Tickets
Drupal
WordPress
Nhưng theo mình, nếu bạn cần một giải pháp HelpDesk thì nên sử dụng ZenDesk hoặc FreshDesk với chi phí cũng vừa vừa nhưng chuyên nghiệp vô cùng, dễ dàng tích hợp vào bất cứ CMS nào.

C. Form & Survey

Giải pháp này là để tạo chức năng liên hệ và tạo form thu thập ý kiến khách hàng, cái này thì rất dễ tìm trên cả 3 CMS.
Joomla
  • Responsive Contact Form
  • Perfect Popup AJAX Form
  • Contact Enhanched Component
Drupal
WordPress

D. Live Chat

Phần live chat này thì đa phần là dùng ứng dụng thứ ba bên ngoài nên tất cả đều chọn Subiz hoặc Zopim để làm giải pháp thêm tính năng chat với khách hàng trên website.

5. CMS chuyên nghiệp là phải hỗ trợ đa ngôn ngữ

da-ngon-ngu
Các website doanh nghiệp hiện nay đều đã quốc tế hóa bằng cách hỗ trợ nhiều ngôn ngữ trên một website, phổ biến nhất là ngôn ngữ tiếng Anh và tiếng Việt.
Do đó, một CMS muốn được ưa chuộng thì phải giải quyết được vấn đề này vì nó sẽ tiết kiệm hơn rất nhiều nếu chọn giải pháp làm một website khác giống hệt với ngôn ngữ khác.

Joomla

Riêng đối với Joomla (từ phiên bản 1.6 trở đi), bạn có thể cài đặt 1 website multilingual mà ko cần dùng đến bất kỳ 3rd extension nào. Việc cài đặt và quản lý cũng tương đối dễ dàng. Tính năng này xuất hiện từ phiên bản Joomla 1.6 nhưng thực sự dễ dàng cho người dùng từ phiên bản 2.5. Từ phiên phản 3, nó được tích hợp vào bước cài đặt ngay từ khi khởi tạo website.
  • JA Multilingual component
  • JDiction
  • FaLang
  • Easy language
  • Multi-Lingual Content extension.

Drupal

WordPress

6. CMS cũng nên có giải pháp tạo giỏ hàng – shop

WordPress

Các CMS chuyên cho việc làm trang bán hàng như Magento, Open Cart đều là những lựa chọn tuyệt vời. Nhưng trong một số trường hợp, họ cần tích hợp một hệ thống thương mại điện tử cỡ nhỏ vào thẳng website thông tin để dễ dàng quản lý, do đó WordPress cũng có giải pháp cho vấn đề này bằng cách sử dụng một vài plugin phổ biến dưới đây:

Joomla

Tương tự đối với Joomla, mặc dù không chuyên về Ecommerce, tuy nhiên lựa chọn Joomla cho 1 e commerce site cũng không phải là ý tưởng tồi vì có rất nhiều 3rd ecommerce extension, tiêu biểu là các extension sau:

Drupal

Có rất nhiều giải pháp ecommerce cho Drupal 7. Sau đây là 2 giải pháp ecommerce nổi bật và có cộng đồng phát triển hỗ trợ riêng cho 2 giải pháp này:

7. Tùy chỉnh White Label khi làm website cho khách dùng CMS

Đây là phần mà các nhóm – công ty chuyên gia công website rất cần, nó sẽ giúp họ tùy biến và thay đổi các nhãn hiệu của WordPress trên website khi họ làm cho khách hàng, ví dụ như thay đổi giao diện đăng nhập, tùy chỉnh dashboard, chèn các thông báo,…

WordPress

Vẫn là giải pháp sử dụng plugin, ta có danh sách các lựa chọn sau:

Joomla

WordPress làm được thì dĩ nhiên Joomla cũng làm được, có khi còn tốt hơn và đó là lý do rất nhiều doanh nghiệp thiết kế website sử dụng Joomla nhưng họ vẫn có một trang quản trị rất chuyên nghiệp theo phong cách riêng.
Trong Joomla có một extensions khá mạnh cho công việc này tên là Admin Branding mà bạn có thể thử.

Drupal

Hiện tại đối với mình thì người Drupal vẫn chưa tìm ra giải pháp tùy chỉnh white label.

8. CMS cần quản lý tốt các nội dung kỹ thuật số

WordPress

Mặc định trong WordPress đã có tính năng Media Library để quản trị các nội dung số (hình ảnh, video, âm thanh, tập tin).
Nhưng hạn chế của nó là chỉ hỗ trợ quản lý dựa trên từng file, tức là nó không thể sắp xếp dựa theo album hay một khái niệm nào đó. Hơn nữa, WordPress cũng chưa có giải pháp sử dụng các nội dung số này vào trong bài viết một cách chuyên nghiệp nhất.
Do đó, nếu bạn cần các giải pháp cho quản trị nội dung số thì hãy thử tham khảo một vài cái tên sau:
  • Enhanced Media Library
  • Nextgen Gallery
  • Media Manager Plus
  • Image Pro
  • Media Tags
  • CM Download Manager
  • WordPress Download Manager
  • PB oEmbed HTML5 Audio
  • Advanced Responsive Video Embedder

Joomla

Với Joomla, cũng có rât nhiều hạn chế trong việc quản lý dữ liệu kỹ thuật số và hiển thị các loại dữ liệu này. Trong bài viết, chỉ có option cho việc quản lý hình ảnh và link, với các multimedia content khác thì chưa được hỗ trợ. Việc quản lý các file trong thư mục cũng chưa rõ ràng va tốt.
Tuy nhiên đây không phải là khó khăn đối với người dùng, đơn giản bới bạn có thể tìm thấy rất nhiều các extension tốt cho việc quản ly, và hiển thị dữ liệu ky thuật số:
  • K2
  • Simple Image gallery
  • All videos
  • Simple MP3 Player

Drupal

Drupal 7 có nhiều hạn chế về hỗ trợ multimedia content cũng như quản lý files and multimedia assets. Trong mỗi content type, người quản trị có thêm các field kiểu Image để người sử dụng post hình nhưng lại ko hỗ trợ chức năng quản lý tập trung tất cả multimedia assets này cũng như việc sử dụng lại những multimedia content đã được upload. Tuy nhiên, những hạn chế này được khắc phục bởi contributed modules như:
  • IMCE: IMCE is an image/file uploader and browser that supports personal directories and quota.
  • Media: extensible framework for managing files and multimedia assets

9. Tối ưu SEO cho CMS

Website chuẩn SEO luôn là lựa chọn hàng đầu vì hiện nay SEO là một kênh vô cùng phổ biến, lại vừa tiết kiệm trong việc quảng bá website trên môi trường internet.
Bên dưới là những yếu tố giúp cho website có khả năng thân thiện với SEO nhất có thể trong các CMS.

Tối ưu đường dẫn

WordPress
Mặc định đường dẫn của WordPress sẽ là dạng động kiểu www.domain.com/?p=X, điều này không chuẩn SEO cho lắm nên chúng ta sẽ cần đổi các chữ số trên địa chỉ thành dạng chữ.
Dĩ nhiên cách làm chắc ai cũng biết, đó là vào Settings >> Permalink để thiết lập cấu trúc đường dẫn tĩnh.
Joomla
Đối với Joomla, việc này cũng cực kỳ đơn giản, bạn chỉ việc enable option: Search Engine Friendly URLs trong phan System >> Global Configuration >> SEO settings
Drupal
Đường dẫn mặc định của Drupal 7 cũg hạn chế giống tương tự như đường dẫn mặc định của WordPress. Tuy nhiên, Drupal 7 hỗ trợ sẵn cơ chế clean URL để tạo Search Friendly URLs. Người quản trị có bật chức năng này bằng cách vào Configuration > Search and Metadata > Clean URLs.

Sử dụng theme chuẩn SEO

WordPress
Việc chọn các theme tối ưu chuẩn SEO cũng rất quan trọng, vì nó sẽ tác động trực tiếp đến quy trình crawl dữ liệu của bot tìm kiếm trong việc tối ưu cấu trúc thích hợp, tương thích với các plugin hỗ trợ SEO.
Bạn có thể tự làm một theme chuẩn SEO bằng cách sử dụng các framework tốt nhất như Hybrid FrameworkRootsGenesis FrameworkThesis FrameworkCanva Framework.
Joomla
Đối với Joomla, có không ít các framework thân thiện với SEO, co thể kể tới: T3 framework, ZOO.
Drupal
Chưa biết 

Sử dụng các addon hỗ trợ SEO

WordPress
Phải nói rằng đây là một lợi thế cực lớn khi mà nó có một lượng lớn các plugin miễn phí lẫn trả phí trong việc tối ưu SEO cho website. Các chức năng chủ yếu như tùy biến title và description ở mỗi trang riêng biệt, sử dụng rich snippets – schema.org, tạo sitemap, tối ưu từ khóa,….Và bên dưới là các plugin tốt nhất cho giải pháp này:
  • WP SEO by Yoast
  • SEOPressor (Premium)
  • XML Google Sitemaps
  • Easy WP SEO (Premium)
  • All in One SEO Pack
  • SEO Smart Link
  • WP Social (for Social & Rich Snippets)
  • SEO Friendly Image
  • WP External Link
Joomla
Mặc định của Joomla cũng có rất nhiều tính năng hỗ trợ cho SEO như alias, meta Keyword, meta description, rotbot URL rewriting, Add suffixs to URL … Ngoài ra cũng có rất nhiều extensions tốt cho SEO như:
  • SEO generator
  • SH404 component
  • Easy Front-end SEO
  • Header tags
Drupal
Drupal không chịu thua với 2 đối thủ nặng ký phía trên nên nó cũng có khá nhiều lựa chọn cho addon chuẩn SEO như:

10. Tối ưu giải pháp nhiều tác giả cùng đăng bài

Đã là một CMS thì chắc chắn sẽ có nhu cầu nhiều tác giả cùng viết bài và làm việc với nhau một cách trôi chảy nhất mà hạn chế tối đa các giải pháp quản lý thủ công.

WordPress

Về mặt này thì WordPress cũng khá mạnh nhờ vào các giải pháp phân quyền thành viên mà mình đã nói phía trên, cộng thêm một vài plugin dưới đây sẽ giúp bạn có những tính năng cần thiết để sử dụng cho một website có nhiều tác giả cùng viết bài.
  • Edit Flow
  • Good Writer Checkify
  • Co-Author Plus
  • Audit Trail
  • Advanced Author Bio
  • Peter’s Post Notes
  • Private Messages For WordPress
  • Author Advertising Plugin
Hơn nữa, tính năng revision mặc định trong WordPress cũng sẽ hỗ trợ rất nhiều trong việc xem lại các lịch sử thay đổi trong bài viết.
Joomla
Joomla version 2.5 + và version 3 cũng đã có những giải pháp tốt cho vấn đề này, tiêu biểu là tính năng VERSIONING, tính năng này cho phép nhiều author có thể làm việc trên cùng 1 bài viết, và nó ghi chép lại các thay đổi của content theo từng version, từ đó có thể thấy được mức độ contribute của từng author và cũng giúp việc quản lý nội dung dễ dàng hơn với tính năng back-up và restore theo version.
Ngoài ra bạn cũng có thể tham khảo các extension cho việc này:
  • EasyBlog component
  • K2 component

Drupal

Drupal 7 mặc định hỗ trợ giải giáp revisioning căn bản. Chức năng này cho phép nhiều users cùng làm việc trên một bài viết và lưu lại thông tin giải thích cho những thay đổi của từng tác giả. Ngoài ra, nhiều contributed modules có thể sử dụng để mở rộng tính năng này như:

11. CMS không thể thiếu các tính năng kết nối với mạng xã hội

Các mạng xã hội hiện có như Facebook, Twitter, Linkedin,…là một trong những kênh truyền thông có sức hút nhất để tăng lượt truy cập, dù đó là một trang gì đi chăng nữa. Do đó, sẽ thật thiếu sót nếu bạn bỏ qua kênh này. Một trong các cách vận dụng mạng xã hội tốt nhất là hãy tích hợp nó vào CMS của bạn

WordPress

Kho tàng plugin phong phú của WordPress không thể nào thiếu các plugin phục vụ trong việc kết nối với tài khoản mạng xã hội vì đó là nhu cầu chung trên toàn thế giới, con số nhiều đến mức khó có thể nào mà liệt kê ra hết được nên mình chỉ xin liệt kê những cái tên tiêu biểu.
  • Digg Digg – chèn nút like.
  • NextScripts: Social Networks Auto-Poster – tự động đăng bài lên mạng xã hội.
  • Social Login, Social Sharing, Social Commenting and more!
  • Super Socializer
  • Social Gallery Lite – chèn Facebook comment vào ảnh.
  • WP Social SEO Booster – tối ưu Rich Snippets.

Joomla

Để tích hợp mạng xã hội vào Joomla content, bạn có thể sử dụng dich vụ của bên thứ 3 như:
  • Addthis
hoặc các 3rd extensions:
  • Nice Social Bookmark
  • Slogin
  • Socialconnect
Ngoài việc tích hợp các mạng xã hội để tăng traffic, bạn còn có thể tự động import content từ các mạng xã hội và hiển thị content này trên site của bạn vời plugin: JA Social feed.

Drupal

Chức năng chia sẻ trên mạng xã hội, hay tích hợp nội dung mạng xã hội vào Drupal site của bạn có thể thực hiện bằng nhiều giải pháp khác nhau sau đây:

Lời kết


Như vậy bạn có thể thấy rằng, WordPress mặc định chưa phải là một CMS thuần túy như Joomla hay Drupal mà nó chỉ được phát huy tối đa sức mạnh nếu nó được sử dụng kết hợp với các plugin tốt nhất phù hợp với từng tính năng.
Nguồn: http://thachpham.com/