Korinaa kuopasta

Jo 582 juttua!

Tilaa RSS tai Atom

Artikkelin tunnistaminen artikkelilistassa (Textpattern-vinkki)

Tämän kirjoituksen otsikko on aika hämärä, joten yritän ensin selventää sitä, mitä tässä yritetään toteuttaa. Kun tämä blogimerkintä julkaistiin, se ilmestyi Korinaa kuopasta -weblogin etusivulla kirjoitusten listauksen alkuun. Se ilmestyi artikkelilistan ensimmäiselle sijalle. Blogiin on kytketty konepellin puolelle pari riviä koodia, jotka tunnistavat blogin etusivun ensimmäisen artikkelin. Tunnistettuun artikkeliin isketään kiinni CSS-väkäset, joiden avulla kirjoituksen esitystapaa voidaan muokata. Näin siis tässä tapauksessa. Tätä konstia voidaan tietysti hyödyntää myös muilla tavoin — tunnistettuun artikkeliin voidaan lisätä aivan oma sitä varten räätälöity lomake, jossa on vain ko. artikkelia koskevia elementtejä ja toimintoja.

Tähän kappaleeseen asti nyt esittelyssä oleva keino on kuulostanut melkoisen tekniseltä jargonilta, joten eiköhän siirrytä kansantajuisempaan lähestymistapaan.

Asennetaan ensin Textpatterniin liitännäinen wet_if_page.

Voimme tunnistaa blogin etusivulta, tai vaikka sivulta n:o 17 löytyvän artikkelin, joka on artikkelilistassa järjestyksessä kolmas (3). Tunnistettuun artikkeliin voidaan tehdä muotoiluja. Sen ulkoasua ja sen sisältöä voi “tuunata” siten, että se ei vaikuta muihin samassa artikkelilistassa oleviin artikkeleihin. Tässä blogissa on päätetty tunnistaa blogin sivulta numero 1 artikkelilistan järjestyksessä ensimmäinen artikkeli. Tunnistettuun artikkeliin on asetettu vain sitä varten luotu Textpattern-lomake. Jotta saisimme tällaisen alkeellisen tunnistussysteemin toimimaan, kajoamme Textpatternissa siihen sivupohjaan, joka on käytössä blogin etusivulla. Täällä Kk:n puolella sivupohjana käytetään default-nimistä pohjaa. Siihen sullotut maagiset liirumlaarumit ovat seuraavanlaiset:

<txp:if_article_list>
<txp:article limit="1" listform="uusin" offset="0" pageby="20" pgonly="0" status="4" time="past" allowoverride="0" />
<txp:article limit="19" listform="default" offset="1" pageby="20" pgonly="0" status="4" time="past" allowoverride="1" />
</txp:if_article_list>

Nuo koodirivit tekevät seuraavaa:

  1. Katsotaan onko käyttäjä artikkelilistassa.
  2. Tulostetaan yksittäinen artikkeli. Käytetään siinä lomaketta nimeltään uusin.
  3. Tulostetaan jälleen artikkeleita. Tällä kertaa 19 kappaletta. Käytetään niissä lomaketta default. Otetaan takapakkia yksi pykälä (offset="1"), sillä muuten ruudulle tulostuu pari kertaa sama artikkeli.
  4. Yhteensä sivulle runnotaan parikymmentä artikkelia, joiden tila on Live (status="4"), ja jotka on julkaistu joskus menneisyydessä.

Tällaista. Olemme vieneet operaation lähes päätökseen. Tekemättä on vielä pari pientä säätöä. Tutustutaan ensin uusin-lomakkeen sisuksiin. Sen sisälmyksissä käytetään tällaista perushuttua:

<div id="tuorein-blogimerkinta">
<txp:wet_if_page page="1">
<h2>
<strong>Tämä on kaikkein uusin kirjoitus.</strong>
<txp:permlink><txp:title /></txp:permlink>
</h2>
<txp:else />
<h3>
<txp:permlink><txp:title /></txp:permlink>
</h3>
</txp:wet_if_page>
<txp:body />
</div>

