Jak wyłączyć sieć WordPress MultiSite?

Dzisiaj postanowiłem napisać krótką poradę dotycząca likwidacji sieci WordPress MultiSite, czyli przywracania WP MS do podstawowego trybu WordPressa.

WordPress MultiSite

Oczywiście najczęściej ludzie pytają, jak stworzyć sieci MultiSite, ale takich poradników jest pełno w sieci.

Czasem jednak ktoś rezygnuje z sieci, bo np. odpalił ją jedynie testowo, a potem usunął wszystkie sub-blogi i teraz została mu jedynie denerwująca nakładka WP MultiSite, przez którą wiele czynności wymaga dodatkowych kliknięć :)

Problem może wydać się dla części Szanownych Czytelników trywialny, ale ostatnie tygodnie pokazały, że wiele osób może mieć z tym problem. Tak więc, aby już więcej nie przedłużać – przechodzimy do konkretów…

Całość możemy podzielić na 5 etapów:

I etap: robimy backup bazy!

To niby oczywista-oczywistość, ale wiele osób o tym zapomina.

II etap: usuwamy zbędne wpisy z pliku wp-config.php

Poniżej podaję przykładowe wpisy, które należy usunąć:

define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'twoja_strona.pl');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

III etap: modyfikujemy .htaccess

Tutaj w zasadzie mamy dwie możliwości:

  1. możemy bawić się w usuwanie zbędnych elementów
  2. możemy usunąć cały plik .htaccess i wygenerować go od nowa w Ustawienia -> Bezpośrednie odnośniki (opcja jedynie w przypadku, gdy nie dodawaliśmy nic od siebie do tego pliku – 90% sytuacji)

Jeśli postanawiamy wybrać jednak opcję nr 1. to musimy poniższy fragment:

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

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]

uprościć do:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

IV etap: usuwamy dwie kolumny z tabeli użytkowników (np. wp_users)

Kolumnami tabeli wp_users, które związane są z WordPress MultiSite i nie będą nam już potrzebne są: deletedspam.

Aby je usunąć należy:

  • wejść do naszej bazy przez phpMyAdmin
  • odnaleźć odpowiednią tabelę twojprefix_users
  • przejść do trybu/widoku Struktura
  • zaznaczyć niepotrzebne kolumny i wybrać Usuń

V etap: usuwamy zbędne tabele z naszej bazy danych

Oczywiście każdy może mieć inny prefix, ale poniżej zaprezentuję listę tabel do usunięcia ze standardowym prefiksem wp_:

  • wp_blogs
  • wp_blog_versions
  • wp_registration_log
  • wp_site
  • wp_sitemeta
  • wp_signups
  • wp_sitecategories (ta tabela nie będzie występować we wszystkich instancjach WP MS)

Tada! Od tej chwili nasza instalacja WordPressa przestała być siecią typu WordPress MultiSite.


Opublikowano

w

przez

Tagi:

Komentarze

2 odpowiedzi na „Jak wyłączyć sieć WordPress MultiSite?”

  1. Awatar Anna - Cal.pl
    Anna – Cal.pl

    Bardzo praktyczny wpis. Internauci często pytają o to, w jaki sposób dokonać likwidacji sieci WordPress MultiSite. Czekamy na więcej porad, które przydadzą się na co dzień :)

  2. Awatar Usunięcie wp

    „Czasem jednak ktoś rezygnuje z sieci, bo np. odpalił ją jedynie testowo”

    Albo nie może zainstalować strony z osobną domeną.

    >>>robimy backup bazy!

    a jak to zrobić?