Jelszóval védett tartalom (esti update) – alternatív szöveg megjelenítése

Az alternatív szöveg megadására tehát két lehetőségünk van: vagy beleírjuk az oldal sablonjának kódjába, vagy minden egyes védett oldalhoz írhatunk testreszabott üzenetet.

Az első lehetőség elég egyszerű: megvizsgáljuk, hogy az adott felhasználó be van-e jelentkezve, ha igen, akkor lefut a postokat megjelenítő Loop, ha nem, egy üzenetet kapunk, hogy tessék bejelentkezni. Ez így fog valahogy kinézni:


<?php get_header(); ?>
<?php if_user_logged_in() : ?> (ha be van jelentkezve, akkor a következő fog történni:)
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>
<div class="entry">
<?php the_content(); ?> (és a tartalom csicsázása – cím, dátum stb.)
</div>
<?php endwhile; ?><?php endif; ?> (eddig volt a tartalom megjelenítése)
<?php else : ?> (és ha nincs bejelentkezve)
<p>Jelentkezz be kérlek!</p> (vagy valami ilyesmi)
<?php endif; ?>

A másik lehetőség pedig hogy az egyes tartalmakhoz odaírjuk, hogy mi legyen az alternatív szöveg. Mondjuk egy rövid ismertető az adott tartalomról, és egy buzdítás a regelésre vagy egy határozott “Nekedehhezsajnossemmiközöd” szöveg (amelyet a Megjegyzés kivonatba írjuk bele), persze finomabban:


<?php if_user_logged_in() : ?>
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>
<div class="entry">
<?php the_content(); ?>
</div>
<?php endwhile; ?><?php endif; ?>
<?php else : ?>
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>
<div class="entry" ><?php the_excerpt(); ?></div>
<?php endwhile; ?><?php else : ?>
<?php endif; ?> (és itt a mese vége)

Arról pedig legközelebb lesz szó, hogy voltaképpen hogyan is kerülnek a megfelelő helyre a tartalmak (azaz, hogy ne az egész portálunkat listázza ki a fenti kód, hanem csak azokat, amiket tényleg kell).

És miért nem szóltatok, hogy az előző bejegyzésben baromságot írtam?…

Jelszóval védett tartalom

Egy szösszenet a Mamut egyik kávézójából, a sorozathoz:

Ha bejelentkezéshez kötött statikus tartalmat akarunk létrehozni, akkor két elvi lehetőség nyílik: egyrészt az oldalsablonba beágyazunk egy konstans szöveget, pl.

“A tartalom megtekintéséhez regisztrálj és jelentkezz be!”

A másik, hogy az excerpt-be (Megjegyzés kivonat ungarisül) beírjuk a kívánt szöveget (ld fentebb). Ezek után az oldal szerkesztőfelületébe bepakoljuk a kívánt tartalmat (esetemben az adatbázisok hozzáférését, mert úgy szólt a döntés, hogy csak a hallgatók és az oktatók lássák – erről még később lesz szó), és elmentjük.

Mindkét esetben bele kell nyúlni a sablonba, az egyik verzió, hogy a fentebb beírt szöveget tesszük láthatóvá bejelentkezés nélkül, a másik, hogy az excpert-et. A lényeg meg így néz ki:

< ?php get_header(); ? >

Ide jön az excerpt, ill. a kívánt felszólítás szövege. Rögtön utána pedig:

< ?php if(is_user_logged_in()) : ? >

És maga a tartalom, amit a fő beviteli mezőbe írtunk bele, jól. (Update: ez hülyeség volt.)

Most ennyi, este alaposabban körüljárom a kérdést.

Screenshot

A portálépítgetés megy. Legutoljára azt magyaráztam, hogy hogyan lehet a Corvinás keresőfelületet belepakolni gyorsan a lapunkba, azóta pedig a kezdőlapot csiszolgattam. Szétosztottam négy nagyobb körbe az egyes lehetőségeket, azt szépen elneveztem, és egy oszlpoba rendeztem, majd az egészet táblázat-szerűen elhelyztem a statikus kezdőlapon, amire a WP 2.2 már nagyon alkalmas, a Beállítások > Olvasás oldalon lehet szórakozni. A legegyszerűbb létrehozni egy home.php nevű lap-sablont (emlékszünk? előző bejegyzés…), majd ezt alakítgatni.

A szerűt azért emeltem ki, mert jómunkásember nem használt táblázatot tartalomigazításhoz (bár erről vannak más vélemények is…), csak dobozokat (alias <div>). Nos, ez nekem mindig munka, hogy újra és újra rájöjjek, hogyan lehet 2x2es felületet létrehozni. Az egyszerűség kedvéért itt most rögzítem.

Tehát, először csináljuk meg a Nagy divet, aztán a két sornak is egyet-egyet, aztán, ha több elemet (listát, bekezdést, blokkot stb.) akarunk rakni egy hasábba, akkor azoknak is egyet. Ez azt jelenti hogy 7 darabot kell megcsinálni, valahogy így:

<div id="kezdolap">
<div id="felso">
<div class="felso_bal"></div>
<div class="felso_jobb"></div>
</div>
<div id="also">
<div class="also_bal"></div>
<div class="also_jobb"></div>
</div>
</div>

Ezt pedig formázzuk be most. A bal oldaliak ellebegnak balra, a jobb oldaliak pedig jobbra, valamint, ha különböző mennyiségű tartalmat teszünk bele, akkor érdemes megadni egy fix magasságot is, mondjuk 200 pixel. Ez CSS-ben így néz ki:

.felso_bal, .also_bal { float: left; height: 200px; }
.felso_jobb, .also_jobb { float: right; height: 200px; }

