Thiết kế web Wordpress

Hướng dẫn thiết lập Multisite site cho WordPress

WordPress Multisite là một tính năng của WordPress cho phép thiết lập và quản lý mạng lưới (Network) nhiều website trên 1 mã nguồn gốc WP duy nhất. Thông qua tính năng này, việc tạo lập và quản lý hệ thống site trên cùng Hosting/VPS trở nên đơn giản và dễ dàng hơn bao giờ hết.

Ví dụ, với webbanhang.net ban đầu, bạn hoàn toàn có thể thiết lập và quản lý hệ thống subdomain bao gồm dientu.webbanhang.net– chuyên về web bán hàng điện tử, thoitrang.webbanhang.net chuyên về web bán hàng thời trang… với nội dung hoàn toàn khác biệt trên cùng 1 mã nguồn WP ban đầu.

Hoặc, bạn có thể thiết kế web Landing page công ty cùng hệ thống subsite về những nhóm hàng lớn.


– Các lưu ý về hệ thống WordPress Multisite:

  • Quản lý hệ thống dễ dàng và tập trung. Việc quản lý cũng như cập nhật phiên bản WP, Plugin, Theme của toàn bộ hệ thống trở nên đơn giản và thuận tiện hơn. Bên cạnh đó, WP Multisite giúp tiết kiệm tài nguyên, rõ ràng việc cài đặt 1 WP cho nhiều site sẽ nhẹ hơn là cài đặt mỗi site một bản WP.
  • Về data: Toàn bộ hệ thống chung 1 thư mục WP. Dữ liệu upload của site chính lưu tại wp-content/uploads còn subsite tại wp-content/uploads/sites/id/ (mỗi subsite 1 ID – 1 thư mục)
  • Về database: Toàn bộ hệ thống chung 1 database. Các subsite được sao chép thêm các table cho riêng mình, bao gồm (Vì vậy, cùng database nhưng mỗi subsite sẽ có nội dung riêng, theme riêng.) 
    • wp_2_posts
    • wp_2_postmeta
    • wp_2_comments
    • wp_2_commentmeta
    • wp_2_users
    • wp_2_usermeta
    • wp_2_links
    • wp_2_term_relationships
    • wp_2_term_taxonomy
    • wp_2_terms
    • wp_2_options
  • Về domain, bạn hoàn toàn có thể map domain riêng cho từng subsite, ví dụ thietkewebbanhang.net
  • WP Multisite chỉ kích hoạt trên WP được cài đặt tại thư mục gốc root của web(ví dụ /public_html/), không phải trong thư mục con. Đồng thời WordPress address (URL) phải là domain (không phải localhost/IP).

Có thể thấy, ưu điểm lớn nhất của WP Multisite chính là quản lý tập trung. Nếu quản lý hệ thống nhiều site riêng biệt trên mã nguồn WP, bạn hoàn toàn có thể thiết lập 1 Network Multisite rồi tiến hành MapDomain. Khi đó, chỉ cần quản lý tập trung tại một mã nguồn WP duy nhất. Ở phương diện người dùng, đây vẫn là các site riêng biệt.

Tuy vậy, hạn chế của WP Multisite chính là sự riêng rẽ, tách biệt. Bạn không nên sử dụng WP Multisite trong các trường hợp sau:

  • Chạy nhiều site trên nhiều Hosting/VPS khác nhau.
  • Bạn cần database riêng (lý do bảo mật…). Tất cả các site trong Network Multisite sẽ chung 1 database, chỉ khác biệt các table trong đó.
  • Bạn có ý định sau này chuyển riêng vài subsite sang 1 hosting/VPS khác
  • Bạn muốn thiết kế website có thể mở rộng thêm tính năng sau này.

Yêu cầu trước khi cài đặt WordPress Multisite

Trước khi bạn bắt đầu cài đặt multisite WordPress, hãy đảm bảo rằng:

  • Bạn đã cài đặt WordPress
  • Các Permalinks đã được kích hoạt. Điều này có nghĩa là URL của bạn sẽ không giống như sau http://example.com/?p=2345, mà sẽ có dạng http://example.com/my-page
  • Tất cả các plugin đã bị vô hiệu hóa
  • Quan trọng: bạn có một bản sao lưu cài đặt WordPress của mình
  • Bạn có quyền truy cập FTP vào cài đặt WordPress của mình

