How to

Cara Membuat WordPress Multisite (WPMU) subdomain

Cara Membuat WordPress Multisite (WPMU) subdomain Agustus 11, 201621 Comments
belajar wordpress, tutorial wordpress, cara membuat wordpress multisite, tutorial wordpress bahasa indonesia

Apa itu WordPress Multisite (WPMU)

WordPress multisite adalah satu installasi wordpress untuk banyak situs dengan menggunakan sub domain ataupun sub folder. Masing-masing anak site (Sub Site) mempunyai otoritas sendiri sendiri dalam memilih theme dan plugin yang akan digunakan. Tutorials.id merupakan salah satu contoh wordpress multisite dengan menggunakan subdomain, dan ini yang akan kita bahas disini.

Contoh lain dari WordPress multisite adalah wordpress.org yang memberikan akses pada kita untuk membuat blog sendiri dengan menggunakan subdomain namaanda.wordpress.org

Jenis WordPress Multisite

Secara umum ada 2 jenis wordpress multisite yaitu dengan menggunakan sub folder dan dengan menggunakan sub domain:

  • Menggunakan Subdomain: formatnya http://site-n.namadomain.tld. Jenis multisite dengan menggunakan subdomain seperti ini memberi anda pilihan untuk memberi akses pada orang lain untuk register dan membuat subdomain secara otomatis untuk blognya. Cara ini sangat bermanfaat untuk sebuah web sekolah ataupun web komunitas yang membolehkan anggotanya untuk membuat blog pribadi melalui web komunitasnya atau web sekolahnya.
  • Menggunakan Sub Folder: Formatnya http://namadomain.tld/site-n. Bentuk web seperti ini sebaiknya hanya dibuat dari awal instalasi wordpress, dan tidak disarankan apabila digunakan dari wordpress yang sudah ada karena saat di buat WPMU maka website sebelumnya akan crashes atau akan menghasilkan 404 Not Found.

Langkah Menjadikan WordPress kita menjadi WordPress Multisite

Lalu langkah apa saja yang harus kita lakukan agar wordpress yang sudah ada menjadi wordpress multisite? apakah harus install dari awal ataukah ada cara untuk menjadikan wordpress biasa menjadi wordpress multisite?

1. Edit File wp-config.php
Edit file wp-config.php di instalasi wordpress Anda, kemudian temukan baris berikut:

/* That's all, stop editing! Happy blogging. */

setelah Anda menemukannya, tambahkan 1 baris perintah dibawahnya:

define( 'WP_ALLOW_MULTISITE', true );

