Blog — tehnična referenca
Ta stran opisuje označevanje, hrambo podatkov, upravljalne plošče in vmesnike paketa. Za uvod glejte Pregled, za prvi prispevek Hitri začetek.
Blok metapodatkov strani
Stran postane prispevek tako, da nosi blok <wk:blog>. Blok ničesar ne izriše; opisuje stran, na kateri stoji, in potuje z njo, ko se stran kopira.
| Lastnost | Pomen | Vrednosti |
|---|---|---|
type | vrsta zapisa | post, page |
format | oblika besedila strani | dokuwiki, markdown |
blog | ime bloga, ki mu prispevek pripada | prosto |
status | stanje objave | draft, pending, scheduled, published |
publish | čas načrtovane objave | ISO 8601 |
created | čas nastanka | ISO 8601 |
author | prikazano ime avtorja | prosto |
slug | kratko ime za povezave | prosto |
comments | stanje komentarjev | enabled, closed, disabled |
image | slika prispevka | ID predstavne datoteke |
tags | oznake, ločene z vejico | prosto |
Dve vrednosti stojita kot podelement in ne kot lastnost, ker redno segata čez več vrstic: <excerpt> za napovednik in oba opisa za iskalnike in družbena omrežja.
Seznami
Označevanje zahteva zaključno oznako; nastavitve stojijo v njej, po ena v vrstici. Enovrstična oblika ne prime in ostane besedilo na strani.
<blog list> blog wk limit 10 tpl wk </blog>
<blog> in <wk:blog> sta si podobna in počneta nasprotno: <blog> našteva prispevke, <wk:blog> opisuje stran, na kateri stoji. V hišni obliki se seznam zato imenuje bloglist.
| Vrsta | Učinek |
|---|---|
list | prispevki bloga, kot napovedniki |
pagination | listanje seznama na isti strani |
related | prispevki z največ skupnimi oznakami |
recentcomments | najnovejši komentarji |
newform | obrazec „ustvari nov prispevek“ |
tagcloud | oblak oznak |
tagsearch | seznam zadetkov za eno oznako |
<blog archive> ne stoji v nobenem seznamu dovoljenih vrednosti v kodi in pade v privzeto vejo: ustvari običajen seznam in tega ne javi. V zalogi strani te namestitve se to označevanje nikjer ne uporablja.
Nabori predlog
Nabor predlog določa videz seznama. Priloženi so default, wk, wkbizway in wkbizwayteaser. Nastavitev tpl v seznamu izbere nabor; brez nje velja default.
Časovno načrtovanje
Prispevek s status=„scheduled“ in časom publish v prihodnosti ostane neviden, dokler ta čas ne nastopi. Preklop opravi vzdrževalna naloga wikija: stanje zapiše v blok strani in pri tem ustvari običajno različico. Ni posebne storitve načrtovanja in ne procesa, ki bi tekel trajno — brez prometa na wikiju tudi razpored ne napreduje.
Več blogov
Blogi se razlikujejo le po imenu v nastavitvi blog. Drugi blog nastane tako, da prispevki nosijo drugo ime in seznam vpraša po tem imenu. Ni upravljanja blogov, ni ustvarjanja ne brisanja; blog obstaja natanko toliko časa, kolikor ga kakšna stran imenuje.
Hramba podatkov
Stran je resnica, zbirka podatkov je iz nje izpeljano kazalo. Nahaja se v datoteki data/meta/wkblog.sqlite3 in vodi tabele entries, comments, tags, subscriptions, optin in opts.
Kaj ponovno indeksiranje obnovi in kaj pusti pri miru
Ponovno indeksiranje znova zgradi projekcijo iz strani. Obnovi se vse, kar stoji v bloku: naslov, stanje, razpored, blog, oznake, napovednik. Nedotaknjeno ostane vse, kar nima ustreznika na strani: komentarji, naročnine, zapisi potrditve in stanje razširjanja. To so dejstva o dogodkih zunaj wikija; ponovno indeksiranje jih ne more ne izpeljati ne uničiti.
Kopiranje strani v drug wiki je drug primer: tja potuje le stran, torej le blok. Komentarji, naročnine in stanje razširjanja ostanejo.
Stanje razširjanja
Šest ničelnih stolpcev v entries beleži, da in kdaj je bil prispevek deljen na družbenem omrežju. Uredništvo to vpiše ročno; ni samodejne objave na omrežje. Namerno ni del bloka: stanje razširjanja ni avtorska navedba strani, temveč ugotovitev o nečem, kar se je zgodilo zunaj wikija.
Izpad filtriranja dostopa ni videti kot napaka
Osem rutin filtrira javne sezname po ravni dostopa do strani. Če to filtriranje odpove — denimo zato, ker funkcije zbirke po selitvi niso prijavljene — ni sporočila o napaki. Pojavi se preveč prispevkov.
To je najneprijetnejša oblika izpada: v obratovanju se ne loči od pravilnosti. Prevzem, ki čaka na izjemo, čaka zaman.
Namestitev naj zato trajno hrani:
- vsaj en objavljen prispevek, ki anonimno ni berljiv,
- pričakovano število anonimno vidnih prispevkov, določeno vnaprej.
Preverja se javni seznam, ne upravljalni: slednji je tako ali tako za preverjanjem dovoljenj, izpad pa se pokaže le tam, kjer šteje anonimni obiskovalec. Zapora sama sodi v nadzor dostopa wikija in se s paketom nikoli ne dostavlja.
Vgrajenega SQL ni
Ves dostop do zbirke poteka prek imenovanih rutin z vezanimi parametri. Vsaka rutina je par datoteke .sql in manifesta; ime tabele je tam zapisano v čistem besedilu, ne v kodi PHP. Kdor želi spremeniti poizvedbo, spremeni datoteko rutine. Glejte SQLite Data Studio.
Komentarji
Tri stanja
enabled— komentarji so mogočiclosed— obstoječi komentarji ostanejo vidni, novi niso mogočidisabled— na tej strani ni komentarjev
Ko je pregled vklopljen, se nov komentar najprej pokaže skrit in postane viden šele po odobritvi. Upravljalni zaslon vodi čakajoče komentarje in njihovo število prikaže kot značko na delovni plošči.
Avatarji in kaj z njimi zapusti strežnik
Privzeto se avatarji ne pobirajo s tujih strežnikov. Če se vklopi zunanja storitev, za vsak prikazan komentar hišo zapusti zahteva s kontrolno vsoto naslova. To je zavestna odločitev in ne privzeta nastavitev.
Upravljalni zaslon
Zaslon je na ?do=admin&page=wkblog.
Pregled odgovarja na uredniška vprašanja
Šest številk: objavljeno, osnutki, čaka na pregled, načrtovano, komentarji za pregled in stanje nege SEO. Vsaka številka vodi v ustrezno filtriran seznam.
Seznam prispevkov filtrira po stanju
Poleg naslova in bloga seznam filtrira tudi po stanju objave. Filter se ohrani pri listanju.
Skupinska dejanja spremenijo stran, ne kazala
Stanje, blog in stanje komentarjev stojijo v bloku strani. Skupinsko dejanje nad njimi zato zapiše stran po običajni poti shranjevanja: preveri dovoljenja, upošteva zaklep urejanja in ustvari pravo različico. Šele nato se osveži kazalo. Ko je prispevek preskočen, sporočilo navede razlog ločeno — se pravkar ureja, ni dovoljenja, strani ni več — ker šele razlog pove, kaj storiti.
Oznaka „izpostavljeno“ je izvzeta: je obratovalno stanje zbirke in dosledno ne ustvari različice.
Vključitev v delovno ploščo
Paket ne riše lastne delovne plošče. Svoje dele odda tisti, ki že obstaja: navigacijo kot prikaz v primarni stranski vrstici, zaostanek pregleda in trenutno mesto kot podatka statusne vrstice, značko s številom čakajočih komentarjev in dva ukaza. Glejte wkfluentui.
wkidentity ponovno indeksiranje, naknadna vgradnja prenosljivih blokov in skupinsko brisanje komentarjev zahtevajo drugi dejavnik, dokazan za sejo. Brez wkidentity se paket vede nespremenjeno.
Nastavitve
Nastavitve so v upravitelju nastavitev wikija pod imenom paketa. Urejajo privzeto stanje novih komentarjev, privzeti blog, privzete oznake, obveznost pregleda komentarjev, nastavljanje datuma v obrazcu za urejanje in sprejemanje povratnih povezav. Neveljavna vrednost se ne prevzame; tedaj velja privzeta.
Vmesnik za programe
Paket ponuja ploščo za oddaljeni klic wikija. Ustvarja prispevke, jih bere, spreminja stanje in vzdržuje oznake. Vsak klic gre skozi isto preverjanje dovoljenj kot uporabniški vmesnik in pri pisanju ustvari isto različico; poti, ki bi obšla stran, ni.
Vedenje v posebnih primerih
- Stran brez bloka ni prispevek, tudi če v zbirki obstaja vrstica.
- Izbrisana stran izgubi svojo vrstico ob naslednjem dostopu do zapisa.
- Neznana vrsta v seznamu pade nazaj na
listin to javi. - Če zbirke ni, se plošče izklopijo, namesto da bi stran propadla.
Razmerje do predhodnega paketa
Paket je razvejitev BlogTNG. Razvejitev je bila mehanska, nadaljnji razvoj ni: prenosljivi blok metapodatkov, druga oblika besedila, upravljalni zaslon, časovno načrtovanje in plošča za oddaljeni klic so hišni dodatki. Stari naslov vira ostaja dosegljiv zaradi združljivosti.