Giới thiệu

WordPress được ra đời vào năm 2003, mục tiêu ban đầu hướng đến của WordPress là trở thành một nền tảng để xây dựng Blog. Sau nhiều năm phát triển, các chức năng như trình quản lý media, menu và trình biên tập (WYSIWYG Editor) dần được tích hợp vào WordPress, biến nó trở thành một CMS hàng đầu và trở niên phổ biến như hiện nay. Các website dựa trên nền tảng WordPress có thể dễ dàng tùy biến thành một trang web cá nhân, doanh nghiệp hay một web bán hàng …vv

Tuy nhiên, thiết kế của WordPress vẫn tập trung vào mục đích ban đầu – Blog. Phân tích cơ sở dữ liệu của WordPress, chúng ta có thể dễ dàng nhận ra, toàn bộ dữ liệu của trang web xoay quanh bảng ‘_posts‘.

Khi đào sâu hơn vào tài liệu của WordPress, ta có thấy, table ‘posts’ không những chỉ dùng để lưu trữ các ‘bài viết‘ mà còn dùng lưu trữ ‘trang‘ và nhiều nhiều thứ khác nữa. Các nội dung khác nhau được lưu trữ trong bảng này được định nghĩa là ‘Post Type‘.

Các loại Post mặc định

Theo thiết kế của WordPress, mặc định sẽ có 5 nội dung được lưu trữ trong bảng ‘posts’, vậy chúng ta có 5 loại Post (5 Post Types).

  1. Post
  2. Page
  3. Attachment
  4. Revision
  5. Nav menu

Custom Post Types

Tương tự như Taxonomy, Post Type cũng dễ dàng được mở rộng thông qua tính năng ‘Custom Post’. Custom Post và Custom Taxonomy là tiền đề để phá vỡ giới hạn của WordPress. Các bạn có thể dễ dàng tùy biến trang web của mình thành bất cứ chủ đề gì bạn muốn.

Ví dụ: Bạn cần một trang web review sách. Bạn có rất nhiều cách thực hiện với WordPress

  1. Sử dụng bài viết bình thường kèm với hệ thống danh mụcthẻ một cách hợp lý.
  2. Tạo một custom post là ‘Sách’, kèm theo custom taxonomy ‘Thể loại sách’.

Nhìn về tổng thể, 2 cách làm này sẽ đem lại kết quả không khác nhau nhiều lắm. Nhưng ở góc độ kỹ thuật, bạn sẽ có rất nhiều lợi ích:

  • Với custom post và custom taxonomy, bạn có thể tạo riêng một khu vực quản trị (1 menu riêng trong giao diện admin, bài viết và danh mục tách riêng) sẽ dễ quản lý hơn
  • Cấu trúc trang web cũng được khai báo rõ ràng hơn. Kéo theo hàng loạt lợi ích về SEO

Nhưng, bù lại, custom post hay taxonomy đòi hỏi bạn phải có kiến thức về lập trình, nếu không có kiến thức về lập trình và sự hỗ trợ từ lập trình viên. Bạn nên sử dụng cách thứ nhất để tránh những rắc rối do lỗi mã nguồn đem lại.

‘Bài viết’ HAY ‘Trang’ (Post OR Page)

Khi bắt đầu với WordPress, mình tin chắc các bạn sẽ bối rối giữa 2 khái niệm này. Sau khi đọc bài này, mức độ bối rỗi cũng sẽ tăng nhẹ vì:

  1. Ở giao diện quản trị, giao diện bài viết và trang giống nhau đến 85%.
  2. Cả bài viết và trang đều được xem là ‘Post Type’ và được lưu cùng một bảng trong CSDL.

Vậy, khác biệt chính của bài viết và trang là gì? Sử dụng chúng như thế nào cho chính xác? Để tìm câu trả lời, các bạn hãy xem xét kỹ giao diện tạo mới (hoặc chỉnh sửa) trang và bài viết. Phần khác biệt chính giữa bài viết và trang đó là: “ở trang không có danh mục (categories), thẻ (tags) và định dạng (format)” những khái niệm này nghe quen quen, nếu bạn thấy không quen, hãy đọc lại bài WordPress Taxonomy. Vậy, đến đây có lẽ các bạn đã hiểu ý đồ của WordPress khi tạo ra bài viết và trang. Bài viết là chứa các nội dung cần được tổ chức, phân nhóm và hệ thống taxonomy của WordPress sẽ hỗ trợ. Ngược lại, trang giành cho các nội dung độc lập, không cần tổ chức, phân nhóm theo nội dung hay bất kì thuộc tính nào.

Ví dụ: Ở một trang web là một cửa hàng thời trang. Tùy vào nội dung ta sẽ phân nó là bài viết hay nhóm

  • Liên hệ, thanh toán -> những nội dung này độc lập nên sẽ là trang
  • Các bài viết tin tức, xu hướng, thông báo, tuyển dụng, khuyến mãi …vv sẽ gồm nhiều bài, cùng chung chủ đề, khi đó, ta sẽ tạo danh mục, thẻ và nhóm các bài viết này lại, để người dùng dễ dàng tìm kiếm các bài có cùng nội dung.