Converting a Single Wordpress Site to a Multisite - NETSEC


Learning, Sharing, Creating

Cybersecurity Memo

Wednesday, July 22, 2020

Converting a Single Wordpress Site to a Multisite

Multisite is an interesting feature I have not tried before and currently exploring. I used single site for many years and currently working on a project to set up multi-language site which I believe Multisite will be best fit into this situation since multisite WordPress installation allows me to create and manage a network of multiple websites from a single WordPress dashboard. This lets me easily make changes and keep all of my websites updated from one place. Just for my own references, I recorded some steps in this post.

Enable Multisite in wp-config.php

1  Open the file wp-config.php under your word press installation folder, such as /etc/html/, which is is located in the main directory of your WordPress, and add the line
define('WP_ALLOW_MULTISITE', true);
above the line:
/* That's all, stop editing! Happy blogging. */

Define WP_ALLOW_MULTISITE in wp-config.php to enable the Multisite feature.

2  Save the changes.

Enable Network from Wordpress Admin Portal

1  Open your <website url>/admin or <website url>/wp-admin page. Log in as an administrator

2  In the left sidebar clickTools, you will find the menu tab Network Setup in an un-collapsed list, where you can configure your WordPress Multisite.

Install a WordPress Multisite – Settings page “Create a Network of WordPress Sites”

Change wp-config.php and .htaccess

1  Add the first code snippet to your wp-config.php directly above the line
/* That's all, stop editing! Happy blogging. */
The snippet looks like this, but adapted to your own site:
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);

2  Add the second code snippet to the .htaccess file and replace other WordPress rules.
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
3  Save changes to both files.

YouTube Video:

Multisite Plug-ins

Akismet Anti-Spam
All in One SEO
Astra Widgets
Elementor - Header, Footer & Blocks
File Upload Types
Jetpack by
Simple Tags
Starter Templates
UpdraftPlus - Backup / Restore
Visual Form Builder
W3 Total Cache

No comments:

Post a Comment