Activating WordPress 3.0 Multi Site (Formerly Multi User, MU)

As I said in an earlier post (this one), WordPress Multi Site is the WordPress Multi User part of WordPress 3.0. It is a hidden part of WordPress 3.0 and has to be activated manually with a a few edits to a WordPress installations wp-config.php file. You must have web server file access to activate it. The instructions are easy to follow and you should be able to get WordPress Multi Site activated inside of 10 minutes work. The method is...

  • Disable all plugins. You can re-enable them after multi-site has been configured.
  • Activate the multi-site features of WordPress 3.0 by adding this line of code to the bottom of your wp-config.php file
    /** Enable or disable Worpress Multi-site features **/
    define('WP_ALLOW_MULTISITE', true);

    Put it just above the line that reads

    /* That's all, stop editing! Happy blogging. */
  • Refresh your Dashboard then visit Tools>Network. You will see a screen that looks similar to the one in the picture below. Read onwards before you make any configuration changes.
BigBuz's WordPress 3.0 Multisite's Network Page

WordPress 3's Network Page for Multi Sites

If you want to install your additional blogs on virtual sub-domains instead of sub-directories you will need to create a wildcard DNS record on your server to enable the virtual host (sub-domain) functionality of WordPress 3.0. Your server must support wildcard DNS records for you to do this - check with your host before continuing. Hostgator's Baby Plan allows them. Using Hostgator as an example, follow these instructions to create a wildcard DNS record for a domain.

Wildcard DNS Sub Domain Creation

Wildcard DNS Sub Domain Creation

  • Select "sub-domains" under "Domains" in CPanel
  • Enter an asterisk "*" in the sub-domain's name field
  • Select the TLD the wildcard DNS is to be set up on
  • Enter the server location address for the wildcard folder, e.g. /public_html/bigbuz
  • Click "Create"

Now you need to install the newly activated WordPress 3.0 Network settings:

  • Find the Network settings page in your WordPress admin panel (Tools>Network)
  • Choose whether you want to use sub-domains or sub-folders for the additional blogs
  • Type a name for your network of sites
  • Set your admin email address
  • Click "Install"

After a minute or two you will be presented with a configuration screen. Back up your .htaccess and wp-config.php files before you proceed to follow the instructions provided on that screen.

As a precautionary measure to prevent visitors of non-existent sites from being greeted by 404 error messages, redirect them to a URL of your choice by adding the below code to the bottom of your wp-config.php file:

/* Send visitors to non-existent blogs here */
define( 'NOBLOGREDIRECT', 'http://journalxtra.com/' );

Change http://journalxtra.com to a URL of your choice.

Next, create a directory called blogs.dir under your site's wp-content folder. The address will look like wp-content/blogs.dir.

Lastly, log out then log back in. Congratulations on your new WordPress Multi Site installation!

You will now need to go through your settings to enable or disable the new options provided by WordPress Multi Site. Use the Network Admin link at the top left of your admin screen to edit your network's settings. Browse around, have  a play and you will soon realize how intuitive the Network Admin interface is to navigate.

Maintaining your site's security is highly important. A quick guide to hardening WordPress against threats is available here.

Using Multiple Domains

The WordPress development team intend a future WordPress release to be able to manage multiple domain names and not just sub-domains and sub-directories. To explain that another way, a future WordPress release will let you create a sub domain and mask it with another top level domain that has its DNS records set up to point to your server. In the meantime you must use the Yet Another Multi Site Manager (YAMM) plugin to achieve the same result.

YAMM will let you map more than one domain to a Multi Site installation for the purpose of registering child sites at either domain e.g. to map domain-one.tld and domain-two.tld to the same WordPress Multi Site installation; and to allow sites to be created as either sub.domain-one.tld and/or sub.domain-two.tld.

The author of YAMM intends to update his plugin with improved WordPress 3 support. But that does not mean it does not work now. It does, here's how to install it:

  • Download the plugin
  • Copy the sunrise.php file from /wp-content/plugins/yet-another-multisite-manager
  • Place it in the /wp-content/ directory
  • Edit your wp-config.php file to add
    define( 'SUNRISE', 'on' );

    to the bottom of it

  • Activate the plugin from your plugin admin panel

I've written full instructions for YAMM here.