Gyakorlatilag ennyi. Én még annyit bolondítottam rajta, hogy az egyes blokkok címe mellé raktam egy ikont, amit úgy értem el, hogy <h2> címsor taggel emeltem ki a címet (pl. Hírek), majd a CSS-ben beállítottam, hogy a háttérben jelenjen meg az ikon, balra csúsztatva. Érdemes átlátszó hátterű ikonokat használni (ezt tudja a PNG és a GIF kiterjesztés is), mert így szép hatást lehet elérni színes háttérrel is, ennek “pusztán” annyi a hátulütőja, hogy az Explorer nem tudja kezelni, hanem szürke hátteret pakol be. Állítólag van rá megoldás, én működővel még nem találkoztam. És akkor ez így néz ki:

.felso_bal h2 {background: url(http://a_kep_urlje/kep_cime.png) no-repeat left; padding: 10px 0px 0px 35px;}

momek printscreenÉs így a másik hárommal is. A background állítja be a háttér tulajdonságait, amelyben megadjuk a kép helyét, azt hogy ne ismétlődjék (ezt meg tudja tenni függőleges – x-repeat – és vízszintes – y-repeat – irányban is, amíg ki nem tölti az adott blokk hátterét), valamint hogy a tartalomhoz képest balra lebegtesse (azaz jobbra fussa körül a szöveg), végül pedig a felső és a jobboldali szegélyét állítottuk olyan vastagra, hogy ne folyjon egymásra kép és szöveg.

Az meg már csak egy kósza ötlet volt, hogy az olvasót előre tájékoztassuk, hogy mit talál adott oldalon. Erre ugye van a title="link címe" megoldás, amit elegánsabb megoldással ki is vetíthetünk a linkek mellé egy JavaScript segítségével.

Legközelebb itt folytatom, addig is egy printscreen a kezdőlapról.

Integrálj Corvinát WordPress-be!

Az tuti, hogy katalógus kell egy könyvtári honlapra, ha fene fenét eszik is. Nos, ezt meglehet úgy csinálni, hogy csak belinkeljük az OPAC-ot, aztán kész. Na de mi van, ha én azt szeretném, hogy alapból a honlapon lehessen keresni, egy integrált formban, ami kinézetileg is olyan, amilyennek én szeretném? Nos, erre lehet megoldás a következő művelet.

Kell elsőként hozzá a Corvina-rendszer URL-je, ami legtöbbször úgy néz ki, hogy http://corvina.intezmenydomain.hu (ebben azért annyira nem vagyok biztos, nekünk így néz ki). Emellett pedig, hogy megcsináljuk a WordPress HowTo-t, ami után tudjuk, hogyan lehet létrehozni egy statikus WordPress-oldalt (single.php). Mármint úgy kockásan, forráskódilag (annyiban gömbölyded a téma, hogy WordPress “kódilag”). Ha ezzel tisztában vagyunk, akkor már csak annyi van hátra, hogy ennek a leírásnak az alapján létrehozzunk egy oldal-sablont. Ez a következőképpen néz ki:

Hozzunk létre egy szöveges fájlt, mondjuk katalogus.php néven. A fájl elejébe kerüljön egy következőképpen kinéző dolog:

<?php
/*
Template Name: Katalógus
*/
?>

Innen fogja tudni a WordPress, hogy ez egy oldal sablonja. Ezután másoljuk bele a single.php tartalmát, amit gyakorlatilag ki is törlünk rögtön, vagy írjuk bele a következőt:

<?php get_header(); ?> (- hogy meglegyen a fejléc)
<div id="katalogus"> (- hogy kedvünkre formázhassuk)
( – ide jön majd a keresőfelület)
</div> (- a formázó doboz vége)
<?php get_sidebar(); ?> (- az oldalsáv, ami talán jó, ha itt is van, de nem muszály)
<?php get_footer(); ?> (- a lábléc, ez érdemes)
</div>; (- az egész tartalmat formázó doboz vég, a fejlécben kezdődik)
</body>
</html>

Ezek után mentsük el, és nyissuk meg a katalógusunk keresőfelületét. A böngésző menüsorában a Firefoxosok a Nézet > Oldal forrása (ctrl+u), az IExploreresek a Nézet > Forrás pontra kattinta kapják meg a forráskódot. Ebben keressük meg a magára az űrlapra vonatkozó részt (nálunk ez úgy néz ki, hogy egymás után van sok tábla, az első pár a fejlécet és különböző dizájnelemeket tartalmaz, ezek után kell megkeresni azt, amelyben szerepel ez a bűvös sor:

<FORM ACTION=wpac.cgi method=post>

Ha ez megvan, akkor az ezt tartalmazó, és ezt követő táblázatokat másoljuk át egy-az-egyben a katalogus.php vonatkozó részébe (hátom pont helyére). Ezek után már csak pont a kiemelt sot kell buherálni, a wpac.cgi helyére írjuk be a teljes URL-t, azaz esetemben azt, hogy http://corvina.mome.hu/corvina/opac/wpac.cgi.

Már csak annyi maradt hátra, hogy létrehozzunk egy oldalt (Írás > Oldal), amibe nem kell írni semmit, csak jobb oldalt válasszuk ki az Oldal sablon pontban a Katalógust.

Itt tulajdonképpen hátra lehene már dőlni, de azért legyünk kicsit maximalistábbak. Nekem pl. böki a csőrömet az a fene sok tábla, sokkal szebb lenne dobozolva (<div>...</div>) a dolog, valamint eléggé valószínűtlen, hogy egy 800px széles oldalsávos lapot nem vág szét kapásból az űrlap, ezért érdemes a CSS-sel is bajlódni (a fenti tutoriál után már nem lehet ez nehéz dolog…).

Ezt a mintát követve egyébként lehet gyorskeresést is létrehozni az oldalsávban, természetesen redukált opciókkal, mert különben túl nagy lesz.

A baj az, hogy a többi IKR-t nem ismerem, nem használom annyit és olyan szinten, hogy ezt tudjam. Nagyon megköszönném, ha a kommentekbe leírnátok ez irányú tapasztalatotokat, ötleteiteket, tanácsaitokat, hogy minél többet lehessen belőlük tanulni…

És még egy TODO a végére:

  • az OPAC kimenetének módosítása – oldalon belüli listázás

Megjegyzés: persze ez nem azt jelenti, hogy ez annyira WordPress-specifikus lenne, ezt gyakorlatilag bárhol meg lehet csinálni…Ráadásul ez nem is integráció volt, csak egy keresőfelület, mindegy. Azoktól, akik idáig elolvasták, bocsánatot kérek ; )

Tipp: nekem nem tetszik, hogy ott van a Corvina copyrightja, jó vastagon az űrlap alatt, letettem láblécbe, viszont csak akkor jelenik meg, ha a katalógusra vagyunk kíváncsiak. Ezt a következő kódrészlettel értem el:

<?php if(is_page('katalogus')) { ?> (- ha a katalogus nevű oldalsablon van éppen képernyőn – .php kiterjesztés nélkül, kisbetűvel, ékezetmentesen)
Corvina WWW Gateway v3.0 © 1998-2001 <a href="http://www.dataware.hu" target="_blank"> debis IT Services Dataware Kft.</a> (- akkor jön a Corvina copyrightja)
<?php }; ?> (- egy feltételt még PHPban is illik lezárni)

Ennyi. Ezek után teljes lelkinyugalommal töröltem az eredeti copyrightot.

Pofozgatás

Eddig tehát telepítettünk egy WordPress blogot, majd a kész alapra elkezdtünk tervezgetni. Azért ez a sorrend, mert így jobban láthatóak a lehetőségek, meg nekem ilyen az eszem járása. Mielőtt nekifogunk a post olvasásához, játsszunk kicsit a bloggal, írjunk próbabejegyzéseket, próbakommenteket, -kategóriákat stb. Ez még később is hasznunkra lehet, ha látni akarjuk építés közben, hogyan is fogunk kinézni. Természetesen ezeket később törölhetjük.

Most, ha mindezzel megvagyunk, nézzük, mit tudunk tenni egy ilyen blogmotorral. Ide fog kelleni nekünk az angol nyelvtudás, ugyanis van egy zseniáls sorozat, So you want to create WordPress themes huh? címmel. Ez kell nekünk, ugyanis minden utolsó kis pontosvesszőt elmagyaráz az író, így nulla PHP, HTML és CSS tudással is tudunk létrehozni teljesen saját sablont a 25 (igazából 16, több részre felbontva) lecke során (egyik sem tart fél óránál tovább, de inkább 10-15 percesek…).

Ebben a bejegyzésben most gyorsan végigveszem ezt a 16 pontot. Végigkövetése és megcsinálása nem tart tovább egy könnyed esténél.

  1. Először az alap szabályokat sajátítjuk el. Mindent taget le kell zárni, úgy bizony, mert akkor kapunk szép, valid, azaz szabványos kódot. Az, hogy soronként plusz 4-5 karaktert írunk le, nagyon-nagyoion sok olvasónk dolgát könnyít meg. A második alapszabály, hogy minden sablon minimum két fájlból áll: index.php és style.css. Ezen kívül még 12 fájlunk lesz, ha mindent akarunk használni, de ez nem probléma, majd szépen lassan kialakul. A Lingo részben megismerkedünk az alapvető blog-szakszókinccsel (5 darab), ezután pedig a WordPress fájl-hierarchiával.
  2. A második leckében az egyes fájlok konkrét funkciójával ismerkedünk meg.
  3. A harmadik már mélyvíz, elkezdjük építeni az index.php fájlunkat. Mivel a lecke saját gépen működő szervert feltételez (aki biztosra akar menni, az csinálhatja így, de talán nincs most erre szükség), ezért mi hagyjuk figyelmen kívül az XAMPP-pal foglalkozó részeket, de ez persze gusztus dolga. Kreáljunk egy index.php-t és egy style.css-t, és az elsőbe másoljuk be a postban található index.txt tartalmát, ami a fejlécet tartalmazza. Ezek után ennek a metaadatokat tartalmazó fejlécet vesszük sorra, elemenként, hogy mi mit jelent. Ezek után töltsük a helyére (http://blogomcime.hu/wp-content/themes/), és nézzük meg a kezelőfelületen a Megjelenés > Sablonok fülön, hogy jé, hát ott van.
  4. Miután megvannak a metaadatok a helyükön vannak, készítsük el a blogunk fejlécét, avagy címsorát.
  5. Folytatásképpen alakítsuk tovább a fejlécet, linkeljünk, csicsázzunk.
  6. Hatodik lépésként hozzuk létre a WordPress lelkét, a Loop-ot. Szó szerint hurkot jelent, ez jeleníti meg a postokat. Érdemes azt a fejezetet nagyon-nagyon lelkiismereten végigolvasni, ugyanis ennek alapos ismerete szinte korlátlan lehetőségeket ad majd kezünkbe.
  7. Ha megvan a Loop, oldjuk meg, hogy tartalom is legyen benne. Ehhez írjuk be a megfelelő kódokat, és formázzuk meg úgy, hogy később szabadon tudjuk kezelni a kinézetét.
  8. Következőként az egyes bejegyzések metaadatait (dátum, szerző, kategória) is jelenítsük meg.
  9. Így létrehoztuk a bejegyzések megjelenítését, már csak azt kell megadni, hogy mi történjék, ha ne adj isten olyat keres valaki, ami nincs is a blogunkban, valamint aggassunk minden bejegyzésünkre sorszámozott címkéket, így akár egyéni megjelenést is biztosíthatunk az egyes bejegyzéseknek (pl az első kiemelése stb.).
  10. Ezek után az egyes bejegyzések és oldalak közti navigációt (előre-hátra, fel-le, jobbra-balra, kinek mi a szíve vágya) oldjuk meg.
  11. A következő nagy lépés az oldalsáv létrehozása, amiben a tartalmat nem képző, kiegészítő funkciók kaphatnak helyet, illetve a visszakeresést segítő kategóriák listája.
  12. Emellett érdemes kirakni a statikus lapok listáját is, akár hierachikusan is megjelenítve.
  13. Már csak az archívum és a linklista hiányzik (ezt errefelé Blogrollnak hívják, de én speciel nem ragaszkodom az elnevezéshez)…
  14. Kis apróságként még hozzácsapjuk a keresést (alapvető!), valamint a naptárat, ami gyakorlatilag az archívum táblázatos megjelenítése. Saját megunkat pedig azzal segíthetjük meg, ha környezetfüggő admin-menüt is pakolunk bele az oldalsávba (azaz, ha be vagyunk jelentkezve, az Admin-felületre rak ki linket, ha nem, a bejelentkező-oldalhoz).
  15. Hab a tortánt, hogy az oldalsávba válogathatunk a hatalmas fejlesztőtábor által előállított widgetek (eszközök?) közül. Ehhez kell még egy csöpp kis munka.
  16. Leértünk a lap aljára: a láblécet is létrehozzuk.
  17. Ha elértünk idáig, nézzük meg, hogy szabványos-e az, amit csináltunk (azt hiszem, nem lövök le semmit, ha elárulom, hogy ha nem nyúltunk mellé nagyon, akkor szabványos…).
  18. Ezek után a kész vázat, ami lássuk be, csúnyácska, nem is kicsit, bár van aki így is szereti, gyúrjuk meg. Erre való a CSS (Cascading Style Sheet – lépcsős stíluslap). Ne ijedjünk meg, továbbra is el lesz magyarázva, miért nyomunk le minden egyes gombot. Nem lesz nehéz.
  19. Az alapvetés után a színek jelölését sajátíthatjuk el (nem ijesztésképpen mondom, de hexadecimális kódban va, azaz 000000-tól ffffff-ig jelöljük a színeket – feketétől fehérig -, de nem ördöngős, ez is el lesz mondva), valamint a linkek formázását.
  20. Ha már szép színesek vagyunk, terjeszkedjünk, azaz dobáljunk és nyomogassunk dobozokat helyre és méretre.
  21. A fő részek kialakítása után olyan finomságokkal is foglalkozhatunk, mint a bejegyzések és metaadatainak formázása.
  22. Az oldalsáv formázása ezek után már – sajnos – gyerekjáték lesz…
  23. A lábléc sem okozhat különösebb nehézséget. Ugyanebben a lépésben istenül meg az index.php, ugyanis azzal, hogy kiemeljük belőle a különböző modulokat (fejléc, oldalsáv és lábléc), csak a lényeg és a lélek (Loop, emlékszünk?) marad benne.
  24. Ha kieszedtük ezeket a függelék részeket, formázzuk meg őket.
  25. Legutoljára pedig a kommenteket is gyúrjuk át, hogy szépek legyenek.

Kész is. Megvan a pofás blog, ráadásul mire eddig eljutunk, már tisztában is vagyunk a WordPress alapvető nyelvtanával. Ugye nem volt annyira nehéz…?

(Bocsánat az elgépelésekért, késő van, és holnap elhúzok kicsit pihire, folytatás utána, vagy vizsgaidőszak végén. Majd kiderül.)

Struktúra tervezése

Az előzőekben létrehoztunk egy új WordPress-blogot, amit már akár használhatunk is, funkcióiban nagyszerűen kielégítheti bárki igényeit. De. Mi van, ha mi mondjuk az intézményünknek (mondjuk ki: könyvtárunknak) szeretnénk csinálni blogot, vagy “csak” egy portált? Akkor “sajnos” még van vele munka bőven, ami viszont tiszta öröm, mert szinte játék WP-t építgetni és felfedezni az újabb és újabb lehetőségeket. (Ezt teljesen magamtól írtam, nem kapok érte pénzt. Ha valaki nem hisz nekem, próbáljon párhuzamosan WordPress-t és Joomla!-t hegeszteni…)

Először készítsünk egy vázlatot, hogy mire is akarjuk használni az oldalunkat. Az élő példánál maradva, mondjuk egy könyvtár oldalát szeretnénk megcsinálni.

Elsőként nézzük meg, mi volt eddig a honlapunkon. Ábrázoljuk fa szerkezetben, néhány kulcsszóval jelezve, milyen tartalom hol szerepel. Aztán hasonló módon rajzoljuk meg a vágyott lap struktúráját. Ne fogjuk vissza magunkat, zsúfoljunk bele minden ötletet, ami egy belső brainstormingon felmerül (akár még a 100+-50 munkatársat foglalkoztató intézményben is! – és én, ha vezető lennék, névtelenül kérném a nyomtatott véleményeket…), akár még az aktívabb olvasókat is bevonva (online és nyomtatott kérdőív, oktatók, professzionális felhasználó stb.), ebből aztán lehet visszafaragni esetleg (ha nagyon muszály), de sokkal jobb eleve több ötletből válogatni.

Másodszor, próbáljuk összegyúrni az adott rendszer, esetünkben a WordPress lehetőségeivel. Határozzuk meg a tartalmak alá- és fölérendeltségét, és döntsük el, mi statikus és mi dinamikus tartalom. Ami statikus tartalom, lap lesz, ami dinamikus, kategória. Emellett döntsük el azt is, hogy milyen szolgáltatásokat nyújtunk még online (IM olvasószolgálat, tematikus linkgyűjtemény, elektronikus gyűjtemények, repozióriumok, szakmai blogok, híroldal stb. – a katalógust azért nem írtam ide, mert nem látom valószínűségét annak, hogy akár még csak a lehetősége is felmerüljön itthon még jóideig egy Scriblio-típusú dolog használatának… pedig ingyen van), ezeket írjuk fel egy listába, később még szükségünk lesz rá.

Ha mindezzel készen vagyunk, próbáljuk meg szövegesen megfogalmazni az intézményünk profilját, kinézetét, design-jét (hiányos szókincs miatt nem tudom pontosan leírni, amire gondolok). Ebben valószínűleg nagy segítségre lehet az alapítási okirat, az intézmény vezetőjének pályázata, valamint szintén a kollégák (akár névtelen) véleménye. Ennek jegyében határozzuk meg a legjellemzőbb design-elemeket (logó, színek, akár betűtípus), mert ez tényleg lehet ennyire fontos… Gyűjtsünk hozzá fotókat, rajzokat stb. a könyvtárról (akár polcok, könyvek stb.), olvasókról, munkatársakról, bármiről, aminek köze lehet a könyvtárhoz.

Eddig a tervezgetés, még esetleg szükségünk lehet egy gyorstalpaló angol HTML/CSS, és PHP nyelvtanfolyamra – nem kell megijedni, egyik sem olyan bonyolult, mint amilyennek kinéz (és minimális tudás is nagyon-nagyon elég, ráadásul garantált, hogy a móka végére ez a tudás hatványozódni fog, tehát profit is…), ráadásul itt is működhet a közös munka, biztos van a kollégák közt, aki tud angolul, valamint olyan informatikus (vagy ne adj’Isten, könyvtáros ; ), aki már találkozott a fenti programnyelvekkel. Ráadásul még erre sem lesz szükség. Kávé / sör / pizza / pogi / pattogatott kukorica / zene / kényelmes szék beszerez, bekészít, lelket kisimít…

Blog telepítése

Fújnak az új szelek, nagyon fújnak, ezért újabb projekt indul, egyelőre háttérben. Viszont úgy döntöttem, hogy szépen leblogolok egy ilyent, hogy ne csak én tanuljak belőle (ennek személyes oka is van, ugyanis egy ilyen beszámolót olvasva – aztán sajna szem elől vesztettem, de állandóan keresem – kezdtem én is a WordPressel foglalkozni 2005 nyarának végén… ó, de rég volt : ( ).

Kell hozzá egy webtárhely, FTP- (én a kezeléshez TotalCommandert használok) és MySQL-hozzáférés, és mehet is a móka.

Szóval, első lépések. Az nálam eleve adott, hogy WordPress, ez nem kérdés, ezért gyorsan lekapom a WordPress.org-ról a 2.2es veziót, valamint a magyar oldalról a magyarított 2.1.3as verziót. (Ha valaki nem akar sokat tölteni, annak itt van külön becsomagolva a magyarítás.) Erre azért van szükség, mert a legújabb még nincs lefordítva, ezért kicselezzük jól, majd idejében lesz róla szó. Ezek után, ha még nincs határozott elképzelésünk, elmegyünk válogatni kinézetet a WordPress erre a célra kitalált oldalára, ahol szépen tudunk válogatni a jobbnál jobb és szebbnél szebb témák közül. Ha nincs olyan, ami nem tetszik, mi is gyárthatunk, vagy átdolgozhatjuk valamelyiket, a témák 99%a GPL vagy CC licensz alatt áll.

Ha megvan ez a kettő, letöltött ZIPeket kicsomagol, FTP izzít, (al)könyvtár létrehoz (ha tényleg blognak akarjuk használni, akkor érdemes egy www.tarhelyem.hu/blog/ könyvtárba pakolászni), és mehet is fölfele az angol motor. Ha megvan, nagyon örülünk, és megkeressük a magyar csomagban a /wp-includes/languages/ mappát, és egy-az-egyben felrakjuk a tárhelyre, szintén a /wp-includes/be. Ha ezzel megvagyunk, a tárhelyre felmásolt motorban megkeressük (a gyökérkönyvtárban) a wp-config-sample.php nevű fájlt, és nyomunk egy F4et. A Jegyzettömben (vagy más előre definiált szövegszerkesztőben) megnyíló fájlban sorban a következőket kell beállítani (kicsit egyhangú lesz, de mindegy):

  • DB_NAME: az adatbázis neve. Ezt általában megkapjuk a szolgáltatónktól, aki nem, annak úgysem tudok újat mondani.
  • DB_USER: az adatbázishoz való felhasználónév. Dettó, mint a fenti.
  • DB_PASSWORD: jelszó. Szintén.
  • DB_HOST: az adatbázis URLje. Csak úgy, mint fentebb.
  • DB_CHARSET: na, ez már érdekesség, mertez csak a 2.2től van. Alapjáraton utf8, érdemes hagyni, de akinek vallása tiltja, átírhatja. A többiek meg öltsenek sajnálkozó arcot.
  • DB_COLLATE: ezt, megvallom, még nem használtam. Összevetés más adatbázissal, gondolom. Ég a pofám… : (
  • table_prefix: ez akkor hasznos, ha csak egy adatbázist kaptunk a szolgáltatótól/rendszergazdától. Megadhatjuk, hogy milyen előtaggal kezdődjék az egyes táblák neve, ez alapértelmezetten wp_, de érdemes a blogunk nevét adni neki, az enyém pl ek_ (az aláhúzás csak a szeparálás miatt hasznos, külön értelme nincs).
  • WP_LANG: itt van még a nyelvcsere kisebb trükkje, ugyanis ide még be kell írni egy hu_HUt (-t nélkül…), hogy a felmásolt magyar nyelvű mappát használja.

Ennyi, a maradékhoz NE nyúljunk. Ezek után mentsük el (avagy ctrl+s, de bőven elég szimplán bezárni, úgyis megkérdezi : D ), majd a felülírást erősítsük meg. Ha ezzel is megvagyunk, nevezzük át a fájlt szimpla wp-config.phpra, mert csak így fog működni. Ekkor felmásolhatjuk a lementett témá(ka)t a /wp-content/themes/ mappába, természetesen kitömörítve, minden témát a saját nevére elnevezett mappában. Figyelem! Az alapesetben felmásolt témák nem magyarok, de a Word-Press.huról leszedett csomagban magyarítva van a két alap, ezért ha megelégszünk azokkal, vagy azokat akarjuk továbbfejleszteni, a letöltött magyar csomagból írjuk fölül a már meglévő két alap témát.

Ha mindezzel készen vagyunk, nyissunk egy böngészőt (Firefoxot, ofkórsz…), írjuk be a friss blogunk URLjét. Egy Error üzenet fog megjelenni, ami felajánlja az install.php futtatását, amin kapva kapjunk, így először megadva a blogunk nevét (ezt lehet módosítani később) és a saját mélcímünket megkapjuk az admin jelszót, ami egy véletlenszerűen generált szám lesz, amit az első kanyarban változtassunk meg majd.

Kész is. A felmásolt témákat a Megjelenés > Sablonok fül alatt lehet váltogatni. A sorozat következő része ismeretlen időpontban fog kikerülni (már megint szakad a 990.hu, unom, nagyon unom…).

Hogyan készítsünk RSS feedet egy Notepaddel, egy webszerverrel és egy sörrel

A következő bejegyzés szolgai fordítása lesz Stephen Downes – How to Create an RSS Feed With Notepad, a Web Server, and a Beer című írásának, amely 2003 júliusában látott napvilágot. Ehhez mérten nem éppen a legropogósabb buzzvördökkel van megszórva, sőt. De pont ez a jó benne.

És hogy miért: egyrészt egy késői reflektálás egy, a Katalistre írt levélre (RSS-téma, most nem idézném, utána lehet nézni), másrészt, mert a srác stílusa nagyon rendben van, ami sajna gyengén jött át a fordításban. Harmadrészt meg ha valaki Ádámtól és Évától óhajt elindulni, akkor ez itt pont jó lesz neki.

Az RSS (Rich Site Summary) egy XML fájlt takar… pamparampapam. Ádám csodásan leírta magyarul is az első bekezdést, jó hosszan és érthetően, ami arról szól, hogy mi is az az RSS.

Első lépés: felkészülés

Jegyzettömb: egy RSS fájl sima szövegfájl. Ez pedig azt jelenti, hogy bármely normális szövegszerkesztővel el lehet készíteni. A Windows Notepad (Jegyzettömb) pl. tökéletesen megfelel. Sőt: lehet használni Wordpad-et, hovatovább MS Word-öt is. Egyről azonban meg kell győződni mentéskor: hogy csak a puszta szöveget állítunk elő. Bármilyen formázás hazateheti az RSS fájlt. Csak szimpla szövegként mentsük. Leginkább a Notetab-nek nevezett szövegszerkesztőt ajánlom. Sima szövegszerkesztő, amely sosem okoz meglepetést mindenféle formázásokkal. Linuxban pedig a Bluefish-t.

Szerver: ha van weblapod, van szervered. A szerver az, ahol van a weblapod. Fel kell majd töltened fájlokat a webszerverre. Ha fel tudod rakni a honlapodat, ugyanúgy fel fogod tudni rakni az RSS fájlt is.

Sör: végy ki egyet a hűtőből, vagy ugorj le az ABC-be. Nyisd ki a sört.

Második lépés: keress egy mintát

Az RSS-készítés legkönnyebb módja lemásolni a másét. De ez ne okozzon gondot, az egész tartalmat ki fogjuk cserélni, a fájl formája pedig szabad licenszű bárki felhasználására. Itt van egy rövid, egyszerű példa:

(Másold ki a következőket, kivéve ezt a sort)

<?xml version=”1.0″ encoding=”UTF-8″ ?>
<rss version=”0.91″>

<channel>
<title>Élet és Könyvtár</title>
<link>http://eleteskonyvtar.hu/index.html</link>
<description>Élet és Könyvtár – otthon a könyvtárban </description>
<language>hu-hu</language>

<image>
<title>ÉK RSS favico</title>
<url>http://eleteskonyvtar.hu/rss.gif</url>
<link>http://eleteskonyvtar.hu</link>
<width>90</width>
<height>36</height>
</image>

<item>
<title>Itt egy bejegyzés címe #2</title>
<link>http://eleteskonyvtar.hu/bejegyzes-2</link>
<description>
Na, és akkor itt jön a bejegyzés szövege, jól. Ide most kéne sok mindent irkálnom, hogy kiteljen valamivel a tartalom, ami viszont hamis, mert töltelékszöveget nem neveznék tartalomnak. Szóval bonyolult. Takács Dániel, 2007.05.19.
</description>
</item>

<item>
<title>Itt egy bejegyzés címe #1</title>
<link>http://eleteskonyvtar.hu/bejegyzes-1</link>
<description>
Na, és akkor itt jön a bejegyzés szövege, jól. Ide most kéne sok mindent irkálnom, hogy kiteljen valamivel a tartalom, ami viszont hamis, mert töltelékszöveget nem neveznék tartalomnak. Szóval bonyolult. Takács Dániel, 2007.05.18. </description>
</item>

</channel>
</rss>

(Eddig a sorig másold ki. Ezt a sort már ne.)

Másold be ezt a szöveget most egy szövegszerkesztőbe. Mentsd el a kapott fájlt mondjuk honlapom.rss néven – mentheted bármilyen névre, az azonban megkönnyíti a használatot, ha a saját honlapod címét adod neki névként és .rss kiterjesztést adsz nekik, mert így ránézésre meg lehet mondani, hogy mit is akar ez a fájl. Ne felejtsd el, hogy szimpla szövegként kell elmenteni! Húzz egyet a sörödből, megszolgáltad.

Harmadik lépés: a csatorna definiálása

Lássuk, mit másoltunk be a szövegszerkesztőbe. Az elejefelé van egy olyan sor, hogy <channel>. Maga az információ ez után a tag után jön, és tart egészen a </channel> címkéig.

Négy információt kell minimum megadnod. Ezek címkék közé kerülnek, azt határozva meg, hogy ezek az információk merre találhatóak meg a honlapon. Töröld ki a saját honlapomra vonatkozó információkat, és helyettesítsd a magadéval.

title: a honlapod címe
link: a honlapod linkje
description: a honlapod rövid leírása
language: a honlapod nyelve (szabványosan kell meghatározni!)

Ezt a részt csak egyszer kell megírni. Ha már megvan, nem kell hozzányúlni, de természetesen lehet. Ha ez egyszer kész van, készen van véglegesen. Húzz egyet a sörödből, megszolgáltad.

Negyedik lépés: a képed

Az RSS fájl ezen része nem kötelező: nem kell megcsinálni, ha nem akarod. Néhány etető használhatja a képedet, hogy vizuálisan is jól elkülöníthető legyen az RSS feeded.

Elsőként egy képet kell készíteni. Ehhez bármilyen képszerkesztőt lehet használni. A képnek nagyon kicsinek kell lennie: az enyém 90 pixel széles. Csinálhatsz saját magadnak is képet, ehhez ajánlom a Gimpet, először nagy mérteben, utána pedig lekicsinyítve.

A képet bárhová be lehet pakolni, de a legtisztább, ha ugyanabba a könyvtárba rakjuk, ahová az RSS fájlt.

Ezután írd le a képedet, ugyanúgy, mint az előbb, cseréld ki a fenti paramétereket a sajátodra.

title: a kép címe, általában ugyanaz, mint a honlap címe, legtöbbször a kép ‘alt’ tagjében szokott szerepelni
url: a kép helye a weben, használj teljel URL-t, http-stül együtt
link: az az URL, ahova a képre kattintva kerülhetünk, ez általában ugyanaz az URL, mint a csatorna URL-je
width: a képed szélessége, pixelben
height: a képed magassága, pixelben

Ugyanúgy, mint a channel tagnél, ha egyszer ezt megcsináltad, többször nem kell hozzányúlnod. No, ez nagy lépés volt, húzd meg jól a sörödet.

Ötödik lépés: a linkek definiálása

Az oldalad esetleg több tartalmat (cikket, írást stb.) tartalmazhat, amit a látogatók olvasni szeretnének. Ez a rész fog időről időre változni (bővülni), amikor a honlap tartalmi része változik.

Az egyes cikkek <item> taggel van jelölve. A példában két ilyen szerepel. Szépen látszik, hogy minden egység <item> taggel kezdődik, és </item> taggel van lezárva.

Ezek között is szerepel néhány tag, amelyek a tartalomról tartalmaznak információt. Ahhoz, hogy leírd a sajátodat, távolítsd el a példa infókat, és helyettesítsd a sajátjaiddal. Ha kettőnél több tartalmad van, másold le a cikk taget, és illeszd be a második elem a </channel> tag közé annyiszor, ahány tartalmat létre akarsz hozni. Aztán tedd bele a saját tartalmadat:

title: a cikk címe
link: a cikk URL-je (szép szóval permalinkje)
description: a cikk rövid összefoglalása, a példában itt szerepel a szerő és a dátum is!

Készíts egy item-et minden cikkhez. Ezután mentsd le a fájlt, és igyál a sörödből.

Hatodik lépés: a karakterek megmentése

Most jön a trükk. Az RSS fájl ugyebár egy XML fájl. Így ki kell menekítened egy csomó karaktert, ami azt jelenti, hogy szöveggel kell helyettesítened őket. Itt van egy lista néhány gyakoribb karakterről:

& – az ‘&’ karaktert helyettesítsd a következővel: ‘&’ (ne feledd az URL-t, egy csomó URL tartalmaz et jelet!)

– cseréld ki az összes idézőjelet erre: ‘”‘ (pl. a “kedves” így fog kinézni: “kedves”)

– cseréld ki az összes aposztrófot erre: ”’ (pl. a Pista bá’-ból ez lesz: Pista bá’)

> – az összeset cseréld ki erre: ‘>’ – DE: a tagek kacsacsőrjét ne cserléd le!!!

< – az összeset cseréld ki erre: ‘<‘ – DE: a tagek kacsacsőrjét ne cserléd le!!!

Hetedik lépés: töltsd fel a fájlt

Töltsd fel a fájlodat a webszerverre. A legjobb, ha ugyanoda teszed, ahol a honlapod van, de persze igazából oda rakod, ahova neked jól esik.

És kész is a működő RSS feed. Gratulálok. Igyál sörikét, jót tesz.

Nyolcadik lépés: validáld az RSS feedet

Szigorúan véve ez egy eléggé fölösleges lépés, de azért ajánlott, mert könnyű rontani a hatodik lépésben.

Ahhoz, hogy validáld, érvényesítsd az RSS feededet, keress egy validátort a neten, és másold be az RSS teljes URL-jét. Nyomj meg egy gombot. Ha valamit elrontottál, megmondja a validátor, egyébként validálni fogja. Tippnek pár cím:

Kilencedik lépés: reklámozd a feededet

Ha megvan a feed, tudatosítsd a jónepben, hogy létezik. Nem feltétlenül fogják megtalálni, ezért a következő két lehetőséget ajánlom:

Először is, tegyél ki egy XML vagy RSS feliratot, logót, ikont. Általában az RSS logó egy kis narancssárga izé, ami az RSS fájlodra mutat egy linket. “Lophatsz” ilyet másoktól is, de vannak gyűjtemények is, pl. a Feed Icons, ahol nagyon szép ikonok vannak ingyen. (Egyébként meg gúglit!)Töltsd fel a kiválasztott képet a szerveredre. Ezután tedd ki a képet egy linkkel a lapodra, pl:

<a href=”http://www.oldalam.hu/oldalam.rss”><=img src=”rss.gif” width=36 height=14 alt=”RSS feed az oldalhoz” border=0></a>

Másodszor pedig regisztráld a feededet különböző aggregátorokban, ezek figyelni fogják azt, ha frissül. Pár aggregátor:

(Ha van még ehhez tipp, várom a linkeket kommentbe…)

Végezd ki a sörödet. Készen vagy. Az üveget pedig váltsd vissza.

Megjegyzés: ez egy fapados RSS elkészítésének volt a leírása. Sokfélét lehetne még előállítani, sokféle szabvány szerint. Sőt, automatizálni is lehet az előállítást, nem kell minden körben hozzáírogatnod a fájlhoz kézzel. Ehhez kell egy kis PHP és hasonlók, ha van rá igény, akkor erről is lesz szó még itt.

WP-ből portál

Először is köszönöm a támogatást. Bevallom, nem bírtam ki, és elkezdtem, még mielőtt Ádám válaszolt volna… ; )

Az elvárás valahogy úgy néz ki, hogy a két szinten kategorizált bejegyzések külön-külön, kategóriákként jelenjenek meg, és ez tükröződjön a menürendszerben. Azaz egyrészt vannak a fő kategóriák (pl. menedzsment), ezen belül az alkategóriák (pl. PR). A fejlécben csak a fő kategóriák jelennek meg, amiket választva almenüként jönnek be a childok. Eddig rendben is volnánk, ez valahogy így néz ki, először képernyőn, aztán kódszinten, hogy (kiskép, katt nagykép – miért nem működik itt a kódot jelölő tag?)

prtscrn

code

Eddig tehát megvan csinálva a menü kiírása. A továbbiakban azonban egy kicsit el vagyok akadva. Egyrészt az egyes alkategóriák olvasása közben eltűnik a menüsor, csak a főmenü marad meg, ami önmagában nem probléma, csak valahogy meg kéne oldanom, hogy a header-ben kiírja a path-t, vagy akkor maradjon meg az almenüsor, és környezettől függően színezze meg mondjuk a hátteret vagy húzza alá a szöveget. Van egy megoldás-féleség, de elég hosszú (még belegondolni is rossz, hogy a hat fő kategória további 30 alkategóriára van bontva…):

code2

A kezdőlapnak meg egyelőre beállítottam egy statikus home.php-t (a Static Home Page nevezetű pluginnel, a Filosofo valamiért nem akar működni), még azon is van mit javítani, rá kell jönnöm, hogyan tudom a belsejét kicsit megalakítani ennek a lapnak (mindenféle plusz dobozok beillesztése, úgy mint a kategóriák legfrissebbjei lent szépen külön listázva, esetleg egy random RSS-csatorna stb.).

Szóval kb. itt tartok és ennél a problémánál vagyok leülve. Viszont mégsem panaszkodhatok, ez a sebesség és eredmény tőlem teljesen szokatlan és váratlan, úgyhogy éljen.

Híd a blogok között – BlogBridge

Állandóan problémáim vannak (voltak) az RSS-kezeléssel, mert a Thunderbird-ével nem voltam megelégedve, a Firefox-hoz elég vacak kiterjesztések vannak (NewsFox-ot használtam, de azzal is voltak gondjaim – valószínűleg azért én sem vagyok ártatlan a dologban…), külön csak ezért meg nem akarok Flock-ot vagy Operát használni (bár megpróbálkoztam mindkettővel, de nem szeretem, ha több böngésző van, még ha nem is használom a többinek ezt a funkcióját). Viszont nemrég sikerült rátalálnom a BlogBridge nevezetű jóságra, ami nagyon finoman megoldotta az ilyen típusú problémáimat.

blogbridgeA struktúrája a következő: vannak a legnagyobb csoportok, a Guide-nak nevezett gyűjtők. Ezek az a haszna, hogy bárki állíthat össze ilyen Guide-ot, közzéteheti, megoszthatja stb. (Tudom, nem nagy felfedezés a tervezők részéről, de mégiscsak…) A következő szintet már a feed-ek képviselik, amelyek között vannak a szimpla feliratkozások, és vannak az ún. SmartFeed-ek. Ez gyakorlatilag egy feed-keverék, amely megadott forrásokból (saját BlogBridge-feedek, Amazon.com könyvek, Connotea, del.icio.us, Feedster, Findory, flickr, Google BlogSearch és Technorati), a megadott kritériumok (tag-ek) alapján gyűjti a híreket.

Ha Guide-ot akarunk létrehozni, kapásból kapunk egy raklapnyi lehetőséget: vagy egy előre megadott gyűjteményből válogathatunk, vagy az ún. Experts-ből válogathatunk, ahol az adott kategória legjobbjait válogatják ki. Esetleg létrehozhatunk egy Reading List-et, ahová mások által összegyűjtött linkeket pakolhatunk (természetesen itt is van ajánlás).

A Firefox-szal még azt is megcsinálta, hogy ha egy olyan oldalról megyek át a BoldgBridge-be, ahol van feed, akkor rögtön be is pakolja azt, ha új csatornát hozok létre (tehát megúszok egy “ctrl-c + ctrl-v”-t, ami nem sok, de nagyon jó).

Mindehhez nyitott forráskódú ésatöbbi. Van neki Windows és Mac platformra is kapacitása. Én nagyon megszerettem.

Update: képes a Gmail-os atom feed-et is kezelni. Egyre jobban szeretem.