2009. június 21.

Pklapgen verziók

v1.2 - 2009. június 21.

Három hasznos új funkció:

  • DISQUS integrálás
  • Dropdown menü
  • Külső lapra linkelő menüpont

A DISQUS egy külső kommentelő rendszer, ami bármilyen weboldalba beilleszthető pár sor bemásolásával, akár egy statikusba is mint a pulykakakas oldalak. Ettől aztán az oldal a blogoknál megszokott módon kommentelhető lesz. A bejelentkezett kommentelők ugyanazzal a bejelentkezéssel minden DISQUS-t használó oldalon kommentelhetnek, a kommentjeik és ők maguk pedig a többiek által pontozhatók. Ha elterjed, ez egy lehetőség a trollok visszaszorítására. Most az elég népszerű tumblr tolja a szekerét, mert annak saját kommentelési lehetősége nincs.

A DISQUS beillesztése az oldalán leírtak alapján simán megy, a megadott sorokat a sablonba kell bemásolni. Ha a gépünkön lévő html fájlokat megnyitva (pl. hogy ne számojon minket a Google Analitcs) akarjuk látni és írni a kommenteket akkor a sablon <HEAD> részébe be kell írnunk három sort:
<script type="text/javascript">disqus_url="http://www.enoldalam.hu/###filenev###";</script>
<script type="text/javascript">disqus_title="###oldalcim###";</script>
###inc(%disqus_local.inc)###
A pkl mappába pedig hozzunk létre egy disqus_local.inc nevű fájlt az alábbi tartalommal:
<script type="text/javascript">disqus_developer=1;</script>

A dropdown menü egy másik weblapomhoz kellett, így már ezt is tudja a pklapgen. A kinyíló és a lehulló (dropdown) menü között két különbség van, a lehulló menü főmenüpontjai nem klikkelhetők, ha van almenüjük, és minden főmenüpont almenüje látható ("lehullik") minden oldalon, ha az egeret a főmenü fölé visszük. Lehulló menüt akkor generál a pklapgen, ha a ###menu### token helyett ###menudd### tokent adjuk meg a sablonban. Sokféle lehulló menüt leshetünk el a Free CSS Drop-Down Menu Framework oldalon.

A külső lapra linkelés akkor kell, ha a menüpontra kattintva nem a saját oldalunkra, hanem egy másik weblapra akarunk eljutni. A pkl fájlban a menüpont mögé a ###lnk: tokent és a másik weblap címét írva érhetjük ezt el. Az "Aprólék (tumblr)" menüpont ilyen. Megtetszett a tumblr, úgy gondoltam ott jó helyen lesznek a pár mondatos elméncségeim, amiknek itt szemétdombomon nem találtam jó helyet.

v1.0 - 2008. Karácsony

Karácsonyra úgy gondoltam egy kicsit a tuningolom a program keresőbarátságát ("SEO friendly"). A pklapgennel generált oldalak belső linkelése és az oldalak url-je eddig is elég SEOs volt, de két dolog azért még hiányzott. Az oldalak url-jében a kötőjel ("-") valamivel jobb mint az alulvonás ("_"). Mostantól használható a kötőjel is, kinek mi tetszik. Ha van az oldalak headerjében leírás ("description"), akkor a Google általában ezt írja ki a találati listán, ha nincs akkor keres valami szerinte jellemző szövegrészt. A leendő látogató tájékoztatását pedig sokszor jobb, ha magunk végezzük és nem bizzuk a Google robotjára. Persze a most bevezetett cserével a keywords is megadható így, de ennek szerintem semmi jelentősége.

Új - ###koz: új pkl opció: megadható, hogy az oldal url-jében a szóközt mire cserélje
Új - ###cs:valami### új token: kiírás előtti csere a szövegben

###koz:- vagy ###koz:_ Az oldal url-jében a program eddig a szóközt "_" karakterre cserélte, és a szöveg fájl nevét is így kellett megadnunk. A keresőbarát url-ekben azonban jobb kötőjelet használni szóköz helyett. Ezt eddig is meg lehetett tenni a ###cim opcióval, de elég macerás volt. Mostantól meg lehet adni a szóközt helyettesítő karaktert globálisan a pkl fájl első sorában, és ezt menüpontonként felül lehet bírálni. Alapértelmezés az alulvonás (_) a kompatibilitás miatt. Ha a kötőjelre (-) akarunk áttérni akkor figyeljünk, hogy az eddigi menüpontok sorában adjuk meg a ###koz:_ opciót, hogy a régi oldalak url-je ne változzon.

