Címke: ‘megoldás’

Tagsági rendszer bővítmény és a WordPress együttes frissítése

A minap a következő feladattal néztem szembe:
Adott volt egy WordPress 2.9.2-es rendszer, amelyen volt egy User Access Manager (klikkre eljuthatsz a róla készült 33 perces videóhoz) 0.9.1.3-es verziójával működtetett tagsági rendszer.

Feladat:
Mindkettőt frissíteni úgy, hogy tökéletesen működjön minden.

A feladat nem volt egyszerű, több okból sem:

  • A WordPress már a 3.5.1-es (+23 verzió) verziónál jár, míg a tagsági rendszer már az 1.2.2-nél (+14 verzió). Ekkora verziókülönbségnél fokozottan kell figyelni a kompatibilitásra, hiszen korántsem garantált az, hogy ami 2-3 éve működött egy bizonyos párosításban, az most is működni fog.
  • A tagsági rendszer nem állhatott le, legfőképpen nem omolhatott össze, mert az azt eredményezte volna, hogy tagság nélkül is meg tudták volna nézni a látogatók a zárt tartalmakat.

Melyek voltak a megoldáshoz vezető lépések?

  1. Teljes biztonsági mentés a weboldalról. Erre azért van szükség, hogyha bármi balul sülne el, vissza tudjuk állítani az eredeti verziót. Valamint a következő pont miatt is.
  2. A biztonsági mentésből egy tesztoldal létrehozása egy másik domain alatt, másik adatbázissal. Így elértük, hogy van egy – az eredetivel mindenben megegyező – tesztfelületünk, azaz bármilyen kockázat nélkül tudunk kísérletezni.
  3. Először a WordPress-t frissítettem 2.9.2-ről 3.5.1-re. Ez gond nélkül ment.
  4. Utána frissítettem a tagsági rendszert kiszolgáló bővítményt, ám itt beütött a krach: a tagsági rendszer leállt, minden tartalom nyilvánossá vált. Milyen jó, hogy nem az éles oldalon csináltam!
  5. Összehasonlítottam az eredeti weboldalhoz tartozó adatbázisban a tagsági rendszer tábláit, a teszt oldal azonos részeivel, és a következőt láttam: Nem ugyanolyan a táblaszerkezet a két helyen! Ezért az összeomlás. A régi beállításokat nem tudta kezelni a bővítmény a frissítés után, mivel azok már teljesen máshogy (kevesebb táblában is) tárolódtak az adatbázisban. Innentől lesz bonyolult a megoldás.
  6. Feltettem egy bővítményt, amely azt a célt szolgálja, hogy csak bejelentkezett felhasználók láthassák a weboldalt. Erre a tesztoldalon nem lett volna szükség, ám így ténylegesen tudtam szimulálni az eredeti oldalon szükséges lépéseket. Erre azért lesz szükség, hogy a tagsági rendszer kikapcsolása miatt “külsősök” ne férhessenek hozzá a védett tartalmakhoz. Így ideiglenesen csak a regisztrált tagok látják a tartalmakat, igaz ők jogkör nélkül mindent.
  7. Töröltem az összes, a bővítményhez tartozó táblát az adatbázisból.
  8. Töröltem magát a tagsági rendszeres bővítményt is.
  9. Újratelepítettem a bővítmény legfrissebb verzióját.
  10. Újra létrehoztam a különféle jogköröket, felhasználói csoportokat.
  11. A felhasználókat egyesével be kellett sorolni az őket megillető jogosultsági szintekbe.
  12. Mivel eredetileg úgy voltak kialakítva a jogkörök, hogy egy-egy kategóriába tartozó bejegyzések megtekintése volt egy-egy jogkör meglétéhez kötve, ezért ezeket a kategóriákat ismét össze kellett kötni a tagsági rendszerrel.
  13. Itt felmerült egy újabb gond: a kategóriáknál van egy alapértelmezett kategória, amelyet nem lehet törölni, csak átnevezni. Az egyik jogkör úgy volt kialakítva, hogy ehhez a kategóriához tartozó bejegyzéseket lehetett megtekinteni vele. Itt egy olyan érdekes hiba jött elő, hogyha beállítottam, hogy ezt a kategóriát csak azzal a bizonyos jogkörrel rendelkező felhasználók nézhetik meg, akkor az összes oldal is zárolva lett, holott ez nem volt célom. Ezt a problémát úgy hárítottam el, hogy ezt a kategóriát újra létrehoztam, majd ezt az újonnan létrehozott kategóriát soroltam be az egyik jogkör alá. Természetesen a régi kategóriából át kellett sorolni a tartalmakat az újonnan létrehozott alá.
  14. Miután minden működött, a fenti lépéseket el lehetett végezni az éles weboldalon is!

Tanulság: biztonsági mentés nélkül még egy bővítményt se frissíts!!!

Eddig működött! / Pedig azt csináltam…

