Şub 032015
 
1.855 views

MultiSite WordPress Kurulumu

Bu yazıyı standart wordpress kurulumu konusunda deneyimli kişiler için kaleme aldım. Elbette ilk denemede multisite wordpress kurulumu yapmak ta pekala mümkün. Ancak bir yerde takılınca, multisite ile ilgili yanıt bulmak epeyce sıkıntılı oluyor.

Öte yandan, standart wordpress siteler konusunda deneyimli olduğu halde, multisite konusunda en ufak bir bilgiye bile sahip olmayan çok sayıda webmaster var.

Aslına bakarsanız, multisite wordpress kurulumu, standart kurulumdan çok farklı bir yol izlemiyor. Sadece birkaç küçük ayrıntı var.

Subdomain ayarı: (eğer alt siteler subdomain olacaksa cPanelden aşağıdaki ayar yapılmalı.)

multisite wordpress subdomain

wp-config.php (aşağıdaki satırın wp-config.php dosyasına kurulumdan önce işlenmesi gerekiyor. Bu satır konmazsa, standart kurulum gerçekleşir.)

/* Multisite */
define( ‘WP_ALLOW_MULTISITE’, true );

Normal kurulumu yap.

Tools -> Network setup (Ayarlar -> Ağ ayarları):
Subdomain (alt alan) veya Subdirectory (alt dizin) olarak tanımla.

Ağ ayarları düzenlendiğinde wp-config.php dosyasına eklenmek üzere aşağıdaki satırlar oluşur.

define(‘MULTISITE’, true);
define(‘SUBDOMAIN_INSTALL’, true);
define(‘DOMAIN_CURRENT_SITE’, ‘mydomain.com’);
define(‘PATH_CURRENT_SITE’, ‘/’);
define(‘SITE_ID_CURRENT_SITE’, 1);
define(‘BLOG_ID_CURRENT_SITE’, 1);

(Yukarıdaki satırlarda yer alan mydomain.com yerine kendi alan adınızı yazmalısınız. Alt sitelerinizin xyz.mydomain.com şeklinde çağrılmasını istiyorsanız,

define(‘SUBDOMAIN_INSTALL’, true);

eğer alt sitelerinizin www.mydomain.com/xyz şeklinde çağrılmasını istiyorsanız

define(‘SUBDOMAIN_INSTALL’, false);

satırlarını kullanmanız gerekir.

Son olarak, .htaccess dosyasına eklenmesi gereken temel satırlar şunlar olmalıdır:
.htaccess dosyası:

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ – [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ – [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2[L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L]
RewriteRule . index.php [L]

# END WordPress

İşte hepsi bu kadar!..

Temel adımları yeniden özetleyecek olursak:
1. Wp-config.php dosyasına define( ‘WP_ALLOW_MULTISITE’, true );
satırını ekle
2. Ağ ayarları (Network setup) seçeneklerini düzenle
3. “Subdomain” veya “sub directory” yöntemini seç
4. Ağ adı (network name) bilgisini gir
5. Yönetici (admin) eposta adresini tanımla
6. wp-config.php dosyasını verilen kodlara göre düzenle
7. .htaccess dosyasına verilen kodları ekle
8. Siteye yeniden giriş yap

Multisite sistemi tarafından veritabanına eklenen tablolar şunlardır:
• wp_blogs
• wp_blog_versions
• wp_registration_log
• wp_signups
• wp_site
• wp_sitemeta

Ana site tabloları standart tabloların aynısıdır.

Yavru sitelere ait tablolar ise yavru site için verilen blog numarası eklenerek oluşturulur. İçerikler standart tabloların aynısıdır.

Yazımın başında da belirttiğim gibi, wordpress sistemini zaten tanıyor olduğunuzu varsaydım. Bu nedenle bir çok ayrıntıyı burada tekrar vurgulamaya gerek duymadım.

Eğer tek başınıza çok sayıda siteyi yönetmek gibi bir amacınız varsa, multisite wordpress sistemi sizin için güzel bir çözüm sağlayabilir. Ama bu sistemden mucizeler yaratmasını da beklemeyin!

Sorularınızı veya değerlendirmelerinizi yorumlar bölümünden bana iletebilirsiniz.

Ahmet Aksoy

Türkçe kaynaklar:
http://rooteto.com/wordpress/multisite
http://wpnotlari.com/wordpress-multi-site-kurulumu/
http://bimedya.com/multisite-kurulumu-ve-ayarlari

Yabancı kaynaklar:
http://www.wpbeginner.com/wp-tutorials/how-to-install-and-setup-wordpress-multisite-network/
http://www.elegantthemes.com/blog/resources/the-complete-guide-to-creating-a-wordpress-multisite-installation
http://mashable.com/2012/07/26/beginner-guide-wordpress-multisite/