###cs:valami### A pkl, a sablon és a szöveg fájl első soraiban is megadhatunk szöveg csere definíciókat
###cs:csere1###erre kell lecserélni###
formában. Ezek után bárhol a szövegben, de a sablonban is(!) a ###cs:csere1### szöveget "erre kell lecserélni" szövegre cseréli a program. Mire jó ez? Például a sablonban megadhatjuk a
<meta name="description" content="###cs:description###" />
sort, amit minden egyes oldalon a megfelelő leírásra cserélünk, a szöveg fájl fejében megadott csere definícióval.
A csere definíciók mindig a fájlok elején legyenek és egy sorosaknak kell lenniük, de az az egy sor bármilyen hosszú lehet. A pkl fájlban megadott csere mindenütt hat, a szöveg fájlban megadott csak az adott oldalon. FIGYELEM! A generálás a teljes sort kihagyja, ha van benne cserélendő rész és annak nincs meg a definíciója. A fenti példában a sablonban benne van a description sor, de amelyik szöveg fájlban nem lesz megadva rá a csere ott a teljes sort ki fogja hagyni. (A sor itt mindig a forrás szöveg sora nem a böngészőben megjelenített szövegé.)
A csatolt példa weblap harmadik és negyedik menüpontja mutatja az új opciók használatát.

v0.81 - 2008. október 18.

Változás - nyitólapon a "tovább ..." <sub> helyett <small> taggal íródik ki
Változás - nyitólapon Firefox sem húzza alá a bejegyzések előtti ikont
Új - ###upd:x új pkl opció: régi oldal frissítésekor új rss bejegyzést generál neki

Az első kettő kisebb javítás, így már minden böngésző egyformán jeleníti meg a nyitólapot.
A harmadik egy új opció, ha frissítünk egy már létező lapot (mint most a pklapgen v0.8-at), akkor az RSS olvasók a szöveget frissítenék ugyan, de nem adnák fel új, olvasatlan cikknek, ezért aki az RSS-t olvassa mégsem értesülne a frissítésről. Ezt orvosolja az ###upd: opció, ha a pkl fájlban a menüpont végére odaírjuk, hogy ###upd:valami akkor új RSS bejegyzést hoz létre a program és azt újként fel fogják dobni az RSS olvasók. (Az ###upd: után célszerű a frissítés dátumát megadni például: ###upd:2008.10.18.)

v0.80 - 2008. augusztus 8.

Új - Blogszerű nyitólap
Új - RSS generálás
Új - Automatikus futtatás

Akkor most egy nagyot ugrunk a verziószámban, mert ezzel a verzióval már tényleg csak két fájlba kell beleírni amikor egy új cikket írunk. Az egyik maga az új cikk (azaz a html fájl a szoveg könyvtárban), a másik a menü felépítést leíró pkl fájl. Az RSS-t és a blogszerű nyitóoldalt a program generálja, ezzel végre megszabadultam elég bénácska kezdőlapomtól, amibe az új cikkek linkjét mindig kézzel kellett beleírnom.
Lássuk milyen új opciók kellettek ehhez:

a pkl fájlban 1-től 9-ig meg lehet adni melyik cikkek kerüljenek a nyitó oldalra
>>1Ez az első új cikk
>> Ez egy régi cikk
>>2Ez a második új cikk

###ujcikk### token jelöli a nyitó oldal sablonjában a helyet ahova ciklusban beírja a program az új cikkeket (amennyit megjelöltünk, de max. 9). Ez megfelel a normál sablonban használt ###szoveg### tokennek, csak itt annyiszor kerül beirásra a szöveg ahány új cikket a pkl fájlban megadtunk és a szöveg elé a cikk címét is kiírja. Mivel más tokent kell megadni ezért a nyitóoldal sablonja más lesz mint a többi oldalé, ezt a pkl fájlban a ###sbl: tokennel adhatjuk meg.

A nyitóoldalhoz még egy finomság: ha a css könyvtárban icon_1.gif ... icon_9.gif néven ikonok vagy képecskék vannak, akkor ezek a nyitóoldalon megjelennek a cikkek címe előtt, ha nincsenek akkor csak egy "-" jelenik meg.

###tovabb### a nyitólapra és az RSS-be eddig másolja be a cikket a program, utána kiírja, hogy tovább ... amire rákattintva a teljes cikkre lehet ugrani. Ha szabványos xhtml nyitóoldalt akarunk akkor ezt a tokent mindig lezárt bekezdés után tegyük ki.

###mnu: a pkl fájlban a menüpont nevét írhatjuk át vele, akkor hasznos, ha az oldalt már használtuk, de most más menüpont nevet szeretnénk adni neki
Például:

> Mi újság? ###mnu:<img alt="rss ikon" src="css/icon_rss1.png"/> RSS ###cim:RSS

