Hoàng Web

Thiết Kế Website WordPress

  • Kho giao diện
  • Dịch Vụ
    • Thiết kế web giá rẻ
    • Thiết kế website WordPress
    • Hosting Miễn Phí 100GB
    • Tích hợp thanh toán MoMo, ViettelPay, Vietcombank, MB..
    • Tối ưu Google PageSpeed
    • Sửa lỗi nâng cấp website
    • Viết plugin WordPress
    • Code Tool theo yêu cầu
  • Bảng giá
  • Quy trình làm việc
  • Giới thiệu
  • Liên Lạc
Trang chủ » Wordpress » Hướng dẫn Multisite trong wordpress

Hướng dẫn Multisite trong wordpress

Thứ Năm, 03/07/2014 by Hoàng Quách

  • shares
  • Facebook
  • Facebook Messenger
  • Gmail
  • Viber
  • Skype

Tính năng tạo nhiều site trong mã nguồn wordpress, khá hữu ích cho việc tạo nhiều site sử dụng chung files hệ thống  framework wordpress.

– Mở wp-config.php , thêm dòng sau:

define('WP_ALLOW_MULTISITE',true); //hiển thị menu network under tools

Bạn sẽ thấy dòng “network” ở menu tools. Nhấn vào để cài đặt & quản lý nhiều site.
Chú ý:
– Bạn không thể tạo wordpress multi-site nếu webserver chạy cổng khác 80.
– Nếu báo lỗi thì xoá các bảng: wp_blogs , wp_blog_versions,wp_registration_log,wp_signups,wp_site,wp_sitemeta để thiết lập lại.
– Site cũ có thể không bị mất đi, vì lưu ở các bảng posts.

Bạn muốn chạy WordPress Network trên nhiều port. Ví dụ bạn có 2 cổng 80 và 81 mỗi cổng chạy 1 website. Để chạy được wordpress ở địa chỉ port khác (e.g 81), đầu tiên bạn xóa filter redirect_canonical trong functions.php

if ($_SERVER["SERVER_PORT"] == 81) {
	remove_filter('template_redirect','redirect_canonical');
}

Không gây ảnh hưởng đến cổng 80 và gặp vấn đề về SEO bạn chỉ xóa nếu đang chạy cổng 81.
Giả sử Apache webserver của bạn cấu hình chạy nhiều ports. Nếu gặp lỗi khi chạy web khác cổng mặc đinhm 80 or 443.

'Multisite only works without the port number in the URL.'

Để làm máy khóe này, bạn sửa trong file “wp-includes/ms-settings.php”. Tìm dòng:

if ( !isset( $current_site ) || !isset( $current_blog ) ) {

Thêm dòng sau:

$_SERVER['HTTP_HOST'] = preg_replace( '|:\d+$|', '', $_SERVER['HTTP_HOST'] );

Đoạn code đã được thay đổi giống như sau:

if ( !isset( $current_site ) || !isset( $current_blog ) ) {
 
	$_SERVER['HTTP_HOST'] = preg_replace( '|:\d+$|', '', $_SERVER['HTTP_HOST'] );
 
	$domain = addslashes( $_SERVER['HTTP_HOST'] );
 
	if ( false !== strpos( $domain, ':' ) ) {
		....

Cách khác:
Edit: This no longer works for WordPress version 3.7 or higher. Just a heads up!
Mở wp-includes/ms-settings.php và chỉnh sửa thêm port cho webserver của bạn đang dùng.
Tìm dòng:

if ( false !== strpos( $domain, ':' ) ) {
if ( substr( $domain, -3 ) == ':80' ) {
$domain = substr( $domain, 0, -3 );
$_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -3 );
} elseif ( substr( $domain, -4 ) == ':443' ) {
$domain = substr( $domain, 0, -4 );
$_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -4 );
} else {
wp_load_translations_early();
wp_die( __( 'Multisite only works without the port number in the URL.' ) );
}
}

Thay thế bởi:

if ( false !== strpos( $domain, ':' ) ) {
if ( substr( $domain, -3 ) == ':80' ) {
$domain = substr( $domain, 0, -3 );
$_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -3 );
} elseif ( substr( $domain, -4 ) == ':443' ) {
$domain = substr( $domain, 0, -4 );
$_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -4 );
} elseif ( substr( $domain, -5 ) == ':8080' ) {
$domain = substr( $domain, 0, -5 );
$_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -5 );
} else {
wp_load_translations_early();
wp_die( __( 'Multisite only works without the port number in the URL.' ) );
}
}

Lưu ý: số ký tự port hơn 2 chữ số ví dụ 18080, thì thay đổi tham số của substr. Xem mẫu:

} elseif ( substr( $domain, -6 ) == ':18080' ) {
$domain = substr( $domain, 0, -6 );
$_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -6 );

Thay số bằng số ký tự port+1
Ví dụ cho port 81

} elseif ( substr( $domain, -3 ) == ':81' ) {
$domain = substr( $domain, 0, -3 );
$_SERVER['HTTP_HOST'] = substr( $_SERVER['HTTP_HOST'], 0, -3 );

Để nhận được bài viết mới vui lòng đăng ký kênh kiến thức WordPress từ A-Z ở Form bên dưới. Bạn cũng có thể nhận được sự trợ giúp trên Twitter và Facebook

  • shares
  • Facebook
  • Facebook Messenger
  • Gmail
  • Viber
  • Skype

Chuyên mục: Wordpress Tìm kiếm: multisite

Tôi giúp gì cho bạn?

HOÀNG WEB

Địa chỉ: Tây Sơn, Phường Quang Trung, Quận Đống Đa, Hà Nội

Hotline: 0987 342 124 – 0868 292 303 (8h:00 – 21h:00)

Email: [email protected]

Website: www.hoangweb.com

KẾT NỐI VỚI TÔI

  • Facebook
  • GitHub
  • YouTube

SẢN PHẨM

  • Plugin Thanh Toán Quét Mã QR Code Tự Động
  • WP2Speed – Tối ưu Google Speed
  • 23WebHost – Hosting Miễn Phí 100GB

LIÊN KẾT

  • Có nên thuê thiết kế website giá rẻ?
  • Hướng dẫn thanh toán
  • Chính sách hoàn tiền
  • Trung tâm hỗ trợ

Copyright © 2023 | All rights reserved | HOANG WEB
Mọi hình thức sao chép nội dung trên website này mà chưa được sự đồng ý đều là trái phép.