Nokkelimmat huomaavat tässä koodissa ristiriitaisuuksiakin, mutta käytännössä tämä ruma riekale toimii vallan mainiosti. Tämä siis tulostaa artikkelilistan ensimmäiselle artikkelille div-elementin sisälle, joka on saanut id-selektorin, käärin tavaran ja tsekkaa vielä onko artikkeli varmasti sivuston sivulla numero 1. Jos ei olla ihan ensimmäisellä sivulla, niin tulostetaan hieman toisenlaista tavaraa… Tarvitsemme aivan ehdottomasti wet_if_page-liitännäisen taikavoimia, sillä muuten emme kykene suorittamaan täsmäiskua millekään tietylle sivuston sivulle. Ilman em. pluginia jokainen sivupohjaa default käyttävä artikkelilistaus (sivu), jolla tätä tunnistustoimintoa käytetään, saisi esimerkkikoodia käyttäen tällaisen merkkauksen eteensä:

<h2>
<strong>Tämä on kaikkein uusin kirjoitus.</strong>
<txp:permlink><txp:title /></txp:permlink>
</h2>

Liitännäisen avulla saamme tähdättyä halutulle sivulle asettamalla ehtolauseessa toivon sivunumeron. Blogin etusivulle voimme tähdätä laittamalla sivunumeroksi numeron “1”. Tällä lailla:

<txp:wet_if_page page="1">
<h2>
<strong>Tämä on kaikkein uusin kirjoitus.</strong>
<txp:permlink><txp:title /></txp:permlink>
</h2>
</txp:wet_if_page>

Koska aika on arvokasta, kannattaa tutustua tähän alla näkyvään listaan jos mielit löytää tämän nettisivuston parhaat kirjoitukset. Tässä alapuolella on kaikkein luetuimpia kirjoituksia Korinaa kuopasta -blogin aarreaitasta. Kirjoitukset on järjestetty suosituimmuusjärjestykseen siten, että luettelon kärjessä on tällä hetkellä eniten lukukertoja saaneet kirjoitukset.

Luetuimpia blogimerkintöjä

Blogimerkintää "Artikkelin tunnistaminen artikkelilistassa (Textpattern-vinkki)" muokattiin viimeksi 3847 päivää sitten, eli maanantaina 28.12.2009 kello 09:09. Kirjoitukseen on julkaistu kommentteja 1 kpl. Kaikki kirjoituksen saamat kommentit löytyvät suoraan tämän tekstimötikän alapuolelta.

Julkaisun kommentit

Gocom kommentoi 4546 päivää sitten

Tietysti nuo kaksi erillistä <txp:article />-tagia voi tehdä <txp:if_first_article>-tagin avulla itsessään artikkeliformissa. Ja noitahan pageby="20" pgonly="0" status="4" time="past" allowoverride="0" arvojahan ei tarvitse asettaa. Pageby on automaattisesti limitin summa, pgonly on automaattisesti nolla ja status="4" ei edes vaikuta mihinkään edes TXP:n lähdekoodissa.

Joskus vuonna nakki-ja-nolla olen tainnut nähdä samanlaisen artikkelin korinassa, tosin siinä taidettiin sijoitella mainoksia artikkelien väliin :)

Oho! Tämän julkaisun kommentointi onkin jo suljettu. Kun tämän julkaisun kommentointi oli vielä avoinna, tälle julkaisulle kirjoitettiin yhteensä 1 kommenttia. Tämä artikkeli on lokeroitu kategoriaan Textpattern. Tämän julkaisun kestolinkin osoite on http://www.kuopassa.com/weblog/2008/01/25/artikkelin-tunnistaminen-artikkelilistassa-textpattern-vinkki.

Korinaa kuopasta: Artikkelin tunnistaminen artikkelilistassa (Textpattern-vinkki).

Selaat tällä hetkellä blogimerkintää Artikkelin tunnistaminen artikkelilistassa (Textpattern-vinkki). Se julkaistiin 25. päivä tammikuuta 2008. Voit siirtyä lukemaan blogin tuoreimpia kirjoituksia klikkaamalla tiesi weblogin etusivulle. Tässä blogissa julkaistaan kiinnostaviksi katsomiani asioita, joten jos tiedät kiinnostavan nettiin liittyvän aiheen, josta kannattaisi kirjoittaa, laita palautetta!