Szerzői avatarok a címek mellett

A ThemeShaper dobta múltkor azt a bejegyzést, ami azt írja le, hogyan lehet ezt a kis identifikáló ikont megjeleníteni a bejegyzések mellett (is), úgy mint most nálam lett.

Zárójelben Blockquote-ban jegyzem meg, hogy ez nálam csak gizdaság (illetve csak esztétikai perverzióimat élem ki vele), de mondjuk egy könyvtárnál ez már messze-sokkal jobb.

Az a lényeg hogy a

<?php echo get_avatar( get_the_author_email(), '80' ); ?>

kódsort kell beszúrni a loop megfelelő helyére (én a legelejére raktam, jobbra zártam, és kész). A get_the_author_email() az emailcím alapján végzi el az azonosítást, a ’80’ pedig a nagyságot határozza meg pixelben (az alapértelmezett 96×96, de nekem 50×50-re van beállítva).

A CSS fájlban pedig az .avatar-méret{} formában hivatkozhatunk rá, ahol a méret pixelben van megadva, illetve ha nem módosítottuk a méretet, akkor .avatar-default{} formában is hivatkozhatjuk. Nálam ez tehát

.avatar-50 {float: right;}

formában néz ki. Ennyi. (A teljes doksi a WP Codexen található meg.)

Doranskyval meg nem értek egyet. Szerinte

Doransky megmondja

aminek a hiteléből csak az vesz el egy picit, hogy pont öt perccel előtte cserélte le a D betűt a (fél) arcára (ezt persze úgyis lehet magyarázni, hogy megvilágosodott, aztán ennek szellemében cselekedett a továbbiakban).

Egyrészt nem olyan nagy etwas egy csiripelő valódi arcát előásni (nálam ez Csirip adatlap > Twitter adatlap > blog > rólam útvonal), másrészt azt is mondhatnám, hogy két táborra szakadt a csirip: a valódi nevükön és álnéven írók táborára. És akkor én nyertem ;)

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?…

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.

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.