Should I Upload Wordpress in Its Folder
In this article, we look at the benefits and limitations of installing WordPress in a subdirectory, how to install and manage subdirectory installs, and how to move WordPress core out of and into a subdirectory for an existing site.
I of the common criticisms PHP developers level at WordPress is that information technology installs all its core files directly in the web root directory. Modernistic PHP frameworks like Laravel install their required files as separate dependencies in a vendor
directory, each residing in its own specific subdirectory. Not just that, but unlike WordPress, Laravel keeps almost all the PHP files out of a publicly accessible directory, which is very nice for security. This makes for a cleaner, more secure folder structure in the application's web root.
These modern PHP application directory structures make a default WordPress install look decidedly unprofessional. While it's non possible to move all the PHP files out of the public spider web root in a WordPress install, you lot can customize your installation to mimic this dependency-based development concept by installing WordPress in a subdirectory.
Table of Contents
- The Benefits of Installing WordPress Core in a Subdirectory
- How to Tell if WordPress Cadre is Installed in a Subdirectory
- How to Install WordPress Core in a Subdirectory
- The Official WordPress Documented Methods
- Manually Configure a Subdirectory Install
- Using WP-CLI to Install WordPress in a Subdirectory
- Using Composer to Install WordPress in a Subdirectory
- Because the WordPress File and Folder Structure
- Moving the WordPress Config File
- Moving the WordPress Content Folder
- Converting a Root Install to a Subdirectory Install
- Fix Your Site
- Update the Database
- Moving WordPress Files Into the Subdirectory
- Converting a Subdirectory Install to a Root Install
- Prepare Your Site
- Update the WordPress Database
- Moving WordPress Out of the Subdirectory
- Wrapping Upward
The Benefits of Installing WordPress Core in a Subdirectory
In most web hosting environments, your account is provisioned nether a /home/username
folder where username
is your account username. This binder is sometimes chosen the tiptop-level or root of your business relationship, and the actual path varies from web host to web host. You will typically have a public
or public_html
folder configured to serve the website files. This is generally known every bit the web root directory, and it's where WordPress is usually installed.
The straight benefit of moving WordPress core files into a subdirectory is a cleaner and more professional person-looking directory structure in your web root. Some folks call up that switching to a subdirectory install improves security through obscurity. This is only really applicable if yous motility your wp-config.php
file outside of the publicly accessible web root directory, whether you use a subdirectory install or non.
However, in the modernistic globe of automated scanning bots, moving your WordPress core files to a subdirectory might help decrease the chances of malicious bots detecting vulnerabilities when scanning your site. For instance, in a typical WordPress install, all your core files are in the public web root, which is accessible from your noon domain (eastward.g., https://hellfish.media
). So all a scanner needs to do is scan your domain proper noun, check for a common WordPress file like https://hellfish.media/wp-blog-header.php
, and it volition know you lot accept a WordPress install. If yous motion the core files to a subdirectory, it makes information technology harder (but non impossible) for attackers to identify that y'all're running WordPress.
A cleaner directory structure and an increment in security are sound reasons to move an install into a subdirectory, merely there are some things you'll need to know to achieve this. You lot won't exist able to just move the WordPress install to a subdirectory and expect everything to work.
How to Tell if WordPress Core is Installed in a Subdirectory
With a WordPress install y'all've completed yourself, you'll likely know if information technology'south installed in the web root (i.e., a root install) or a subdirectory. However, you might be in a situation where you inherit a site, or use a hosting provider's one-click installer, or it'south been a actually long time since the initial setup.
To determine if your WordPress install is in the web root or a subdirectory, caput to your WordPress dashboard and navigate to the Settings > Full general screen. In that location you will see the "WordPress Address (URL)" setting and "Site Address (URL)" settings:
If the values match, you have a root WordPress install. If the "WordPress Address (URL)" has an additional path compared to the Site Address (URL), it'southward in a subdirectory. You can besides tell by looking at the URL when yous log into your site. If WordPress was installed in a subdirectory, then the wp-admin
page volition be shown nether that subdirectory (such as hellfish.media/wp/wp-admin/
).
How to Install WordPress Core in a Subdirectory
There are a few different ways you lot can install the WordPress core files in a subdirectory.
The Official WordPress Documented Methods
The methods to move WordPress into a subdirectory are detailed in the WordPress.org support documentation. These options are available to you after you've already installed WordPress.
The ii options are:
- Moving a WordPress install to its own directory, without changing the site URL
- Moving a WordPress install to its own directory, with a change to the site URL
Neither of these options actually assist with the increase in security nosotros discussed earlier. The first selection moves the site files to a subdirectory and uses rewrite rules in a custom .htaccess
file to rewrite requests to the subdirectory. Whatsoever bots scanning your URL volition still be able to determine that information technology's using WordPress.
The second option is even less related to security, and more useful if you have a custom site setup. This is frequently used where you want to use WordPress to power a blog at a subdirectory of your URL (due east.g., https://hellfish.media/blog
) and yous'll use something else to power your summit-level URL.
That beingness said, both methods move your WordPress install to a subdirectory, so your web root at least looks tidier.
What would be nice is that commencement option, but without any URL rewriting for ameliorate security.
Manually Configure a Subdirectory Install
If y'all call back the before clarification of how the files in a WordPress installation "crave" each other, you might take also noticed that in the wp-web log-header.php
file, the ABSPATH
constant is defined. This abiding points to the location where the WordPress cadre files are installed, no matter where that might exist on the file organization.
This ways that with a little bit of noesis and some tinkering, we tin move all the WordPress core files into a subdirectory, and make a few small changes to let WordPress know where everything is. The process looks like this:
- Follow the default WordPress install process.
- One time WordPress is installed, create a subdirectory and move all the files from the web root to that subdirectory. To help with "hiding" the core files, you should give the subdirectory an uncommon name, but for our instance, we'll create a subdirectory called
wp
, and motion all the files to thewp
subdirectory. - Then, copy (not movement) the
index.php
file from the subdirectory back into the web root directory. - In that newly copied file, update the line that requires the
wp-blog-header.php
file, to point to the new subdirectory, and save that file:crave __DIR__ . '/wp/wp-weblog-header.php';
- The concluding pace is to update the
siteurl
value in your WordPressoptions
tabular array—
using something similar the SQL Buddy plugin or phpMyAdmin—to point to the new subdirectory install, for example,https://hellfish.media/wp
.
You lot'll note we said "re-create (not move)" in stride three. This is important considering WordPress needs an index.php
file in the install directory (in this case the subdirectory), or it will cause PHP warnings to brandish on your site or fill up your debug.log
file.
Once you've completed these steps and all your cadre WordPress files are in a subdirectory, you will nonetheless exist able to scan to the front end of your site at your meridian-level domain (e.yard., https://hellfish.media/
), but to access your Dashboard you lot'll demand to browse to wp-admin
in the subdirectory (e.g., https://hellfish.media/wp/wp-admin
). You might be concerned most losing the changes you've fabricated to the copy of the alphabetize.php
file the next fourth dimension WordPress is updated. However, WordPress will only update core files in the installation directory, in this case, the subdirectory. So information technology's perfectly acceptable to edit the index.php
file you lot copied to the spider web root directory. Your web root is a little tidier, and it's a scrap harder to determine you're running WordPress.
While this gives you a small increment in security, we'll dive into other changes afterward on to further ameliorate security.
Using WP-CLI to Install WordPress in a Subdirectory
Y'all're probably going to want to automate the in a higher place process if you are managing your own WordPress installs or you take your own VPS servers. Fortunately, this is possible with a little Bash scripting and WP-CLI. The following script leverages WP-CLI to create a new WordPress site installation with the cadre files in a specific subdirectory, essentially reproducing everything we did above. Information technology also assumes yous don't already take the database created, and creates information technology for you lot. The process will still work if you lot have an existing database, but will brandish a MySQL mistake message that the database already exists.
#!/bin/bash # Installation: ## Download the script to your dwelling directory # Make sure it has execute permissions (`chmod +ten wp-install-cadre-sub-dir.sh`). # Install the script in ane of the folders in your PATH. (`mv wp-install-core-sub-dir.sh /usr/local/bin/wp-install-core-sub-dir`) #Usage: # $ mkdir mysite # $ cd mysite # $ wp-install-cadre-sub-dir {sub-directory} {db_name} {db_user} {db_pass} {site_url} "{site_title}" {admin_user} {admin_pass} {admin_email} CORE_DIR=${1-'wp'} DB_NAME=${2-'wordpress'} DB_USER=${three-'root'} DB_PASS=${4-'password'} SITE_URL=${v-'https://wordpress.test'} SITE_TITLE=${six-'WordPress Site in a Subdirectory'} SITE_USER=${seven-'admin'} SITE_PASS=${8-'password'} SITE_EMAIL=${9-'your@electronic mail.com'} # create the dir for the cadre files mkdir $CORE_DIR cd $CORE_DIR # download WordPress files wp core download # create the wp-config.php file wp config create --dbname=$DB_NAME --dbuser=$DB_USER --dbpass=$DB_PASS # create the database wp db create # install WordPress (less than 5 mins) wp cadre install --url=$SITE_URL --title="$SITE_TITLE" --admin_user=$SITE_USER --admin_password=$SITE_PASS --admin_email=$SITE_EMAIL # Re-create (not motility) index.php file to root cd ../ cp "$CORE_DIR/alphabetize.php" ./index.php # Edit alphabetize.php to indicate to correct path of wp-blog-header.php perl -p -i -east "s/\/wp-blog-header/\/$CORE_DIR\/wp-blog-header/g" index.php # Update the siteurl in the database with sub directory path cd $CORE_DIR wp option update siteurl $(wp pick go siteurl)/$CORE_DIR # Uncomment the below line if you want the config in root #cp "$CORE_DIR/wp-config.php" ./wp-config.php echo 'Install finished!'
You tin can also view this script on Github.
Using Composer to Install WordPress in a Subdirectory
A popular way to manage WordPress projects is to utilise Git for source control, and Composer to install WordPress cadre, the theme, and whatsoever plugins as dependencies in the composer.json
file of your project.
When you're gear up to deploy your site, you trigger an automated deployment procedure, which runs composer install
to install all your required dependencies.
If you use the johnpbloch/wordpress
package, information technology volition install the wordpress-core
package in a subdirectory called wordpress
past default. You lot can alter this past supplying a custom wordpress-install-dir
directory in the actress
section of your composer.json
. You can then make utilise of the Composer mail service-install-cmd
event to run the necessary subdirectory changes you lot need.
{ "name": "polevaultweb/wp-composer-core-sub-dir", "description": "Installing WordPress in a subdirectory with Composer", "require": { "johnpbloch/wordpress": "^five.8" }, "extra": { "wordpress-install-dir": "wp" }, "scripts": { "post-install-cmd": [ "cp wp/index.php ./index.php", "sed -i \"southward/\\/wp-blog-header/\\/wp\\/wp-blog-header/k\" alphabetize.php" ] } }
As y'all can come across, this replicates the subdirectory process we've already outlined before. Once the composer install
has been completed, WordPress will be installed in the wp
subdirectory, the index.php
file will be copied to the web root, and edited to update the path to wp-blog-header.php
Information technology is worth noting that the postal service-install-cmd
event simply fires after the install command has been executed with a lock file present. It won't trigger the subdirectory the first time yous run composer install
locally, equally the lock file is simply generated subsequently the first time composer install
is run.
Unlike the Fustigate script higher up, this does not create the wp-config.php
file or run the WordPress installation to create the database tables. You tin exercise these manually in your browser, using WP-CLI commands in the post-install-cmd
event, or using postal service deploy scripts if your hosting provider supports them.
Considering the WordPress File and Binder Structure
As mentioned earlier, moving the core files to a subdirectory allows for a modest security improvement, but it's still possible to decide if your site is running WordPress. This might exist a good time to call back near whatsoever other changes we could make to meliorate our directory structure and increase security.
Our recommendation is to configure your top-level or root directory construction to look something like this:
/dwelling/username/ conf/ wp-config.php public/ content/ wp/ index.php wp-config.php
We've already shown you how to movement the WordPress core files into a subdirectory (in this example wp
) so let's see what else nosotros can change, and why.
Moving the WordPress Config File
The wp-config.php
file contains your database credentials, and frequently any other of import API or third-party access keys, but did you know that it'south possible to movement this file to a dissimilar location from the rest of your WordPress core files?
Moving this file to somewhere other than the spider web root or the subdirectory install is generally considered a much safer choice. The reason for this is that in some cases, problems with the web server could crusade it to stop processing PHP files correctly. Common causes for this include a lack of available memory, or a web server misconfiguration. Whatever the cause, if this happens, visitors to the site might be able to view the contents of PHP files including the database credentials in your wp-config.php
file.
In fact, many would debate that it should be placed even higher up in the directory tree than the root directory.
To attain this, you would movement the wp-config.php
file to a different location on the server (in our case nosotros'll motility it to the conf
directory just higher up the public
web root directory) and either comment out or delete all the lawmaking after the following line:
/* That'southward all, stop editing! Happy publishing. */
Nosotros and so create a new wp-config.php
file in the public spider web root, with the following code:
<?php require_once __DIR__ . '/../conf/wp-config.php'; /** Sets up WordPress vars and included files. */ require_once ABSPATH . 'wp-settings.php';
WordPress will automatically look for the wp-config.php
in the parent folder to where the core files are. By creating our custom wp-config.php
file in the web root, we go on the wp
folder that contains the cadre files clean of any custom files. The "truthful" wp-config.php
file is moved to a location that's non publicly accessible, but where WordPress can even so require it, and your database (and other) credentials are safer.
Moving the WordPress Content Folder
With our WordPress cadre files in a subdirectory, we could consider moving the wp-content
directory too. Themes, plugins, and file uploads should (in most cases) be carve up from the core files. This is especially useful if you lot use version command software like Git to manage your project source code.
WordPress allows us to accomplish this, by setting some WordPress-specific constants, in the wp-config.php
file in our wp
subdirectory.
ascertain( 'WP_CONTENT_DIR', dirname( dirname(__FILE__) ) . '/content' ); define( 'WP_CONTENT_URL', 'https://' . $_SERVER['HTTP_HOST'] . '/content' );
This configuration tells WordPress to look to find the content directory in a directory called content
in the spider web root. It'southward inspired by Mark Jaquith's WordPress skeleton, with minor tweaks to match our directory structure. As Marker points out in the GitHub readme, information technology's cleaner and the content directory is no longer in the scope of the wp
directory.
If you make this change on an already existing site, you lot will need to move the contents of your wp-content
directory (plugins
, themes
, uploads
, etc.) to the new content directory. Y'all will also need to run a Find & Replace on all your information. The goal is to update URLs for your media and nugget files to point them to the new content URL, as well equally ensuring any saved file paths are now pointing to the new content path.
If any external sites are linking to any of your media or avails, y'all'll want to ready upwardly a path redirect, so that those links don't throw 404 errors. This tin can exist accomplished past setting a path redirect using regex with a matching string of ^/wp-content/(.*)
and setting the redirecting string to /content/$1
. We recommend setting up this redirect at the spider web server level for all-time performance. If using SpinupWP, this can be done via the Path Redirects screen:
If you're unable to ready up a redirect at the web server level, the Redirection plugin is the next best affair.
Converting a Root Install to a Subdirectory Install
Installing the WordPress core files when starting a new site is straightforward enough, but converting an existing root install to a subdirectory install requires some care. It's not simply a case of creating a subdirectory in your web root and moving all the WordPress files there. Y'all as well need to take into account any URLs or paths stored in the database that points to your root install directory. We cover the details of this in our WordPress Core Installed in a Subdirectory help md, but allow'southward wait at a elementary example.
I've set up a local site, https://hellfishmedia.test
, as a WordPress root install.
I've besides created a very basic page to serve every bit the site dwelling house page, which includes an image in the page content, and a link to a Contact page.
Step one: Prepare Your Site
If this is a alive site, it's a proficient idea to show a maintenance message while you lot make changes that could intermission the site. For this, nosotros recommend the WP Maintenance Style plugin. Install it, activate maintenance manner in the plugin settings, and your users will run across a message letting them know about the brief period of reanimation.
Front-end users will only run into the maintenance page, simply nosotros can withal access the WordPress dashboard through https://hellfishmedia.test/wp-admin/
.
Step 2: Update the Database
For our example, we'll be moving WordPress into a new /wp
subdirectory, so y'all demand to update the database to reflect that alter – only only for URLs that demand it.
Y'all but need to worry about references to image files and avails contained in theme or plugin folders. All of those are located nether /wp-content
by default, or a custom content path, if you've configured one. As such, you can use the content path to target URLs and file paths you demand to change. If you've configured a unlike location for your content as nosotros described earlier, you might need to tweak this to lucifer.
This is possible using any decent find and replace tool, including the WP-CLI search-replace
command, Better Search Supplant, or WP Migrate DB. For our purposes we'll be using WP Migrate DB Pro's Find & Supplant tool.
In our case site, we'll desire to detect //hellfishmedia.test/wp-content
and replace information technology with //hellfishmedia.exam/wp/wp-content
, and find /home/iain/development/websites/hellfishmedia/wp-content
and supercede information technology with /dwelling house/iain/evolution/websites/hellfishmedia/wp/wp-content
to update URLs and file paths respectively. For the sake of the test, we're also replacing the site title. Here's what this volition look similar in WP Drift DB Pro:
What's great virtually the WP Migrate DB Pro Find & Replace tool is that y'all can preview the changes earlier you run them.
You can too inspect what updates the plugin will make on a per-table basis.
Once you lot run the detect and replace, and accept a look at any page content, you'll run across that while links to the Contact page don't include the subdirectory, the embedded image does:
Your adjacent step is to update the "WordPress Address (URL)" setting in your "General Settings" folio to include the subdirectory. You tin can practise this by navigating to Settings > General in your WordPress admin, and adding the subdirectory to the "WordPress Accost (URL)" field. This will break the backend of your site until you complete the rest of this process, and so make sure you don't need to access information technology for a bit.
One time you lot save the change, your WordPress admin dashboard will show you a "Page not found" fault and your maintenance page will lose all its styling. This happens because WordPress is still looking for all its admin and asset files under https://hellfishmedia.test/wp/
, just they don't exist.
Step three: Moving WordPress Files Into the Subdirectory
While the maintenance page won't expect pretty at this signal, at to the lowest degree it displays the maintenance bulletin to your site users. Unfortunately, that'due south going to break in the next step, equally yous demand to move the files from the web root into the right subdirectory. For our case, we'll practice the following:
- Create the
wp
subdirectory in the web root. - Move everything from the web root into the
wp
directory. - Re-create (not movement) the
index.php
file and the.htaccess
file from/wp
back into the web root directory.
You can do this via your local file manager, or via an FTP client if it'south a remote server.
Alternatively, if you prefer the terminal, the commands would look similar this:
cd ~/evolution/websites/hellfishmedia mkdir wp mv * .* wp/ cp wp/index.php . cp wp/.htaccess .
This will cause the maintenance page to display an error.
Alert: require(/dwelling house/iain/development/websites/hellfishmedia/wp-blog-header.php): Failed to open stream: No such file or directory in /home/iain/evolution/websites/hellfishmedia/index.php on line 17 Fatal error: Uncaught Error: Failed opening required '/home/iain/development/websites/hellfishmedia/wp-weblog-header.php' (include_path='.:/usr/share/php') in /home/iain/development/websites/hellfishmedia/index.php:17 Stack trace: #0 {principal} thrown in /home/iain/development/websites/hellfishmedia/index.php on line 17
The last stride is to update the require
expression in the alphabetize.php
file in the web root with the path to the new subdirectory, as we showed you right at the showtime of this guide. Edit the file in your code editor, and update the line to expect like this:
require __DIR__ . '/wp/wp-blog-header.php';
Alternatively, if you lot adopt to run a final control, you tin can use the same perl command that our WP-CLI script used earlier:
perl -p -i -e "s/\/wp-blog-header/\/wp\/wp-blog-header/g" index.php
Your root install should now exist fully converted to a subdirectory install. Y'all should have this opportunity to check all your content, brand sure everything appears to be working, and that images display as yous'd expect.
It's also a good thought to log into your dashboard and navigate to Settings > Permalinks to save and flush your permalinks.
1 last affair to note is that the example site nosotros set up here doesn't accept a lot of plugins or a custom theme. These aspects could add additional complexities when converting between root and subdirectory installs. For this reason, we recommend making sure you've thoroughly tested the site after converting information technology from one install type to another.
Converting a Subdirectory Install to a Root Install
If you lot've completely converted to running all your WordPress sites every bit subdirectory installs, you might come up across a situation where yous need to work with a live client site that is a root install. If you utilize a tool similar WP Migrate DB Pro, it's not possible to migrate from a subdirectory install to a root install. This ways y'all might need to showtime convert a local dev or staging site to a root install before migrating information technology to the live site. Converting a subdirectory install to a root install is near always easier than the reverse because the URLs and paths are already using the subdirectory path y'all're converting from. To do this, y'all'll demand to update both the database and the file construction, ideally with a minimal amount of downtime.
I've set up a local site, https://hellfishmedia.test
, with WordPress installed in a subdirectory named wp
.
I've besides created a very basic page to serve equally the site home folio, which includes an epitome in the folio content, and a link to a Contact page.
Step 1: Prepare Your Site
Converting the site is going to crave some database changes but before you do this yous'll want to ensure that you can all the same access wp-admin
. To accomplish this, define the site URL and dwelling URL values in the wp-config.php
file. This will override the settings for siteurl
and habitation
in the wp_options
table and volition prevent you lot from losing access to the WordPress dashboard.
// The URL where the WordPress application files are attainable ascertain( 'WP_SITEURL', 'https://hellfishmedia.test/wp' ); // URL where the forepart end is attainable define( 'WP_HOME', 'https://hellfishmedia.exam' );
If the subdirectory site is alive, it would be a good idea to bear witness a maintenance bulletin while you brand changes that could break the site. For this, we recommend the WP Maintenance Style plugin. Install it, activate maintenance mode in the plugin settings, and your users will see a message to allow them know about a brief flow of downtime, rather than a broken site.
Nonetheless, we can still visit the dashboard using https://hellfishmedia.test/wp/wp-admin/
.
The side by side stride is to update the database.
Stride 2: Update the WordPress Database
Now you tin can update the database to remove any references to the subdirectory. This is possible using any decent discover and replace tool, including the WP-CLI search-supersede
command, Better Search Replace, or WP Migrate DB. For our purposes, we'll be using the WP Migrate DB Pro Find & Supersede tool.
To outset, we search for the source site URL, including the subdirectory (//hellfishmedia.exam/wp
) and replace it with the URL excluding the subdirectory (//hellfishmedia.test
). We besides want to update any physical paths from /home/iain/development/websites/hellfishmedia/wp
to /home/iain/development/websites/hellfishmedia
. We're also updating the site title for sit-in purposes:
Equally we mentioned earlier, WP Migrate DB Pro's Find & Supersede tool lets you preview changes earlier you lot run them.
You can even audit what updates the plugin will make on a per-table basis. Hither I can confirm that the link to the image in the wp_posts
table for my Dwelling folio will exist updated, also as the GUID for the image attachment. If I don't want to update the GUID, I could alter this in the settings. In this instance, it makes sense to change the GUID.
You might not discover any changes after you run the find and supersede. The front end volition nevertheless show the maintenance folio, while the back end will nonetheless work because of the hardcoded constants.
Still, if you look at some post content, y'all'll observe that the images are broken and internal links now lack the subdirectory. Here is the home page in the Block Editor:
To gear up this, at that place'southward one concluding stride nosotros have to do.
Stride 3: Moving WordPress Out of the Subdirectory
Your final pace is to manually motility all the files in the subdirectory into the public web root directory of your site.
You drag and driblet the files in your local file manager or use an FTP customer if you're working on a remote server. Notwithstanding, be sure to select the option to overwrite the index.php
file:
Once you've copied over the files, yous can delete the wp
subdirectory.
You lot can also do this on the command line, but if your site is on a remote server you need to SSH into the server first. In this example, I'k working with my local hellfishmedia
directory that nosotros ran the discover and replace on earlier.
cd ~/development/websites/hellfishmedia rm index.php cp -R wp/. . rm -rf wp
The final piece is to remove the WP_SITEURL
and WP_HOME
constants from your wp-config.php
and then test your site.
It'south also a good idea to log into your WordPress dashboard and navigate to Settings > Permalinks. Here, click the Relieve Changes button to make sure y'all affluent the permalinks and that your URLs still piece of work.
Wrapping Upwardly
Hopefully, we've given you plenty information to consider switching your root installs to subdirectory installs, as well as the tools to do so. If y'all're looking for a mod, Composer-based option, you could consider using a similar structure as our SpinupWP spinupwp-composer-site package, which takes the idea of installing WordPress as a dependency to a whole new level.
Do you run your WordPress installs in a subdirectory? What workflows do you utilise to manage your WordPress directory structure? Do you think WP Migrate DB Pro should do more to brand the migration process between the root and subdirectory more than straightforward? Let united states of america know your thoughts in the comments section below!
Source: https://deliciousbrains.com/move-wordpress-root-subdirectory/
0 Response to "Should I Upload Wordpress in Its Folder"
Post a Comment