Gyakran kapok a következők valamelyikéhez hasonló e-mailt, telefont. A megoldás pedig általában egyszerű az alábbi problémákra! A megoldások általános leírások, természetesen csak a probléma pontos leírását ismerve lehet a ténylegesen szükséges megoldást megmondani, de a leggyakoribb 2 megoldás az alábbi kettő:

Megkeresés-minta 1.:

“Eddig működött, én nem csináltam semmit! Most miért nem működik?”

  • Első lehetőség, hogy a tárhelyen történt valami változás (pl. verziófrissítés). Erről a tárhelyszolgáltatód tud felvilágosítást adni.
  • Második lehetőség, hogy egy WordPress bővítményed összeakadt egy másikkal és/vagy a kinézettel. Ebben az esetben nem kell mást tenni, mint kikapcsolni az összes használt bővítményt. Ezután a hiba valószínűleg megszűnik. Majd egy bővítményt be kell kapcsolni, és a weboldalon ellenőrizni kell, hogy a hiba előjött-e ismét? Ha nem, akkor a következő bővítményt is be lehet kapcsolni. Ezután megint ellenőrizni kell, majd így lehet folytatni a bővítmények bekapcsolását – hiba meglétének ellenőrzését, addig, amíg a hiba elő nem jön. Amikor a hiba előkerül, máris tudjuk, hogy mi okozta a hibát, az utoljára bekapcsolt bővítmény, hiszen annak bekapcsolása előtt nem volt hibás a weboldal.
  • Harmadik lehetőség, hogy márpedig csináltál valamit :) Ha nem emlékszel rá, hogy mit, akkor tovább tart a hiba okának megkeresése. Bár azért nagyon sok esetben a hiba jellegéből, és a rutinomból kifolyólag gyorsan megtalálom a hibát.

Megkeresés-minta 2.:

“Azt csináltam, amit írtál/mondtál, mégsem látom a változást!”

  • Valószínűleg a böngésződ gyorsítótárából (olyan “tároló” amely a gyorsabb oldalbetöltődés érdekében raktározza a weboldalak egyes elemeit) nem “ürült ki” az előző verzió. A CTRL+F5 billentyűkombináció olyan módon tölti újra az oldaladat, hogy nem használja fel a böngésződ gyorsítótárát. Ha nagyon nem látszik a változás, akkor meg lehet próbálni másik számítógépen, vagy másik böngészővel, esetleg a teljes internetezési előzményt is ki lehet törölni, hogy semmi ne zavarjon be.

Új project bevezetése – %-os megjelenítésben

Van egy futó projected, és szeretnéd automatizálni annak a megjelenését, hogy mennyi ideig tart még a project?

Vagy termékbevezetésre készülsz, és szeretnéd tudatni az olvasóiddal, hogy mikorra várhatják az új termékedet?

Itt a megoldás!


Jelszóval védett tartalomrészletek!

Egy-egy tartalomrészletet szeretnél eltakarni a kíváncsi szemek elől, és azt szeretnéd, hogy csak egy jelszó beírása után lehessen megtekinteni? Íme a megoldás!


WordPress hibaüzenet (és megoldás): Hiba történt az üzenetküldés során…

A Contact Form 7 bővítményt (e-mail küldő űrlapok készítésére használható) használva előfordulhat az alábbi hibajelenség, amely a küldendő e-mail sikertelenségével párosul:


Failed to send your message. Please try later or contact administrator by another method.

Hiba történt az üzenetküldés során. A küldést később próbálja meg ismételten, amennyiben az is sikertelen, küldjön egy emailt a rendszergazdának.

A megoldásról egy rövid videó:


WordPress hibaüzenet (és megoldás): feltöltési hiba egy hiba következtében: Hiányzó munkakönyvtár

A tegnapi, Couldn’t connect to database server.Couldn’t find database magical_rules. – című cikkhez hasonlóan ma is egy olyan WordPress hibaüzenetet (megoldással együtt) mutatok be, amivel egy Ügyfélmunka során találkoztam.

A következő volt a hibajelenség:
nem tudtam képet feltölteni, illetve nem tudtam bővítményt frissíteni. Ez a hibaüzenet fogadott: Fájlfeltöltésnél: “feltöltési hiba egy hiba következtében Hiányzó munkakönyvtár”, illetve bővítmény frissítésnél: “Sikertelen letöltés. A fájl fogadására megjelölt célkönyvtár nem létezik, vagy nem írható.”. Mivel ilyennel még soha nem találkoztam, ezért elkezdtem utánanézni a Google segítségével, hogy mi is lehet a hiba oka, és azt hogyan tudom orvosolni.

Megoldás:
A WordPress fájljaival megegyező könyvtárban (tehát ahol a wp-admin, wp-content és wp-includes mappák is vannak) létre kell hozni egy “tmp” nevű mappát, és ennek CHMOD 777 paranccsal írási jogot kell adni. A tmp mappa azért kell, mert a feltöltés előtt ideiglenesen ott tárolódnak a fájlok, az írási jog pedig azért kell, hogy egyáltalán tárolódhassanak ott a fájlok, azaz a fájlok be tudjanak kerülni a tmp mappába.

