Несколько блогов на одной инсталляции Wordpress (без WPMU)


Вводная: сайтов у меня куча, большая часть на wordpress. Задолбался следить за версиями: хочу обновлять все кучкой.

Задача: одна инсталляция Wordpress, куча сайтов, куча баз (в одну сливать не буду, лениво и могут быть проблемы с плагинами – не все пользуют префиксы к базам данных)

Немного погуглил.

Решение: Вордпресс ставим в одном месте, папки доменов делаем ссылками на данную.

Для конфига пишем следующее.

Вариант 1

// allowing for multiple blogs using symlinks
// we grab the server name, lop off the www if present so it works
// with or without.

$server_array = explode(».», $_SERVER['SERVER_NAME']);
if ($server_array[0] == ‘www’) {
array_shift($server_array);
}

$server = implode(’.', $server_array);

// now we check a specific whitelist of servers
// for each server, we set the same set of parameters just like
// we always do in WP, but now on a per-domain basis. The same thing
// could be achieved with subdomains and even subdirs by grabbing other params.
//
// UPLOADS is not typically set in the WP config.
// It is used in wp-includes/functions.php.
// UPLOADS overrides the database parameter upload_path which is set on the
// Miscellaneous Options page.
// The option set on that page and stored in the DB is now worthless.

switch ($server) {
case ‘example1.com’:
define(’DB_NAME’, ‘example1′); // The name of the database
define(’DB_USER’, ‘e1user’); // Your MySQL username
define(’DB_PASSWORD’, ‘132bsDFfh’); // …and password
define(’UPLOADS’, ‘wp-content/uploads/e1/’);
break;
case ‘example2.com’:
define(’DB_NAME’, ‘example2′); // The name of the database
define(’DB_USER’, ‘e2user’); // Your MySQL username
define(’DB_PASSWORD’, ‘4v9eNd’); // …and password
define(’UPLOADS’, ‘wp-content/uploads/e2/’);
break;
case ‘example3.com’:
define(’DB_NAME’, ‘example3′); // The name of the database
define(’DB_USER’, ‘e3user’); // Your MySQL username
define(’DB_PASSWORD’, ‘art4v9eNd’); // …and password
define(’UPLOADS’, ‘wp-content/uploads/e3/’);
break;
default:
echo «Whoops!»;
}

Вариант 2

$host = $_SERVER['HTTP_HOST'];
$parts = explode('.',$host);
if ($parts[3] = "") {
$domain = $parts[0];
} else {
$domain = $parts[1];
}

switch ($domain) {
case "domain1":
$db = "database1";
break;
case "domain2":
$db = "database2";
break;
}

define('DB_NAME', $db);
define('DB_USER', 'user');
define('DB_PASSWORD', 'password');
define('DB_HOST', 'hostname');

Зачем люди покупают загородные дома в Подмосковье? Что бы в пробках по утрам стоять?

Изготовление вывесок из неоновых трубок не так уж и дорого… А сколько стоит согласовать ее установку?

Когда «специалисты» по системам отопления научатся правильно ставить радиаторы? У нас в офисе у батареи аж три вентиля, но забыли сделать сгон, и теперь приходится париться – «придушить» батарею нельзя.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Post a Comment

Your email is never published nor shared. Required fields are marked *

*

*