a régi "Mi újság?" menüpont helyett "RSS" lesz a menüpont, az oldal címe pedig "RSS", de a lap változatlanul mi_ujsag.html-ként jön létre.

RSS generálás RSS-t akkor generál a program, ha a pkl fájl mellett ott van feed.sbl.xml néven egy RSS sablon is. Ennek tartalma például:

<?xml version="1.0" encoding="iso-8859-2"?>
<rss version="2.0">
<channel>
<title>Énoldalam RSS</title>
<link>http://www.enoldalam.hu</link>
<description>Mi újság az én oldalamon?</description>
<language>hu-hu</language>
###item###
</channel>
</rss>

###item### token helyére írja be a program a megadott sorrendben az új cikkeket a ###tovabb### tokenig. Van az RSS-nek egy buta hiányossága, amit figyelembe kell venni amikor a pkl fájlban megadjuk a sorrendet. Az RSS olvasók a korábbi linkenken hivatkozott bejegyzést sem frissíteni sem törölni nem tudják, pontosabban szólva szabvány hiányában mindegyik máshogy csinálja, tehát nem számíthatunk rá. Ez azt jelenti, hogy egy korábban RSS-ben már szereplő cikk (esetünkben pkl menüpont) frissítését nem tudjuk betenni az RSS-be, illetve a pklapgen beleírja ugyan, de az RSS olvasók vagy figyelembe veszik vagy nem (inkább nem). Magyarán, ha biztosak akarunk lenni abban, hogy egy változás az RSS olvasókhoz is eljut, akkor azt új menüpontban kell megírnunk.(Azaz mégis van kiút, lásd 0.81-es verzió.)

Az RSS fájlt feed.xml néven hozza létre a program az éles és a teszt mappában is. Ha használjuk az új RSS generálást akkor az eddig kézzel írt feed.xml-t töröljük a szöveg mappából mert, ha ott marad akkor a generálás után felülírja az éles mappában a generált feed.xml-t. Természetesen az RSS generáláshoz meg kell adni az oldal URL címét.

FUT parancssori paraméterrel indítva a programot ("pklagen.exe FUT") az előzőleg futtatott beállításokkal azonnal lefut és kilép, ezzel batch fájlból is indíthatjuk a generálást.

Végül egy klassz oldal, ami pklapgennel készült:
Turányi Rita és Gábor weblapja

v0.23 - 2007. június 2.

Új - Google sitemap és Yahoo urllist kiírása.

Aki használja a Google Webmaster Tools vagy a Yahoo Site Explorer valamelyikét annak jól jöhet, hogy eztán a pklapgen kiírja a generált oldalakat tartalmazó sitemap.xml-t illetve urllist.txt-t. Nem fárasztanám magunkat azzal, hogy leírom mik ezek, aki tudja, tudja, aki nem annak itt van egy kis olvasnivaló (angolul): Google sitemap és Yahoo urllist. A Yahoo nálunk eléggé érdektelen, főleg mióta az [origo] is a Google keresőjét használja, de a Google sitemapot érdemes használni, részint, hogy hamarabb legyenek indexelve az oldalaink, részint pedig kapunk pár hasznos infót a weblapunkra mutató hivatkozásokról és keresésekről. A kiíratás gondolom egyértelmű: meg kell adni az oldal url-jét (pl: http://www.oldalamneve.hu) és kipipálni amelyiket akarjuk, a sitemap.xml és az urllist.txt az éles célkönyvtárba kerül. (Jó, ha tudod: a pklapgen a sitemap.xml-be csak a kötelező tagokat írja ki (urlset, url, loc), a nem kötelezőeket (lastmod, changefreq, priority) nem, mert ezeknek szerintem egy kis weblap esetén nem nagyon van jelentőségük.)

Még egy apróság, addig is amíg nem döntöm el mi kerüljön az automatikusan írt RSS-be. Ha a szöveg fájlok mappájában van feed.xml, akkor azt a generálás után a pklapgen átmásolja az éles célkönyvtárba (így minden kézzel szerkesztett fájl a szöveg mappában van és minden felmásolandó fájl az éles célkönyvtárba kerül). Ehelyett v0.8 után már inkább használd az RSS generálást!

v0.21 - 2007. február 6.

Új A beállításokat projektként el lehet menteni.

Javítás Ha az utolsó menüpont almenü volt akkor hibát üzent, és az utolsó oldalt rosszul generálta.

v0.20 - 2007. január 20.

Első publikus verzió. (Nem publikus meg nem is volt, hehehe ...)

A program legújabb verziója innen tölthető le:

pklapgen.zip

Telepíteni nem kell, csak a zipet kell kibontani egy könyvtárba. A program mellett egy kis példa weblap is van, ami a leírást tartalmazza.