Hogyan kell lefuttatni a CHMOD 777 parancsot? (pl.)

  1. Total Commanderrel csatlakozz FTP-n a tárhelyhez.
  2. Jelöld ki a tmp mappát.
  3. Kattints a Total Commanderen belül a “Fájl” => “Attribútumok módosítása” menüpontra. A fenti képen látható helyre írd be ezt: 777, majd nyomd meg az OK gombot!

WordPress hibaüzenet (és megoldás): Couldn’t connect to database server.Couldn’t find database magical_rules…

Egyik kedves Ügyfelem keresett meg a következő problémával: Telepített egy WordPress-t, és a következő hibaüzenetet kapta a weboldal tetején:

“Couldn’t connect to database server.Couldn’t find database magical_rules.An unexpected problem has occured wift the appliacation.

SELECT statscurl_id FROM ’statscurl’ WHERE statscurl_ip = “,”


Utánanéztem a hibának, és végül sikerült megtalálni a hiba forrását, és a megoldást. Utólag visszagondolva pofonegyszerű a megoldás! :)

Az fenti képen pirossal bekeretezett kódrészlet okozta a hibát, amelyet a használt kinézet header.php fájljában találtam meg. A hibajelenség megszüntetésére két mód van:

  1. Vagy törlöd a pirossal bekeretezett részt a forráskódból, vagy…
  2. … az ún. html komment funkcióval “kikommenteled” a forráskódból. Ezt úgy tudod megtenni, ha a kérdéses kódrészlet elé ezt írod be: “<–”, majd a kódrészlet mögé ezt: “–>”. Majd menteni kell a módosított fájlt. Ezzel a megoldással ugyan nem törölted a forráskódból a hibát generáló kódrészletet, ám mivel a weboldal betöltődésekor a böngésző nem veszi figyelembe a <!– és –> karaktersorozatok között található részeket, ezért a hibaüzenetet így is el lehet tüntetni!

WordPress 3.2.1 frissítés probléma, és megoldása VIDEÓN!

Többen jeleztétek, illetve a neten is olvastam, hogy az automata frissítésnél gondok vannak, nem megy olyan simán minden esetben, hogy a legfrissebb, WordPress 3.2.1 dübörögjön a weboldal alatt.

A lehetséges hibák közül a leggyakoribbak:

  • Nem történik semmi.
  • Nagyon lassú a folyamat.
  • Szétcsúszik az admin felület.
  • Fehér lesz az admin felület, így nem lehet szerkeszteni a weboldalt frissítés után.

Megoldás: Manuális frissítés! Nem kell megijedni tőle! Miért nem? Két oka is van:

  1. Ha van backupod, vissza tudod tölteni az eredeti állapotot.
  2. Itt egy videó, amin megmutatom, hogy hogyan kell csinálni, lépésről-lépésre. Persze nem fogom elmagyarázni (minden lépésről van külön-külön videó a videós tudásbázisban, a zárt tagsági oldalon), hogy hogyan csatlakozok FTP-n a tárhelyhez, csak megmutatom a lépéseket. Ha valaki ezekkel az alapfogalmakkal nincs tisztában, akkor nem javaslom, hogy nekiálljon a manuális frissítésnek! Ebben az esetben keress meg, és megegyezünk, hogy milyen feltételekkel tudom vállalni a frissítést!

Táblázat beszúrása WordPress oldalakra

Gyakori kérdés felém a következő is: Hogyan tudok táblázatot beszúrni a WordPress weboldalamra? Mutatok két megoldást is:

Első (gyors, és egyszerű, bár kevesebb funkciójú) megoldás:

Bővítménnyel:
Easy Table Creator By PolyVision plugin: http://wordpress.org/extend/plugins/easy-table-creator/. Fel kell telepíteni, utána a szerkesztőfelületen megjelenik egy táblázat beszúrás gomb, amellyel már könnyedén lehet táblázatot beszúrni.

A másik megoldás:

Forráskód átemeléssel:
Nem kell megijedni a forráskód szótól, nem lesz nehéz! :) Lépései:

  1. Meg kell nyitni ezt az oldalt: http://ckeditor.com/demo
  2. Ki kell törölni mindent az ott látott szerkesztőből.
  3. Rá kell kattintani a táblázat beszúrása gombra.
  4. Meg kell szerkeszteni a táblázatot, ki kell tölteni az oszlopokat és a sorokat, meg kell formázni a tartalmat.
  5. Még mindig a http://ckeditor.com/demo oldalon vagyunk. Meg kell nyomni a forráskód gombot.
  6. A “<table” résztől a “</table>” részig bezárólag ki kell jelölni a forráskódot.
  7. Vissza kell menni a WordPress bejegyzés/oldal szerkesztőjébe, és ott át kell váltani html módra.
  8. Ki kell keresni a cikk vagy oldal azon részét, ahol a táblázatot meg szeretnéd jeleníteni. Oda kell bemásolni a 6. pontban kijelölt és vágólapra helyezett forráskódot.
  9. Nincs más hátra, mint közzétenni a cikket/oldalt, és immáron benne is van a táblázat! :)