Artikkeleiden tai kokonaisten sivujen sivutuksen luominen Textpattern-päivitystyökalulla on kohtalaisen helposti toteutettu. Textpatternista löytyvään sivupohjaan voidaan asettaa ehtolauseita erilaisia sivutuksia varten. Tuollaisten ehtolauseiden avulla voidaan antaa sivutus (eli siis sellaiset linkit, joita klikkaamalla pääsee siirtymään toiseen artikkeliin tai toiselle sivulle) esimerkiksi vain sivuston etusivulle, tai vaikkapa vain yksittäiselle julkaisulle.
Yksittäiselle artikkelille voidaan antaa linkit edelliselle ja/tai seuraavalle sivulle näin ikään:
<txp:if_individual_article>
<txp:link_to_prev>Edellinen artikkeli</txp:link_to_prev>
<txp:link_to_next>Seuraava artikkeli</txp:link_to_next>
</txp:if_individual_article>
Tuo ylle listattu koodilitania on kääritty ehtolauseeseen, tai mihinkä lie superkoodiin, joka tulostaaa koodin mikäli käyttäjä tarkastelee yksittäistä artikkelia. Jos yksittäinen sivu on silmäiltävänä, tulostetaan ruudulle yksi, tai jopa kaksi asiaa. Vau. Jos Textpattern-sivustolla on kyseisessä osiossa useita artikkeleita, tulee tämä koodi tulostamaan joko linkin edelliseen artikkeliin varustettuna linkkitekstillä Edellinen artikkeli ja/tai sitten linkin seuraavaan artikkeliin linkkitekstin ollessa Seuraava artikkeli. Tämä voi kuulostaa monimutkaiselta, mutta on oikeastaan yksi yksinkertaisimmista asioista mitä tämä maa päällään kantaa.
Artikkelilistalle voidaan tulostaa sivutus samalla periaatteella, mutta tällöin itse sivutuksen luova koodi on hieman erilainen kuin yksittäisen artikkelin kohdalla:
<txp:if_article_list>
<txp:older>Edellinen sivu</txp:older>
<txp:newer>Seuraava sivu</txp:newer>
</txp:if_article_list>
Tämä ylle langetettu koodi tarkistaa siis onko käyttäjä tarkastelemassa artikkelilistausta. Tai vaikka Textpattern-sivuston etusivua. Jos käyttäjä surffaa artikkelien listauksessa, niin tulostetaan tarvittaessa linkki edelliselle ja seuraavalle sivulle. Jos käyttäjä on vaikkapa artikkelilistauksen ensimmäisellä sivulla ja artikkeleita löytyisi vielä toiseltakin sivulta, niin silloinpa ilmestyy linkki edelliselle sivulle. Linkkiteksti on tällöin Edellinen sivu. Sitten kun käyttäjä klikkaa kyseistä linkkiä, hän siirtyy artikkelilistauksen toiselle sivulle. Tuolloin ilmestyy linkki artikkelilistauksen etusivulle ja linkkiteksti on Seuraava sivu.
Kehitellään. Meillähän on nyt valmiina sivutuksen toteuttaat koodit sekä yksittäistä artikkelia että artikkelilistausta varten. Tavalliset linkit. Pitäisi kai laittaa jotain pientä (X)HTML-huttua, sillä haluammehen luoda laadukasta merkkausta. :–)
Laitetaan nuo sivutuslinkit järjestämättömän listan sisään. Koen tämän järkevimmäksi ratkaisuksi, mutta toki linkit voi kääriä vaikkapa p-elementin sisälle. Tässäpä kuitenkin sivutuskoodit käärittynä ensin ul-listan sisälle ja sitten kumpikin sivutuslinkki lista-alkion sisälle:
<txp:if_individual_article>
<ul>
<li><txp:link_to_prev>Edellinen artikkeli</txp:link_to_prev></li>
<li><txp:link_to_next>Seuraava artikkeli</txp:link_to_next></li>
</ul>
</txp:if_individual_article>
<txp:if_article_list>
<ul>
<li><txp:older>Edellinen sivu</txp:older></li>
<li><txp:newer>Seuraava sivu</txp:newer></li>
</ul>
</txp:if_article_list>
Sehän näyttää jo melko hyvältä. Paitsi. Mitäs jos tuollaista edelliselle tai seuraavalle sivulle näyttävää linkkiä ei tulosteta? Että jos ei ole lainkaan toisia artikkeleita, joihin voisi siirtyä tai jos ei ole toisia sivuja… Tällöinhän ruudulle voi tulostua jotain tällaista:
<ul>
<li></li>
<li></li>
</ul>
Ei hätää. Textpatternissa on osattu ajatella. Tätäkin. Voimme nimittäin sulloa noihin sivutuksen toteuttaviin linkkeihin tällaisen pienen koodin: showalways="1". Se ei tulosta tuollaista sivutuslinkkiä, vaan linkille annetun linkkitekstin. Tällöin mahtava XHTML-merkkauksemme ei muutu ihan vallattomaksi.
Tässä vielä lopputuote sivutuksen toteuttamista varten:
<txp:if_individual_article>
<ul>
<li><txp:link_to_prev showalways="1">Edellinen artikkeli</txp:link_to_prev></li>
<li><txp:link_to_next showalways="1">Seuraava artikkeli</txp:link_to_next></li>
</ul>
</txp:if_individual_article>
<txp:if_article_list>
<ul>
<li><txp:older showalways="1">Edellinen sivu</txp:older></li>
<li><txp:newer showalways="1">Seuraava sivu</txp:newer></li>
</ul>
</txp:if_article_list>
Sivutukselle voi tietysti antaa myös CSS-selektorin jos halutaan vähän viritellä sivutuksen ulkonäköä. Sen voi laittaa vaikkapa aloittavan ul-tagin sisälle, jolloin päästään kopeloimaan kaikkia sen sisällä olevia tavaroita.
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.
Blogimerkintää "Sivutuksen luominen Textpatternissa." muokattiin viimeksi 5798 päivää sitten, eli maanantaina. Kirjoitukseen on julkaistu kommentteja 6 kpl. Kaikki kirjoituksen saamat kommentit löytyvät suoraan tämän tekstimötikän alapuolelta.
Selaat tällä hetkellä blogimerkintää Sivutuksen luominen Textpatternissa. Se julkaistiin 18. ä. 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!