To map a domain onto a child site (e.g. send visitors who request domain-two.tld to sub.domain-one.tld) requires a plugin like WordPress MU Domain Mapping.

Be careful when adding plugins!

Not all WordPress plugins are Multi Site compatible. If you activate an incompatible plugin you could kill your network of sites!

Fix a broken network by deleting the folder of the plugin that caused the outage from /wp-content/plugins/.

Some plugins you might like are  listed here.

There is a bug that occurs when plugin's are "Network Activated" instead of "Activated" on a per site basis. It affects plugins that have been neither updated nor created since WP 3 MS was released.  I've documented it here.

You might also be interested in reading How to Move Multiple WordPress Subdomain Blogs to a Single WordPress 3 Multi Site Blog.


Related posts:

  1. How to Use Yet Another Multi Site Manager
  2. How to Move Multiple WordPress Subdomain Blogs to a Single WordPress 3 Multi Site Blog
  3. How to Verify Your WordPress Multi Site Blogs with Google, Yahoo and Bing
  4. BuddyPress Cocked Up WP Multi-Site - Want To Fix It?
  5. Amazing Disappearing Multi Site Phenomenon!!!

  • VeronikaPopGal

    Super guide!
    I've been visiting and digging your site for sometime and thought I'd better introduce myself - Hi, Im Veronika! LOL
    Thank you for all your guides, they have helped me immensely since I took to building web sites to making a bit of extra income :)

    • http://journalxtra.com Dion de Ville

      Hello Veronika!

      Thank you for digging my articles. I spend quite a bit of time on each one and your appreciation of them has definitely made me smile today :)

      I'm really glad I have helped you in your career. Keep visiting because I'm sure my future articles will help you too.

  • http://nyblogs.net hmansfield

    Very nice tutorial.  Saw some others but they left out a few steps and it was very frustrating.
    Followed yours and had it done in a matter of minutes...dropped in Buddypress and we are on our way.
    Looks just like my MU installations (with the 3.0 upgrade of course)
    I would suspect that you will start to get a boost in traffic on this post starting today.
    Nice job.

    • http://journalxtra.com Dion de Ville

      Thank you, there are other parts of WordPress 3 that have to be activated to be used. I'll research and post about them soon. Be careful when activating plugins because one bad one could take down your whole network. Take a look at my WordPress plugins page, anything with NOTWP3 next to it will cause a problem.

      Your site, nyblogs.net is very clean. I like it.

    • http://nyblogs.net hmansfield

      Thanks for the compliment. I actually read that post too.
      I really haven't found too many problems updating.
      I had some old plug ins that I was concerned about anyway, but I really only had to ditch one, out of the few sites that I have upgraded so far...and I expected to have to do so.

      Just did my oldest site (4 years) with a 2 year old theme from Solostream, , and even that went well.

      I am pleasantly pleased and surprised.

    • http://journalxtra.com Dion de Ville

      I mean it too :-)

      You were right, this post has brought in a lot of traffic - I planned its release quite well.

      I thought there'd be lots of issues with site upgrades but the WordPress team have done a really great job to maintain compatibility with older plugins and themes.

      I read your post on DigitalPoint, thank you for that, I appreciate it. I was going to log in and post a thank you message but I've had a few posts deleted there so don't I bother with DigitalPoint any more (wouldn't be so bad but I don't spam, lol).

      I'm in the middle of transferring a blog from a real subdomain to a virtual Multi Site subdomain. I use the blog to help search engines index one of my online stores. It has over 5,000 posts (more than 9,000 tags). I'll still be doing it tomorrow. Will let you know how it goes. Other transfers have worked well so I expect this one will too.

  • Pingback: Congratulations WordPress!!!

  • Pingback: JournalXtra

  • Pingback: Tweets that mention Activating Wordpress 3.0 Multi Site (Formerly Multi User, MU) -- Topsy.com

  • Pingback: Forming a blog community with wordpress 3.0 - Webmaster Forum

  • http://dragontheory.com Dragon

    Can I add existing WordPress sites under a single WordPress installation? Will the plug-ins installed on one, effect the others? For example, I have customized the admin dashboard with Dashboard Editor in one theme, if I enable the Multi Site will ALL of the admin dashboards be customized in like manner? Thanks in advance.

    • http://journalxtra.com Dion de Ville

      Hello Dragon,

      To answer your first question, yes, you can successfully transfer sites that already exist on sub domains as independently installed WordPress blogs to a Multi Site network. I've trialled it with one of my sites, I'm about to do the same with another series of sites and will write a guide to doing it today. I can't explain it as a comment because it'd take a lot of words. I will update this comment to point you to the guide when it is published (today).

      I've never used Dashboard Editor, I'll trial it on one of my WordPress 3.0 sites in a few minutes and let you know what happens. You will need to check your plugins for compatibility before you enable Multi Site features. I've listed 101 plugins here. Those in the list with NOTWP3 suffixed to them are not Multi Site compatible.

      Generally speaking, from my experience, plugin settings only affect one site.

      Another point to note about plugins is the difference between Network Activation and Site Activation:

      • Site Activation enables a plugin for one site only (the site it is enabled within); whereas
      • Network Activation enables a plugin for all sites within the network.

      Also, all plugins are visible across a network whether activated or not.

    • http://journalxtra.com Dion de Ville

      I found two plugins with the name Dashboard Editor - one last edited over 800 days ago and the other over 600 days ago. The most recently updated one failed to activate, the other failed to work once activated (changes applied had no effect). Are you using a different plugin to those I tried?

    • http://journalxtra.com Dion de Ville

      As promised, so shall I deliver...here's the guide to transferring an already installed subdomain WordPress blog (pre-Multi Site) to a Multi Site virtual sub domain: How to Move Multiple WordPress Subdomain Blogs to a Single WordPress 3 Multi Site Blog.

      That is the longest title for any article on JournalXtra.com - way to go for record breaking

  • Pingback: How to Move Multiple WordPress Subdomain Blogs to a Single WordPress 3 Multi Site Blog

  • http://www.archcityhomes.com Karen Goodman

    I currently have two WP blogs under one account on Bluehost. I'm not very good with the technical side of blogs, but I think that they both have their own installation with one being a subdomain of the main account. Both sites have their own URL and files on the host site.

    I want to set up a new network of sites using 3.0 Multi-Site. I want to have one master site that I keep updated and thus updates all of the network sites, and charge a nominal fee to real estate agents at my company to get them set up with a networked site and for hosting/maintaining the site. WP.com and other options simply aren't good enough since they don't allow enough customization or iframing in a home search, and most agents aren't tech savvy enough to take on WP.org. I want to meet that need.

    Can I set this up on my current Bluehost account, or should I pay for a separate account for this project? Will every site use the theme of the main site, or do I select a number of themes that each site owner can select like they can on WP.com? If I have the master site on a custom theme,can I set it up so that the custom theme is not an option on the networked sites?

    I was also wondering if you provide services for setting up sites. I used a wonderful designer for my ArchCityHomes.com site (Thesis theme), but I don't know that she has any background in WPMU. My other site, UCityHomes.com is just a free theme and is the one that is currently under the main site in the hosting account. I may go back to my designer for a custom theme for this new project once it us up, but think I want someone with lots of experience with WPMU for initial set up and to flesh out how it will work, plugins that will work, etc.

    • http://journalxtra.com Dion de Ville

      Hello Karen, I am for hire so, yes, I can help you.

      It is very possible to convert your current sites to a Multi Site set-up. I've just posted an article explaining how to do it. I am more than willing to do it for you.

      You can control the themes that are accessible to the authors of the networked blogs. The default WP 3 MS setting is that themes installed by the administrator have to be enabled for network use before they can be accessed outside of the main (admin) site.

      I need to research Bluehost before I can answer your question about it. Generally speaking, it is better to pay for hosting. Paid hosting has fewer account usage limits (bandwidth, content type, email accounts and subdomain set-up, to mention a few) - each host is different, I use Hostgator).

      Please use the contact form to provide me with your email address and further details of what you need and I'll email you back.

    • http://journalxtra.com Dion de Ville

      Karen, you will not be able to set up a WordPress Multi Site on a Bluehost server. I've just spoken with a Bluehost rep and was told they do not allow wildcard DNS records.

      Wildcard DNS records are essential for the setting up of a WordPress MS network. Their one selling point is that they provide a free shared SSL certificate or a dedicated one for $45 per year. Personally, I would move to another Host, one that permits wildcard DNS records.

    • http://enkerli.com/ Alexandre

      Actually, though Bluehost's support files do say that they don't support wildcard DNS, I just setup a WP3.0 MS using subdomains with no issue. I added the asterisk subdomain to example.com in Bluehost's subdomain manager, set up example.com as the main domain, enabled Multi-Site, and created a new "site" as blog.example.com. To make sure it wasn't the same content, I changed the "Hello World!" post of blog.example.com and created a test.example.com. It works.

      Maybe it's a fluke (which I doubt) or a brand new feature, which would be surprising but not impossible. The "redirects" page does talk about wildcards:

      Checking the Wild Card Redirect Box will redirect all files within a directory to the same filename in the redirected directory.

      You cannot use a Wild Card Redirect to redirect your main domain to a different directory on your site.

    • http://journalxtra.com Dion de Ville

      Thank you for that information, Alexandre. Be careful, though, Bluehost might suspend your account for disobeying its rules. I hope they don't; and I hope it is a new feature because a lot of WordPress 3 users will want Multi Site functionality.

  • Pingback: How to access WordPress 3.0's multisite function | Junnette Abrera dot com

  • http://am17.in Amit Kothari

    Thanks for the article it was very helpful. I am interested in using YAMM plugin to manage multiple domains. However there is no proper documentation available on the plugin website.

    I have 2 domains say domain1.com and domain2.com. domain1.com is running WordPress 3 with multi user enabled (Thanks to you :) ). Now I want to use the same wordpress 3 setup for domain2.com as well. I have installed and enabled the plugin YAMM. What changes do I need to do in my DNS control panel so that I can create new blogs (subdomain) on domain2.com using this setup ??

    • http://journalxtra.com Dion de Ville

      Hello Amit, this'll take me a few minutes to write and I'm between drying out my herbs (thyme, marjoram, lemon balm etc...) and checking messages here; so, just letting you know I've heard you and I will provide an answer before the end of today (I'm in the U.K, it is now Monday).

    • http://am17.in Amit Kothari

      Thanks.. Looking forward to your reply :)

    • http://journalxtra.com Dion de Ville

      Amit, please accept my apology for not responding sooner. I am sorry, I was sidetracked by this rare U.K sun (the eighth wonder of the world).

      I've written an easy to follow guide to YAMM. You can read it here.

      You might want to install WordPress MU Domain Mapping too. I haven't used it but it apparently handles missing host names better. The link is in the guide.

  • Pingback: Multi-blogs et Multi-domaines avec Wordpress 3 et OVH. | Ma Boite A Disques

  • Pingback: How to Use Yet Another Multi Site Manager

  • http://twitter.com/florenceria Florence

    Thanks for this nice explanation. One of my friends was asking me for this info. I can refer her to your page now; I'll look forward to more interesting articles in the days to come.

    • http://journalxtra.com Dion de Ville

      Florance, I'm glad to have helped.

  • http://www.the-web-doctor.com/ Lane Lester

    I’m wondering if you can use add-on domains as users without involving YAMM. You set up WP to use sub-directories for the child blogs, and you install the child blog in the subdirectory that cPanel assigns for the add-on domain. Would the add-on domain's URL take the visitor to the child blog?

    • http://journalxtra.com Dion de Ville

      Hello Lane, I understand and yes it is possible to map an addon domain to a Multi Site subdirectory but you must use a domain mapping plugin.

      YAMM will allow child sites (subdirectory and subdomain sites) to be registered with the same WordPress installation but at different domains (e.g sub.domain-one.tld and sub.domain-two.tld).

      To do as you're asking, to have domain-two.tld take a visitor to sub.domain-one.tld (or domain.tld/sub), requires a plugin such as WordPress MU Domain Mapping.

      If you need them, full instructions for setting up YAMM are here. I haven't used the WordPress MU Domain Mapping plugin so any instructions and help I provide for that will be anecdotal.

    • http://www.the-web-doctor.com/ Lane Lester

      Thanks, Dion. I may have to wait for WP3 to have this as an included function. I was unable to connect your instructions for YAMM with what my registrar wants in the zone record fields: Host, TTL, Type/Priority, and Value. I've only supply DNS values to domains and am unfamiliar with zone records.

    • http://journalxtra.com Dion de Ville

      I'm unfamiliar with Zone Records myself. Ask your registrar to set it up for you - good ones will. Some registrars hide certain options and some TLDs are restricted to certain record changes. Best to speak with your registrar, it's what I would do.

  • http://www.science2point0.com Mark

    Hi,

    I'm about to do this but Im verrrry scared about losing everything on my site. What happens to comments etc when you disable the plugins and then reactivate them?

    How do you check if plugins can work sitewide?

    How do you backup if it all goes horribly wrong?

    Thank.

    • http://journalxtra.com Dion de Ville

      Hi Mark, I'm always worried when I make any significant change to any website so you're not stood alone with your fear. There are no guarantees; and even backups can be cock-ups. My advice is that you use PHPMyAdmin (or whatever your database manager is) to export your database (i.e. download it to your desktop) then create a backup folder on your server (/backup) and copy all WordPress files into it so that if anything does go wrong you can replace the updated files with the backup files and the updated database with the backup one.

      With regard to disabling your plugins, some plugins will need to be set-up again. Go through their settings and make a note of any API keys, usernames and passwords. Your comment plugin should retain any comments when deactivated and should restore them upon reactivation but it is wise to check with the plugin's support site first (if it is Disqus then it should be O.K, I've just disabled and re-enabled the Disgus plugin on a client's site without issue).

      Be aware that your theme might not work with Multi Site. I do not know which theme you are using; it looks nice and it'd be a shame to lose it so back it up first and google to see whether it is Multi Site compatible or tell me its name and I'll check it in one of my test sites for you.

    • http://www.science2point0.com Mark

      Thanks for the quick response, its bp colours from here http://bit.ly/dkX0Rz although I have customised it quite a bit. Im a bit concerned about the details of the site being lost. ie. Member login data, profile fields. Have you done this upgrade before?

      Thanks

    • http://journalxtra.com Dion de Ville

      I've done the upgrade many times. Make sure all your plugins are up to date, make sure your database is optimized and repaired (use the WP DBManager plugin or PHPMyAdmin), backup your database and all WordPress files then edit config.php to begin setting up Multi Site. You shouldn't lose anything but it is best to backup first. Remember to note any widgets and their settings just in case...

      BP Colours should work. I've installed BuddyPress at http://vorbiz.eu/ to test it. I've left it there for you to check, will delete it within a few days. Vorbiz.eu is Multi Site enabled.

  • Pingback: WordPress 3.0 Multisite – tips&tweaks | WP Tuts

  • Pingback: Tutorial para instalar o WP 3.0 Multi-site | joaobarroca.Net

  • http://www.lensdiaries.com rolandogomez

    Thanks, followed this step by step, worked perfect on my existing wordpress site. Your writing is clear, concise and execellent--and that comes from an author of five photography books! Thanks again, rg.

    • http://journalxtra.com Dion de Ville

      Thank you, Rolando Gomez, I try my best to write as clearly as possible. I understand that many of my readers will use English as a second language or will employ Google Translator so I stay away from ambiguity and colloquialism as much as possible (depending on my mood). I visited your blog (lensdiaries.com); striking photos! Good luck with your upcoming Photo Albums project - remember to monitor your users' uploads.

  • Joe

    Hi,

    Really great article, very helpful.

    I've written a guide that goes into quite a lot of detail about .htaccess configuration and editing the wp-config file.

    Have a look: http://catn.com/2010/08/09/enabling-wordpress-3-0-multi-site/

  • http://rowlandwilliams.com rwilliams1961

    I want three installs (primary domain name plus two folders). I have about 20 pages. I want 18 of those to be shared between the installs. I want 2 each to be unique to each install. Because I have different users, I want to have each install have exclusive access to the 2 pages. I don't want other installs have access to those folder-specific pages.

    Can this be done?

    • http://journalxtra.com Dion de Ville

      I suspect it can be done. There's a plugin called WordPress MU Site wide tags which I'm reliably told will pull posts and pages through to different sites on an MS network. You could then either manually edit each page or use a plugin to spin the content or re-write it on a per site basis. View the 101 Plugins Page to see some of the re-writer and autoblogging plugins that I recommend for WordPress. Alternatively you could use a feed reader to mirror the sites by importing the RSS feed from your main site; again there would be an element of re-writing involved.

  • http://muzzmarketing.com Sheryl

    Hi There. I intend to follow your instructions above for installing WP Multi-user. I am not technical and have very little web experience, but I'm going to give it a go. I am a marketing consultant and used WP to develop my own site. I will now be developing sites for some of my clients. I would like to keep my site separate from the client network. Is there a way to do that? And, also, in my case I am not clear on the difference between sub-domains and sub-directories and which might be better for my application. Basically I will be developing the sites for my clients (they may current have an existing site), and I'd like them to be able to view the site while it's being developed. Once it's approved, their domain registrar would point to the new WP site. Any help/advise you could provide before I start the install would be greatly appreciated! Thanks so much.

    • http://journalxtra.com Dion de Ville

      Hello Sheryl, this could take some time to explain. If my explanation isn't clear then please ask me to expand on any part that needs further clarification. I do install and setup WordPress sites for my own clients so do have a lot of experience with this.

      When you use WordPress MS all your networked sites load the same index.php file i.e whenever a surfer hits your server and requests a web page, your server will load the index.php file first then will serve the correct pages for the requested site. If just one of the sites in your network causes excessive load on your alloted server resources then the index.php file will be suspended by your host consequently all sites attached to the network will be suspended at the same time.

      So, I advise you to be careful with using WP MS for hosting multiple client websites unless you use a dedicated server. WordPress MS is a great way to easily manage multiple sites except when those sites receive a lot of hits, use resource hungry plugins, and are on a shared server or small scale VPS. If your clients' sites will be pretty simple without any special plugins (such as those which display related posts and allow autoblogging) then you should be fine to use a shared or virtual private server for WP MS.

      The best way to keep your site apart from your client's sites is to use a separate WordPress installation: one for your site, one MS installation for your client sites.

      Subdomains look like blog.wordpress.tld and blog2.wordpress.tld; subdirectories look like wordpress.tld/blog and wordpress.tld/blog2. When using WordPress MS with subdirectories you will need to install a plugin to remove the blog slug that WordPress puts between the domain name and the blog name (e.g wordpress.tld/blog/blog and wordpress.tld/blog/blog2).

      Subdomains are treated as separate domain names by search engines and can have their own sitemap/s files whereas subdirectories are treated as part of the root domain name and must use a combined sitemap/s or sitemap index. To use subdomains with WordPress MS your host must support wildcard DNS records. I would use subdomains over subdirectories if possible.

      Your clients will be able to view their sites while they're under construction. You could even provide them with their own (limited) access credentials until you hand the site over to them.

      If you find you have more work than you can handle then I'm available for hire.

      Sheryl, remember to contact me if you need further explanation or assistance or add another reply to this post.

  • http://www.websuccesscoach.com Demetria

    This has been quite helpful. I am currently looking into building up my WordPress MU site. Thanks for the tips.

    • http://journalxtra.com Dion de Ville

      Glad to have helped.

  • http://www.sharengrow.com neil

    Amazing. thanks for keeping this article here.

    i was struggling with wild card issue with Multisite with bluehost. spent lot of time. Conguired Multisite in my mai domain but when i configure subdomain, redirection was not happenning to the main domain folder.

    thanks and you saved my lot of time.

    neil

    • http://journalxtra.com Dion de Ville

      You're very welcome Neil.

  • Adrian

    Hi Dion - looks like you wrote this in June 2010, so just checking (before I wade in and try any of this) that the info here is all still applicable, and that WP 3 hasn't changed and rendered any of this obsolete - I know a lot can change in 6+ months :) - I'm guessing more and more people will be looking into multisites.

    Thanks,

    Adrian

    • http://journalxtra.com Dion de Ville

      It is always good to check. I last ran through this just over a week ago with version 3.0.5. It still works as written. Let me know if you run into any difficulties and I will do my best to help.

  • http://www.noticiashoy.cc noticias hoy

    Hi there, You've done a great job. I’ll definitely digg it and personally suggest to my friends. I'm confident they'll be benefited from this website.

  • Robert Sanburg

    I don’t normally comment on blogs.. But nice post! I just bookmarked your site

  • fun kids games

    I found your blog from cuil and it is amazing. Thanks for providing such an informative post!

  • http://www.mythedietary.info/ Jay Ramos

    Easy to follow steps, thanks a lot for sharing. This tips are working. 

  • http://journalxtra.com Dion de Ville

    It does when I do it and when others do it. Which part are you stuck at?

WPMU DEV - The WordPress Experts
All original content on these pages is fingerprinted and certified by Digiprove