Thiết lập Multisite trong wp-config.php

Bước đầu tiên là kích hoạt tính năng Multisite trong tệp wp-config.php.

Thiết lập kết nối FTP đến trang web của bạn.
Mở tệp wp-config.php, nằm trong thư mục chính của WordPress và thêm dòng sau
define(‘WP_ALLOW_MULTISITE’, true);
trên dòng:
/* That’s all, stop editing! Happy blogging. */

Lưu file wp-config.php.
Bây giờ bạn đã bật tính năng Multisite cho WordPress của mình. Nhưng bạn vẫn chưa hoàn thành. Bước tiếp theo là cài đặt network.

Cài đặt Mạng WordPress

Truy cập tools -> network setup

Tại đây bạn chọn sử dụng tên miền phụ (sub domain) cho các trang web trong mạng của mình (ví dụ: site1.example.com) hay bạn muốn cài đặt chúng trong các thư mục con (ví dụ: example.com/site1). Cài đặt này ảnh hưởng đến tất cả các trang web trong mạng của bạn, bạn không thể thay đổi cài đặt đó sau này.
Nhập tên cho mạng của bạn vào trường Tiêu đề Mạng trong phần Chi tiết Mạng.

Nhập địa chỉ e-mail của quản trị viên trang web.

Nhấp vào nút Cài đặt.

Chỉnh sửa wp-config.php và .htaccess

WordPress lúc này sẽ cung cấp cho bạn hai đoạn mã mà bạn cần thêm vào các tệp wp-config.php và .htaccess. Cả hai tệp đều nằm trong thư mục gốc của WordPress

Thêm đoạn mã đầu tiên vào wp-config.php của bạn ngay phía trên dòng
/* That’s all, stop editing! Happy blogging. */
Đoạn mã trông giống như sau, nhưng được điều chỉnh cho phù hợp với trang web của bạn:

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'My Website');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

Thêm đoạn mã thứ hai vào tệp .htaccess và thay thế các quy tắc WordPress khác.

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

Menu quản trị mạng và cài đặt mạng

Khi bạn thay đổi wp-config.php và .htaccess, hãy đăng nhập lại vào khu vực quản trị WordPress của bạn. Trong thanh quản trị phía trên, bây giờ bạn sẽ thấy menu Quản trị mạng. Nó luôn được hiển thị, vì vậy bạn luôn có thể vào khu vực quản trị của mạng, bất kể bạn đang ở trên trang web nào trong mạng của mình. Chúng ta hãy xem xét các menu phụ ở phần sau.

  • Trang tổng quan (dashboard): Tại đây bạn có thể tìm thấy tiện ích con để thêm người dùng mới và các trang web mới vào mạng của mình.
  • Trang web: Trên tab này, bạn có thể xem tất cả các trang web trong mạng của mình – gồm các bài đăng và trang.
  • Người dùng: Tại đây bạn có thể quản lý người dùng trong mạng của mình. Bạn có thể chỉ định vai trò người dùng quản trị viên cấp cao. Quản trị viên cấp cao có quyền truy cập vào tất cả các trang web và có thể thực hiện các thay đổi trong toàn bộ mạng.
  • Theme: Quản trị theme. Tại đây, bạn có thể cài đặt và gỡ cài đặt các theme cũng như kích hoạt hoặc hủy kích hoạt chúng cho toàn mạng.
  • Plugin: Tại đây bạn có thể tìm thấy tất cả các plugin đã cài đặt. Bạn có thể thêm các plugin mới hoặc xóa chúng, bạn có thể kích hoạt hoặc hủy kích hoạt chúng cho toàn mạng.
  • Cài đặt: Trên tab này, bạn có thể tìm và chỉnh sửa các cài đặt cơ bản cho trang web của mình, ví dụ: tên mạng và địa chỉ E-Mail của quản trị viên, bạn có thể cho phép đăng ký người dùng, thêm người dùng mới vào quản trị viên trang web.

Thêm trang web vào mạng

Đi tới Trang web của tôi → Quản trị mạng → Trang web và click vào Thêm mới.