Giới thiệu
Mạng WordPress Multisite cho phép bạn quản lý nhiều trang web từ một cài đặt WordPress duy nhất. Điều này có nghĩa là bạn có thể chia sẻ mã nguồn, plugin và chủ đề giữa các trang, trong khi vẫn giữ lại nội dung và cài đặt riêng biệt cho từng trang. Trong bài viết này, chúng ta sẽ tìm hiểu cách tạo một mạng WordPress Multisite một cách chi tiết.
Tại sao nên sử dụng WordPress Multisite?
- Quản lý cập nhật tập trung: Cập nhật một lần cho tất cả các trang.
- Dễ dàng tạo các trang giống nhau: Hữu ích cho các khách hàng, phòng ban, hoặc các trang web học đường.
- Chia sẻ người dùng: Người dùng trên một trang có thể truy cập các trang khác.
- Cơ sở hạ tầng hiệu quả: Giảm thiểu tài nguyên cho nhiều trang nhỏ.
Khi nào nên (và không nên) sử dụng Multisite
Nên sử dụng Multisite khi:
- Bạn quản lý nhiều trang giống nhau (nhượng quyền, trường học, blog).
- Bạn muốn kiểm soát và cập nhật plugin/chủ đề tập trung.
- Bạn có kế hoạch lưu trữ nhiều trang nhỏ có yêu cầu tương tự.
Không nên sử dụng Multisite khi:
- Mỗi trang cần các plugin hoặc chủ đề khác nhau.
- Khách hàng cần quyền kiểm soát hoàn toàn và riêng biệt.
- Bạn cần cơ sở dữ liệu và sao lưu độc lập cho từng trang.
Bước 1: Chuẩn bị môi trường
- Sao lưu đầy đủ: Sao lưu các tệp và cơ sở dữ liệu.
- Cài đặt WordPress mới nhất: Đảm bảo bạn đã cài đặt WordPress hoạt động.
- Quyền truy cập FTP/SFTP hoặc cPanel: Để chỉnh sửa
wp-config.phpvà.htaccess. - Chọn giữa subdomains hoặc subdirectories: Nếu bạn chọn subdomains, bạn cần cấu hình DNS wildcard.
Bước 2: Kích hoạt Multisite trong WordPress
Chỉnh sửa tệp wp-config.php và thêm dòng sau trước dòng /* That's all, stop editing! */:
php
/* Kích hoạt Multisite */
define( 'WP_ALLOW_MULTISITE', true );
Lưu và tải lên tệp.
Bước 3: Tạo mạng trong WP admin
Đăng nhập vào WP admin với quyền quản trị.
Đi tới Công cụ → Cài đặt mạng. Chọn giữa sub-domains hoặc sub-directories và điền thông tin cần thiết.
Bước 4: Thêm mã được cung cấp
Thêm các dòng mã sau vào wp-config.php:
php
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'example.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
Và thay thế quy tắc .htaccess với mã sau:
apache
BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule . index.php [L]
END WordPress
Bước 5: Đăng nhập lại và xác nhận quản trị mạng
Sau khi thêm mã, hãy đăng nhập lại và kiểm tra menu My Sites → Network Admin.
Bước 6: Cài đặt và quản lý mạng
Cài đặt mạng: Quản lý cài đặt đăng ký, ngôn ngữ mặc định, và không gian tải lên.
Chủ đề và Plugin: Cài đặt chủ đề từ Network Admin và kích hoạt theo nhu cầu.
Bước 7: Quản lý tệp và phương tiện
Tệp được lưu trữ theo từng trang trong thư mục wp-content/uploads/sites/<site_ID>/. Hãy chắc chắn sao lưu các thư mục này.
Bước 8: Cài đặt SSL cho subdomains
Đối với cấu hình subdomain, bạn sẽ cần chứng chỉ SSL wildcard. Let's Encrypt hỗ trợ điều này.
Bước 9: Kiểm tra, sao lưu và khôi phục
Hãy thử nghiệm toàn bộ quy trình trên một trang staging trước khi triển khai. Đảm bảo có kế hoạch sao lưu và khôi phục.
Ưu và nhược điểm của WordPress Multisite
Ưu điểm:
- Quản lý tập trung, dễ dàng duy trì nhiều trang.
- Giảm thiểu tài nguyên do chia sẻ cơ sở dữ liệu.
Nhược điểm:
- Một điểm thất bại có thể ảnh hưởng đến toàn bộ mạng.
- Quản lý phức tạp hơn khi di chuyển một trang ra khỏi mạng.
Câu hỏi thường gặp
Q1: Có thể chuyển từ subdirectories sang subdomains không?
A: Có, nhưng cần phải thay đổi DNS và chuyển hướng URL.
Q2: Có thể mỗi subsite sử dụng một tên miền khác không?
A: Có, thông qua việc cấu hình tên miền.
Q3: Mạng multisite có nhanh hơn cài đặt riêng không?
A: Tùy thuộc vào khối lượng công việc của từng subsite.
Kết luận
Mạng WordPress Multisite là một công cụ mạnh mẽ cho những ai cần quản lý nhiều trang web một cách hiệu quả. Hãy chắc chắn rằng bạn đã hiểu rõ các yêu cầu và cách thức thực hiện trước khi bắt đầu. Nếu bạn cần thêm thông tin hoặc có câu hỏi, đừng ngần ngại để lại câu hỏi bên dưới!