• File: class.u.multisite.php
  • Full Path: /home/chassiw/www/wp-content/plugins/duplicator/classes/utilities/class.u.multisite.php
  • File size: 1.18 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php
/**
 * Methods used to work with WordPress MU sites
 *
 * Standard: PSR-2
 * @link http://www.php-fig.org/psr/psr-2
 *
 * @package Duplicator
 * @subpackage classes/utilities
 * @copyright (c) 2017, Snapcreek LLC
 *
 * @todo Refactor out IO methods into class.io.php file
 */

// Exit if accessed directly
if (! defined('DUPLICATOR_VERSION')) exit;

class DUP_MU
{
    public static function isMultisite()
    {
        return self::getMode() > 0;
    }

    // 0 = single site; 1 = multisite subdomain; 2 = multisite subdirectory
    public static function getMode()
    {
		if(is_multisite()) {
            if (defined('SUBDOMAIN_INSTALL') && SUBDOMAIN_INSTALL) {
                return 1;
            } else {
                return 2;
            }
        } else {
            return 0;
        }
    }

    public static function getGeneration()
	{
		if (self::getMode() == 0) {
			return DUP_PRO_MU_Generations::NotMultisite;
		} else {
			$sitesDir = WP_CONTENT_DIR.'/uploads/sites';

			if (file_exists($sitesDir)) {
				return DUP_PRO_MU_Generations::ThreeFivePlus;
			} else {
				return DUP_PRO_MU_Generations::PreThreeFive;
			}
		}
	}
}