Posledice „čačkanja“ WP bloga

Premestili ste svoj WordPress blog, ili ste samo promenili prefiks iz podrazumevanog wp_ u nešto drugo (npr. prefiks_) iz bilo kog razloga. Osim što ste to uradili u datoteci wp_config.php, obavili ste i sve promene u MySQL bazi promenivši i prefiks u nazivima tabela. Krenuli ste da se prijavite u administratorski panel vordpresa, ali Vas umesto Kontrolne table dočekuje poruka:

You do not have sufficient permissions to access this page.

Marfi je kriv, sa sve gremlinima, zar ne? Da li je blog otišao u bespovrat? Nije, ne brinite. I za ovo postoji rešenje, i to prilično jednostavno.

Naime, nije dovoljno samo promeniti prefiks u nazivima tabela u bazi, već je potrebno izmeniti i prefiks u referencama na tabele u bazi. „Repovi“ su „ostali“ u tabelama prefiks_usermeta i prefiks_options. Ako ste koristili analogiju prilikom postavljanja prefiksa prilikom instalacije vordpresa pa prefiksu dodali donju crtu kao nastavak, onda ste na konju i par SQL upita rešiće problem. Međutim, ako ste umesto prefiks_ izabrali samo prefiks, moraćete da ceo posao obavite ručno.

Važna napomena

Pre svakog „prčkanja“ po bazi, uvek, i to pod obavezno, napravite rezervnu kopiju baze pre nego što bilo šta uradite. Razlog? Ne želite da u slučaju da nešto pođe po zlu jurcate okolo i vičete „Ujela me buva, ujela me buva!“.

Prvi korak

Prvi problem nalazi se u polju meta_key u tabeli prefiks_usermeta. Možete upotrebiti sledeći SQL upit (naravno, nakon što prilagodite zacrnjeni deo sintakse situaciji u Vašoj bazi):

UPDATE `prefiks_usermeta` SET `meta_key` = REPLACE(`meta_key`, 'wp_', 'prefiks_');

Ovde će biti ažurirani nazivi sledećih zapisa:

  • prefiks_capabilities
  • prefiks_user_level
  • prefiks_usersettings
  • prefiks_usersettingstime

Drugi korak

Drugi korak se odnosi na tabelu prefiks_options u kojoj u polju option_name treba promeniti zapis prefiks_user_roles. Ponovo, može se iskoristiti sledeći SQL upit, uz prilagođavanje zacrnjenih delova sintakse situaciji u Vašoj bazi:

UPDATE `prefiks_options` SET `option_name` = 'prefiks_user_roles'
WHERE `option_name` = 'wp_user_roles' AND `blog_id` = 0;

Muke moje niko ne zna

Ako ste se zeznuli pa prilikom instalacije vordpresa i pravljenja nove baze zadali prefiks tipa ja umesto ja_, automatizaciju SQL upitima nikako ne preporučujem, već lepo zasučite rukave i odradite pomenute izmene ručno. A drugi put, pa i taj prilikom promene prefiksa, pamet u glavu pa uvek prefiksima za tabele dodajte donju crtu, zlu ne trebalo ;)

Korisna adresa: BeConfused.

Objavljeno: 3. februar 2009. u 21:15
Piše: Aleksandar
Odeljci: Veb, Posao, Računari
Oznake: , , , , , , , , , , ,