Wordpress

WordPress Multisite Oluşturma

Bu yazımızda WordPress’in bize sağladığı ağ kurma ve çoklu site özelliğinden bahsedeceğiz. Bu özellik sayesinde birden fazla WordPress kurulumu yapmadan yeni siteler kurabilir ve kurduğunuz tüm siteleri tek bir panelden yönetebiliriz. Bu yöntemle ağınıza yeni bir site eklediğinizde ayrı bir dizin veya veritabanı oluşturulmayacak. Sadece veritabanınızda içerikler için wp-posts2, wp-comments2 gibi yeni tablolar oluşturulacak.

Fakat bu sistemin kendi içinde bir takım kısıtlamaları da bulunuyor. Kuruluma geçmeden önce bunların düşünülmesi gerekir.

WordPress ağını yalnızca alt alan adlarına (subdomain) ve alt dizinlere (subfolder) kurabilirsiniz. Tabi ki eklentilerle, yönlendirmelerle vs. harici domainlere de kurulum yapabilmemiz mümkün ama varsayılan olarak böyle bir seçenek bulunmuyor.

Subdomain: test.beeloji.com
Subfolder: beeloji.com/test

Kalıcı bağlantı (permalink) ayarlarımız beeloji.com/blog/postname veya beeloji.com/category/postname gibi düzgün yapıda olmalı. Bu konu hakkında daha detaylı bilgi almak için ilgili WordPress makalesine buradan ulaşabilirsiniz.

WordPress kurulumumuz hazırsa ağ oluşturma işlemine başlayabiliriz.

[section label=”Başlamadan Önce”]

Başlamadan Önce

Aşağıdaki işlemleri uygulamadan, her türlü ihtimale karşı dosyalarınızı, veritabanınızı, wp-config.php ve .htaccess dosyalarını mutlaka yedekleyelim.

Bu işlemi öncelikle yerelde test edip, sonrasında canlı sunucuda uygulanmasını tavsiye ederiz.

[section label=”İşlem Adımları”]

İşlem Adımları

1) Ağ oluşturmak için öncelikle wp-config.php dosyasına gerekli eklemeleri yapmalıyız. wp-config.php dosyamızı açalım ve aşağıdaki satırları dosyaya ekleyip, kaydedelim.

/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );

wp-config.php dosyasını düzenledikten sonra admin panelimize girip sayfayı yenileyelim.

2) Sayfayı yenilediğimizde “Araçlar” sekmesinde “Ağ ayarı” seçeneğinin belirdiğini göreceğiz. Bu seçeneğe tıkladığımızda yukarıdaki gibi bir ekranla karşılaşacağız. Ağ adımızı ve yönetici e-postamızı belirleyip, “Kur” butonuna tıklayalım.

3) Butona tıkladığımızda yukarıdaki gibi bir ekranla karşılaşacağız. Birinci aşamadaki bilgileri yine wp-config.php dosyasına, define( 'WP_ALLOW_MULTISITE', true); komutunun hemen altına eklemeliyiz. Yani wp-config dosyamız aşağı yukarı şu şekilde olmalı;

/* Multisite */
define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'localhost');
define('PATH_CURRENT_SITE', '/demo/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

(DOMAIN_CURRENT_SITE ve PATH_CURRENT_SITE bilgileri kurulum ortamımıza ve alan adımıza göre farklı olabilir. Buradaki bilgileri değil, admin panelimizdeki bilgileri kullanalım)

4) Bu aşamada karar vermeniz gereken önemli bir nokta var. Ağınıza ekleyeceğiniz siteler alt alan adında (subdomain) mı yoksa alt dizinde (subfolder) mi olacak? Alt alan adı kullanmak istiyorsak SUBDOMAIN_INSTALL parametresini true, alt dizin (subfolder) olarak kullanmak istiyorsak false olarak ayarlayıp, kaydedelim.

define('SUBDOMAIN_INSTALL', true);
              veya
define('SUBDOMAIN_INSTALL', false);

Yine aynı şekilde domain tercihimize göre .htaccess içeriğini de düzenlememiz gerekebilir. Eğer alt dizin (subfolder) kullanmak istiyorsak .htaccess dosyamız şu şekilde;

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]

Eğer alt alan adı (subdomain) kullanmayı tercih ediyorsak .htaccess dosyamız bu şekilde olmalı;

RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]RewriteCond %{REQUEST_FILENAME} -f [OR]RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]RewriteRule ^(wp-(content|admin|includes).) $1 [L]
RewriteRule ^(..php)$ $1 [L]RewriteRule . index.php [L]

Not: Eğer sunucunuzda ana dizinde (public_html) çalışmıyorsanız veya yerelde alt dizinde (subfolder) çalışıyorsanız RewriteBase parametresini düzenlemeniz gerekebilir.

Örneğin; localhost/demo dizini için, RewriteBase /demo/ şeklinde olmalı.

Bu konu hakkında daha detaylı bilgi almak için buradan ilgili makaleye ulaşabiliriz.

5) wp-config.php ve .htaccess dosyalarını düzenledikten sonra kaydedelim ve WordPress admin panelimize giriş yapalım.

6) Admin paneline giriş yaptığımızda ağımızın yönetim paneline erişeceğiz. Buradan ağımıza yeni site ekleyebilir veya var olan sitelerimizi düzenleyebiliriz. Öncelikle site ekleme işleminden bahsedelim.

Sol taraftaki menüden “Siteler” sekmesinden “Yeni ekle” seçeneğini seçelim. Yukarıdaki ekran ekrana ulaştığımızda site URL’ini, başlığını, dilini ve yönetici bilgilerini belirlememizi isteyecek. İsteğimize göre doldurup, “Site ekle” butonuna tıklayarak site ekleme işini gerçekleştirebiliriz.

7) Site ekleme işini tamamladığımızda “Sitelerim” seçeneğinin altında oluşturduğumuz siteyi görüntüleyebilir veya yönetim paneline erişebilirsiniz.

WordPress çoklu site ağı kullanırken dikkat etmemiz gereken bir diğer konu ise eklenti yönetimi. Yeni eklenti yükleme işini sadece ağ yönetim panelinden yapabiliyoruz. Dilediğimiz eklentiyi ağ yönetiminden ekleyebilir, isteğe bağlı olarak sitelerin yönetim panellerinden aktif edebilir veya doğrudan ana yönetim panelinden tüm sitelerinizde etkinleştirebilirsiniz.

[section label=”Son Düşünceler”]

Olabildiğince detaylı bir şekilde anlatmaya çalıştık. Her ne kadar basit bir işlem olsa da canlı sunucularda uygulamadan önce biraz pratik yapmak gerekebilir. Konu hakkında daha detaylı bilgi almak için buradan ağ oluşturma işleminin anlatıldığı resmi makaleye ulaşabilirsiniz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İlgili Makaleler

Başa dön tuşu