Save wp-config.php
2. Login ke Dashboard WordPress Anda untuk install Network

  1. Login ke dashboard, kemudian buka menu Tools >Network Setup. Anda akan diminta untuk memilih antara 2 jenis WPMU subdomain atau subdirectory. Karena dalam artikel ini akan dibahas yang berbentuk subdomain, maka pilih subdomain.
  2. Isi Title dari Network dan Alamat email untuk Networrk Administrator
  3. Klik Install
  4. Akan tampil halaman Network Install seperti ini:
    Cara membuat web wordpress multisite
    Sumber Gambar: https://premium.wpmudev.org
  5. Edit wp-config.php dan .htaccess sesuai perintah di layar Anda. Sebagai contoh untuk toturials.id penambahan baris perintah di .htaccess dan wp-config adalah seperti ini:

    File wp-config.php:

    define('MULTISITE', true);
    define('SUBDOMAIN_INSTALL', true);
    define('DOMAIN_CURRENT_SITE', 'www.tutorials.id');
    define('PATH_CURRENT_SITE', '/');
    define('SITE_ID_CURRENT_SITE', 1);
    define('BLOG_ID_CURRENT_SITE', 1);
    

    File .htaccess:

    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]
    
  6. Save kedua file tersebut
  7. Login kembali ke halaman dashboard / admin WordPress Andaa, dan WordPress Multi Site siap Digunakan
  8. Setting DNS

    Karena kita saat ini akan menggunakan subdomain, maka diperlukan tambahan langkah pekerjaan yaitu setting DNS. Setting DNS yang akan kita bahas ada 2 macam yaitu setting nameserver di VPS dan di cPanel (Untuk Shared Host).

    Setting Virtual Host dan Server Alias di VPS

    Untuk pengguna VPS, perlu dilakukan setting Virtual Host untuk menambahkan Server Alias dan A Record untuk masing-masing sub domain. Untuk memudahkan kita akan menggunakan wildcard (*) sebagai ServerAlias dan A record.

    1. Setting Server alias dan Virtual Host
    Untuk pengguna VPS Ubuntu, buka file /etc/apache2/sites-enabled/namavhost.conf (Ganti namavhost.conf sesuai dengan nama file virtualhost yang anda pakai). Contoh untuk tutorial.id misal tutorial-ssl.conf sebagai berikut:

    root@tutorial:~# cd /etc/apache2/sites-enabled
    root@tutorial:/etc/apache2/sites-enabled#nano tutorial-ssl.conf
    

    Setelah itu tambahkan baris berikut dibawah ServerName:

    ServerAlias *.tutorials.id
    

    sehingga script lengkapnya menjadi seperti ini:

    
    	
    		ServerName tutorials.id
    		ServerAlias *.tutorials.id
    		ServerAdmin info@humayraa.com
    
    		DocumentRoot /path/ke/webrootanda
    
    		ErrorLog ${APACHE_LOG_DIR}/error.log
    		CustomLog ${APACHE_LOG_DIR}/access.log combined
    
    		SSLEngine on
    
    		SSLCertificateFile	/etc/letsencrypt/live/tutorials.id/cert.pem
    		SSLCertificateKeyFile /etc/letsencrypt/live/tutorials.id/privkey.pem
    		SSLCertificateChainFile /etc/letsencrypt/live/tutorials.id/fullchain.pem
    
    		
    				SSLOptions +StdEnvVars
    		
    		
    				SSLOptions +StdEnvVars
    		
    
    		BrowserMatch "MSIE [2-6]" \
    				nokeepalive ssl-unclean-shutdown \
    				downgrade-1.0 force-response-1.0
    		# MSIE 7 and newer should be able to use keepalive
    		BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
    
    	
    
    

    2. Setting DNS Zone
    Jika Anda menggunakan BIND9, buka file /etc/bind/zones/db.namazoneanda, dan tambahkan:

    *  IN  A  IPvps-Anda
    

    dimana IPvps-Anda anda ganti dengan Alamat IP VPS Anda.
    Jika Anda menggunakan DNS Server diluar VPS, misal cloudflare, anda bisa masuk ke menu DNS kemudian tambahkan A record seperti di atas.

    Setting ServerAlias di cPanel

    Jika Anda pengguna Shared Host, Anda bisa juga menambahkan Server Alias melalui cPanel dengan langkah-langkah sebagai berikut:
    1. Login ke cPanel
    2. Cari Icon Alias seperti gambar dibawah ini, klik icon tersebut untuk menambahkan Alias:
    tutorial wordpress pemula, belajar wordpress, cara menambahkan alias di cpanel, cara install wordpress multisite wpmu

    2. Tulis Nama Domain Alias, kemudian klik Add Domain

    tutorial wordpress pemula, belajar wordpress, cara menambahkan alias di cpanel, cara install wordpress multisite wpmu

    3. Domain Alias berhasil ditambahkan

    tutorial wordpress pemula, belajar wordpress, cara menambahkan alias di cpanel, cara install wordpress multisite wpmu

    4. Lakukan Langkah 1 sampai 3 untuk domain Alias lainnya satu per satu. di cPanel Anda tidak bisa menambahkan wildcard seperti di VPS.

    Cara Menambahkan Site di WPMU

    Untuk menambahkan site, Terlebih dulu Anda harus Login ke dashboard Admin sebagai Network Administrator.
    1. Login ke dashboard sebagai Network Administrator
    2. Di Topbar Admin, Klik My Sites > Network Admin, sehinga muncul halaman berikut:

    tutorial wordpress pemula, cara menambahkan site di wordpress multisite

    3. Klik Create New Site

    4. Isi Alamat subdomain site yang akan dibuat, Judul / Title Site, dan email admin site tersebut kemudian klik ADD SITE.

    tutorial wordpress pemula,cara menambah site di wpmu

    Semoga Bermanfaat

    Recent search terms:

21 comments

  1. Om saya coba install wpmu di shared hosting, saat membuat wildcard subdomain (*.domain.com) foldernya di arahkan kemana? Saat saya membuat wildcard, folder defaulnya mengarah ke _wildcard_.domain.com. Nah yang benarnya itu biarkan default atau di arahkan ke public_html ya?
    Mohon jawab ya om, nanti saya kesini lg.

    1. subdomain di wpmu itu subdomain fiktif. tanpa folder seperti subdomain yang biasa dibuat di cPanel. Semua subdomain maupun domain utama mengarah ke public_html. Jika Anda membuat wpmu di cpanel shared hosting, penggunaan wildcard A record akan menghasilkan kesalahan / error. Sebaiknya gunakan domain Alias di menu ALIASES seperti yang saya jelaskan di atas.

      1. Kalau pakai VPS ubuntu + BIND9, tinggal pake wildcard alias di setting zones BIND9 untuk domain tsb sebagai berikut:

        ...
        * IN CNAME namadomain.tld
        ...
        

        Kemudian di setting v-host Apache juga sama:

        ...
        ServerName domain.tld
        ServerAlias *.domain.tld
        ...
        
    1. Bisa. Tapi harus setting domain dan subdomain dulu di file hosts. kalo Linux bisa edit /etc/hosts. Tambahkan baris:

      127.0.1.1 domain.dev www.domain.dev subdomain1.domain.dev subdomain2.domain.dev
      

      Kalo di windows, edit file C:WindowsSystem32driversetchosts (buka pake notepad dengan akses administrator)
      tambahkan baris ini:

      127.0.1.1 domain.dev
      127.0.1.1 subdomain1.domain.dev
      127.0.1.1 subdomain2.domain.dev
      127.0.1.1 www.domain.dev
      

      Setelah itu, set virtual host. Kalau pake XAMP, edit file v-host.conf
      Kalo di linux, buat file domain.dev.conf di /etc/apache2/sites-available, kemudian aktifkan dengan perintah a2ensite domain.dev

  2. Bang mau tanya nih, mungkin ini oot tapi kata kunci saya mengarah kesini, hehehe..

    Pertanyaannya, cara menampilkan recent post kategori dari situs lain tau gak caranya?

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *