watt it kā taisās svētdien atjaunot Cibas kodu uz jaunāku versiju. Man nav zināms, kas tieši mainīsies, taču attiecībā uz S2 varētu parādīties šis tas jauns. Piemēram, komentāru saldēšana un FOAF skats. Lai nu kā, lai S2 koderi un dizaineri :) būtu gatavi, es publicēju iespējamās S2 koda izmaiņas. (Ja nu man izrādās taisnība un pēc tam slinkums.) Pieminēti tikai tie mainīgie un funkcijas, kas varētu būt izmainīti (pievienoti), salīdzinot ar pašreizējo core.
Vai kāds zina, vai ir pieejama Latvija laika ziņu RSS plūsma kaut kur?
Esmu slinks, gribu, lai ziņas nāk pie manis. :)
Vai kāds varētu, lūdzu, paskaidrot man, kāda ir atšķirība starp "pt" un "px"
mērvienībām (CSS)? Runa iet tieši par tekstu. Kuru no tām labāk izmantot
fontu izmēra noteikšanai un kāpēc?
Es kaut kur laikam lasīju, ka "px" nav īsti vēlams, jo dažreiz tas
ir atkarīgs no ekrāna izšķirtspējas, dpi vai kaut kā tāda. Vai otrādi.
Bet varbūt arī nelasīju.
Lai nu kā – kuru labāk izmantot burtu izmēra noteikšanai? Un "tāpēc ka.." :)
(CSS 2 rekomendāciju apskatīju. Atbildi neradu.)
Liels bija mans pārsteigums, kad, mēģinot izmantot S2 iebūvēto funkciju striphtml(),
lai atbrīvotos no HTML tagiem, apskatīju dīvainu kļūdas paziņojumu. Izrādās,
ka, lai gan tāda funkcija S2 valodā ir, tā nemazam nestrādā. Kompilators gan
laiž cauri bez problēmām, bet.. Nu, ja kāds grib redzēt to kļūdas paziņojumu,
tad pamēģiniet šo funkciju. :)
Lai nu kā, par laimi atradu citu funkciju, kas dara tieši to pašu. Un patiešām
dara. Rakstījis to ir
MageBoltRat.
Ja izmantosiet, pieminiet. :)
Mjā, tā kā striphtml() ir
iebūvētā funkcija, tad to nevar aizvietot, un tāpēc jāizmanto cits nosaukums.
Tāpēc striphtmlnew().
Varbūt kādam noderēs.
Šoreiz pamācīšu, kā kaut ko izvadīt random'ā. Piemēram, manam iepriekšējam
stilam žūrnāla augšā tika izvadīts kāds no manis noteiktajiem banneriem,
bet sānā – citāts no kādas dziesmas. Katru reiz pārlādējot lapu, tā izskatījās
nedaudz savādāk.
Šajā piemērā uzzināsi, kā izvadīt kādu no saviem noteiktajiem userpic'iem. Nevis to,
kurš uzstādīts pēc noklusējuma, bet gan jebkuru no tiem, kas uzlādēti uz servera
(lai gan ne tikai – var ņemt attēlu arī no citām vietām). Pēc tam beigās paskaidrošu arī, kas jāmaina, lai attēlu
vietā izvadītu tekstu – kādu
citātu, sveicienu vai ko līdzīgu.
Un tātad. Savā S2 layout slānī jāizveido globālā funkcija print_random_userpic(),
kas izvadīs nejauši izvēlētu lietotāja bildīti jebkurā vietā, kur vien būs
vēlēšanās. Šo kodu varēs izsaukt no jebkuras funkcijas vai klases savā stilā.
Un, protams, ka to var pielāgot pēc katra vajadzībām un gaumes.
Visupirms ir jātiek pie sava S2 slāņa koda. Lūk,
šōrtkats,
lai tiktu pie saviem slāņiem. :) Izvēlies vajadzīgo un nospied pogu
"Edit". Tagad Tev ir redzams Tavs S2 kods un Tev tikai jāatrod kāda vieta (kur
vien vēlies), kur ievietot zemāk esošo kodu.
Protams, jāaizvieto katra http://journal.bad.lv/userpic/####/#### teksta
virkne ar ceļu pie attēliem, kurus vēlies izmantot. Šajā vietā var izmantot
ne tikai userpic'us, bet kaut vai bannerus. Šis jau ir tikai piemērs.
Ņem vērā, ka, lai gan šajā piemērā tiek izmantoti seši attēli, tas nav ne minimālais,
ne maksimālais vērtību skaits – vari izmantot tik daudzus, cik vien vēlies.
Tāpat var arī droši mainīt izvadāmo HTML kodu pēc vajadzības, ja vien attēla
src atribūts paliek nemainīgs.
Lai izsauktu šo funkciju, vajadzīgajā vietā savā S2 slāņa kodā (kur vien tas
vajadzīgs) ievieto šo rindiņu:
print_random_userpic();.
Lielākoties tulkots,
saite.
Trūkums šādam risinājumam ir tāds, ka
nav iespējams noteikt attēla izmērus. Protams, ja ir zināms, ka visi izvadāmie
attēli ir vienāda izmēra, tad nav problēmu.
Pie izmēra iespējams tikt tikai defoltajam attēlam (tai lietotāja
bildei, kas uzstādīta kā "noklusētā"), piemēram, $.journal.default_pic.width un $.journal.default_pic.height (no
jebkuras funkcijas, kas ietilpst Page klasē vai tās apakšklasēs).
Bet ne šeit.
Lai izvadītu tekstu, ir tikai pavisam nedaudz jāpamaina iepriekš izmantotais kods.
( funkcijas kods )Nedaudz par funkciju ![]()
rand().
Patiesībā ir divas funkcijas ar šādu nosaukumu – rand(int
high) : int un rand(int low, int high) : int. Abos gadījumos
tā, kā jau redzams, atgriezīs integer tipa vērtību – kādu nejauši
izvēlētu skaitli. Pirmajā gadījumā tas būs starp 1 un $high ieskaitot, otrajā – starp
$low un $high ieskaitot.
Es centīšos pavisam vienkārši paskaidrot savu iepriekšējo pukstu ar elementāru un praktisku piemēru par klašu mantošanu un dažādajiem skatiem. Kods būs no mana slāņa, tāpēc ir skaidrs, ka tas darbojas. :)
Vienmēr jāatceras, ka, ja Tu vēlies savā slānī definēt klases metodi, tad
tās nosaukumam jāsākas ar lay_. Šeit – lay_print_skipsaites().
Tas tā ir tamdēļ, lai nerastos problēmas ar vienādiem funkciju nosaukumiem,
ja nu gadījumā core slānim
tiek pievienotas jaunas klašu funkcijas.
Manā piemērā tiek izvadītas saites, kas ļauj pārvietoties pa žūrnāla ierakstiem.
Piemēram, žūrnāla un draugu lapā tās norāda uz senākiem vai jaunākiem ierakstiem
(skip=20, piemēram), bet dienas skata lapā – uz nākošo un iepriekšējo
dienu. Tieši tāpat ir iepējams izveidot jaunu metodi, kas darbotos katra ieraksta
lapā. Vai arī, piemēram, mēneša lapā. Man tas nelikās vajadzīgs, bet tas ir
iespējams (EntryPage un MonthPage).
Pēc tam, lai izsauktu šo funkciju, vajadzīgajā vietā savā S2 slānī vienkārši
jāieraksta $this->lay_print_skipsaites().
Manā stilā tā tiek izsaukta no šādām vietām – RecentPage::print_body,
DayPage::print_body(), RecentPage::lay_print_minicalendar(). (Tikpat
labi es to būtu varējis izsaukt tikai no Page::lay_print_skipsaites(),
taču man bija vajadzīgs, lai saites atrastos dažādās vietās. Tāpēc tā.) Tā
tiks iedarbināta jebkurā skatā, pat "reply", bet, tā kā klasē "Page" šī
funkcija ir tukša (neko nedara) un atsevišķi priekš ReplyPage tā nav definēta,
tad, lai gan tā izpildīsies, tā reāli nemaz nenostrādās. Skaidrs?
Protams, es būtu varējis arī definēt atsevišķi to draugu lapai (FriendsPage::lay_print_skipsaites()),
taču tas īsti nav nepieciešams, jo FriendsPage klase tiek atvasināta
no RecentPage.
Piezīme Klašu funkcijām ir jāatrodas kodā pirms to
izsaukšanas (augstāk), citādi kompilators ziņos, ka nav atrodama tāda funkcija.
Vispirms definē, pēc tam izsauc. Šķiet, ka ar globālajām funkcijām tā nav. Un
vispār – galvenais, lai Page::lay_.. būtu pirms izsaukšanas. DayPage::lay_.. un
citi var droši būt arī zemāk.
Ceru, ka kādam tas viesa skaidrību un noderēs.
wasted? :)
Labots Izlaboju dažas koda kļūdas un neprecizitātes paskaidrojumos. Atvainojos par sagādātajām neērtībām. :)
S2 valodā visi žūrnāla skati (views) ir definēti vienā izkārtojumā (layout). Katru skatu skatu var aplūkot kā objektu, kas satur funcijas un mainīgos, kas var tikt izmantoti šim lapas tipam. "Page" pats par sevi ir kā lietussargs visiem pārējiem, saturot funkcijas un mainīgos, kas var tikt izmantoti visos skatos, un katrs skats var pievienot kaut ko īpašu (savas funkcijas un mainīgos) galvenajai lapai ("Page").
Page
"Page" ir pati augšējā klase visiem S2 skatiem. Tas nozīmē, ka visi
pārējie
"skati" izriet (rodas) no šī objekta. "Page" ir ievada
klase skatiem: kad Tu pirmoreiz raksti kodu savam izkārtojumam
(layout), funkcija, kas izvada visu informāciju, ir Page::print. Visi
pārējie skati ir "Page" apakšklases. Visiem pārējiem lapu tipiem būs iespējams
piekļūt un izmantot jebkuru "Page" klases funkciju vai mainīgo.
Šajā
lapā aprakstītas visas funkcijas un mainīgie, kas pieejami "Page" klasei.
Lai noteiktu, kādu lapu Tu tieši pašlaik skaties, katra "Page" apakšklase satur
mainīgo "view", kurš nosaka kāds lapas tips pašlaik tiek aplūkots. Šim mainīgajam
var piekļūt, izmantojot "view" mainīgo, kurš atrodas visos lapu objektos. (Tas
nozīmē, ka jebkurā "Page" klasē vai apakšklasē var vienkārši piekļūt "$.view".)
RecentPage – $.view == "recent"
Klases "Page" apakšklase. Šī ir pati žūrnāla lapa, nesenie ieraksti. Vecajā
S1 stilu sistēmā to sauca par "LASTN" skatu. "RecentPage" klase satur
dažas funkcijas un mainīgos, kas attiecas tieši uz šo lapu, piemēram,
izvadāmo ierakstu masīvu.
FriendsPage – $.view
== "friends"
Klases "RecentPage" apakšklases. Šis ir draugu skats, kurā tiek attēloti
visu Tavu draugu apkopotie ieraksti. Šī skata ieraksti satur nedaudz vairāk informācijas
(draugu krāsas) un ir pieejama papildus nosaukuma teksts draugu lapai,
kuru var noteikt līdz ar savu personālo informāciju. Visādi citādi nav
nemaz lielu atšķirību starp draugu un žūrnāla lapu.
(Patiesībā var arī vispār iztikt bez FriendsPage klases izmantošanas, ja
vien atceras, ka tā ir RecentPage apakšklase un savā kodā ievieto nepieciešamās
"$.view" pārbaudes. Tad gan jāiztiek bez draugu iekrāsošanas.)
YearPage – $.view
== "archive"
"YearPage" ir tas pats, kas kalendāra skats vecajā S1 stilu sistēmā. Šis
skatu tips satur informāciju par mēnešiem un katras dienas ierakstu skaitu. Šis
ir vienīgais skats, kurš nesatur nekādu informāciju par pašiem ierakstiem,
piemēram, ieraksta virsrakstu vai tekstu.
MonthPage – $.view
== "month"
"MonthPage" satur informāciju par visiem ierakstiem, kas veikti norādītajā
mēnesī. Šis skatu tips satur šo ierakstu metadatus, lai gan tam nav pieejami
ierakstu teksti vai lietotāja attēli. Šo skatu parasti izmanto, lai ģenerētu
norādītā mēneša ierakstu virsrakstu sarakstu.
DayPage – $.view
== "day"
Šis skats attēlo visus vienas dienas ierakstus. Informācija par pašu ierakstu
ir tieši tāda pati, kā RecentPage skatā. Tas nozīmē, ka tā satur ieraksta pilno
tekstu, virsrakstu, lietotāja attēlu, metadatus u.t.t. Ieraksti šajā lapā pēc
noklusējuma tiek kārtoti hronoloģiskā kārtībā, atšķirībā no apgriezti hronoloģiskās
kārtības, kāda tiek izmantota draugu vai žūrnāla lapā.
EntryPage – $.view
== "entry"
Atsevišķs ieraksts un šim ierakstam pievienotie komentāri. Šis skats satur pilnu
ieraksta informāciju, kā arī informāciju par visiem lietotāju atstātajiem komentāriem.
Šis ir viens no skatiem, kurš nosaka, kā ieraksti patiesībā izskatīsies.
ReplyPage – $.view
== "reply"
Lapa, lai atbildētu uz žūrnāla ierakstu vai komentāru. Šī lapa nosaka,
kā Tavs žūrnāls rīkosies, kad Tu atstāsi komentāru vai atbildēsi uz citu
komentāru. Tā satur īpašas funkcijas, lai ģenerētu atbildes formu, kā arī
informāciju par to, kā formatēt atbildes.
Tulkots no S2 HOWTO kopienas,
saite.
Šis jau reiz tika publicēts, taču atkārtot der. :)
Page
|– RecentPage
| |
| FriendsPage
|– EntryPage
|– ReplyPage
|– YearPage
|– MonthPage
|– DayPage
Šīs ziņas komentāros jūs varat rakstīt, ko vien vēlaties – jautājumus, ierosinājumus, sūdzības, idejas.. Jeb ko. Visu, kas vien kaut kā varētu būt saistīts ar šo kopienu un tamlīdzīgi. Šī ziņa šeit augšā paliks ilgi. Vai mūžīgi. Tāpēc, lūdzu, speriet visu, kas uz sirds, šīs ziņas komentāros. Vai patiešo žūrnālā.
Uzmanību! Droši vien jau vairāki būs ievērojuši, ka apskatot kādu S2 stila slāni HTML formātā, šis tas svarīgs ir pazudis. Tā ir. Kaut kur tur ir kļūda, kas ir zināma jau diezgan sen, bet izlabota vēl nav. Tā izpaužas tā, ka nokopējot šo kodu, tas gluži vienkārši nekompilēsies, jo būs pazuduši vairāki mainīgie. Arī ar manu stilu tā ir, bet tas tā nav vienmēr. Dažu stilu kodi tiek attēloti pilnībā kā vajag.
Risinājums (pagaidām). Ja vēlies publiskot savu slāņa kodu, tad citiem dod "Download" saiti, nevis "View as HTML". Tad nekas nepazudīs. Ja tev kāds ir iedevis saiti uz HTML formatēto koda attēlojumu, tad gluži vienkārši no adreses beigām vari nodzēst "&fmt=html". Un viss.
Bieži sastopama problēma, kā izrādās. Gadās, ka, lietojot Microsoft Internet Explorer 6, nav iespējams normāli iezīmēt tekstu. Šī problēma, lai cik dīvaini tas nebūtu, ir tieši ar sesto versiju. Ar piekto viss ir kārtībā. Lai gan tur ir citas problēmas.
Bieži vien, ja Tu centies iezīmēt tekstu, kas atrodas absolūti pozicionētos
elementos, tad tas nemazam nestrādā. Tiek iezīmēta puse lapas, taču ne tas
teksts, kuru vajadzēja. Šī problēma ir aktuāla tieši IE6, jo ar IE5 viss darbojās
lieliski.
Šī problēma atgadās tad, ja tiek mēģināts iezīmēt tekstu, kas atrodas zemāk
(vertikāli skatoties)
par lapas statisko saturu (parasti tas nozīmē jebkādu taga <body> saturu) un
tikai tad, ja pārlūks darbojas standards-compatible režīmā. Bet, kad
tas notiek, tas ir ļoti kaitinoši. Tici man. Un, ja netici, vari pārbaudīt
ar šo žūrnālu – tieši tā pati problēma.
Tagad neliela atkāpe teorijai. Kas tas tāds standards-compatible režīms?
Nu, tāds.. mazs, pūkains zvēriņš, daudz neēd..
Pārlūks, attēlojot jebkuru HTML dokumentu, darbojas divos režīmos – atpakaļsavietojamajā
(backward-compatible; Mozillas inženieri to sauc par quirks režīmu,
MS to nesauc nekā) un standartiem atbilstošajā (Mozillai – strict,
IE – standards-compatible).
Otrais režīms ir pēc iespējas tuvāk W3C rekomendācijām.
Režīms, kādā pārlūks
darbosies, tiek noteikts pēc HTML faila DOCTYPE. Vai tā neesamības. Īpaši lielas
jēgas no DOCTYPE norādīšanas nav. Bet tas tā ir pagaidām. Nākotnē tam būs lielāka
nozīme. Pagaidām tas skaitās labais stils tādu norādīt katram HTML failam.
Šajā DOCTYPE var norādīt gan to, ka tas ir HTML 4.01 dokuments, gan to, ka
tas ir XHTML 1.1 dokuments. Protams, ja pārlūkam kāds no šiem DOCTYPE izrādīsies
liels jaunums un pirmā dzirdēšana, tad tas izmantos savu iebūvēto, veco DOCTYPE
definīciju. Tas notiks arī tad, ja DOCTYPE netiks norādīts vispār. Tā ka nevar
teikt, ka no tā vispār nav nekādas jēgas. Parasti to norāda tad, ja web-lapa
tiek veidota tieši jaunākajām pārlūku versijām (piemēram, 6.), tiek izmantota
precīza elementu pozicionēšana un smalki piestrādāts pie CSS un DOM specifikāciju
ievērošanas.
Piezīme Starp citu, uzzināt, kāds režīms tiek izmantots, var
ar JavaScript palīdzību, izmantojot document.compatMode īpašību.
(Vienkārši dokumenta body
elementā ievieto script tagu un tajā ieraksti "alert(document.compatMode);".)
Paeksperimentē ar vairākiem pārlūkiem, pieliekot un noņemot gan XML prologu
(<?xml .. ?>), gan pašu DOCTYPE. Rezultāti ar Netscape un
MSIE atšķiras. (Heh.. protams!)
Īsumā Visas HTML 4.x/strict un XHTML DTD definīcijas ieslēdz standards-compatible režīmu,
vienalga, vai, definējot DOCTYPE, ir norādīts DTD faila URL vai nav. Tāpat
arī šis režīms tiek ieslēgts, ja, izmantojot HTML 4.x transitional un frameset
DTD failus, tiek norādīta to URL adrese.
Un tagad atpakaļ pie problēmas. Tātad, ja IE darbojas standards-compatible režīmā,
tad ir problēmas ar iezīmēšanu.
Risinājumi
1. neizmantot standards-compatible. Jā,
tā var. Tādā gadījumā var vai nu vispār nenorādīt DOCTYPE (fuj!), vai arī pirms tā pierakstīt
XML prologu "<?xml version="1.0" encoding="utf-8"?>" (enkoudings, protams, var būt cits).
Tas nostrādās. IE darbosies tajā režīmā, ko Mozillinieki sauc par quirks.
Patiesībā tas emulēs MSIE 5.x versijas pārlūku.
2. neizmantot absolūto pozicionēšanu. Stulbi.
3. neuztraukties par IE lietotājiem un ignorēt šo problēmu. Var! Lai vaino Microsoft'u,
nevis mani. :)
4.
Tom Gilder iesaka izmantot šādu haku:
Hmm.. Es to izpētīju. Es to izmēģināju. Tas strādā. Bet tā arī nesapratu tā
jēgu. Nu..
Kā tas darbojas un ko tas dara. Ir tāda nojauta, ka tas "izstiepj" body elementu
pa visu ekrānu (un tāpēc visi absolūti pozicionētie elementi tik un tā atrodas
body robežās). Tā ir? Uzminēju?
Lai nu kā, es ceru, ka vismaz kādam palīdzēju tikt vaļā no galvassāpēm bez medicīnas palīdzības, ja tas arī ir saskāries ar šādu problēmu.
Paldies
Kindai un
asdf'am par
informāciju. Šis lielākoties ir tulkots. Dažādi info avoti.
Saites:
1.
avots,
2.
avots,
3.
avots.
Daudziem vārdiem jaunajā S2 stilu sistēmā ir pavisam cita nozīme, nekā tā bija S1. Turklāt S2 lieto daudzus jaunus terminus, kurus daudzi varētu nezināt un nesaprast. Lai būtu saprotamāks, šeit daudzi no šiem jaunajiem vārdiem ir izskaidroti.
Šī vārdnīca tika rakstīta ar nolūku izskaidrot šos terminus saistībā ar S2, nevis vispār programmēšanā.
Mēs saprotam, ka šī vārdnīca var atbildēt uz vairākiem jautājumiem, vienlaikus radot jaunus. Tāpēc nekautrējies uzdot jautājumus, kādi tev radušies sakarā ar terminoloģiju. Centīsimies izskaidrot.
Šis ir tulkojums,
oriģināls
šeit (asciident).
Rakstot HTML, kā Tu parasti pieraksti krāsas?
vārdiem – moccasin![]()
![]()
2 (9.5%)
hex – #ffe4b5![]()
![]()
18 (85.7%)
rgb – rgb(255,228,181)![]()
![]()
1 (4.8%)
vārdiem – transparent – vienīgā krāsa, kuru lietoju :)![]()
![]()
0 (0.0%)
Kaut kad ziemā, kad Ciba tika atjaunota un parādījās S2 stilu sistēma, kāds
watt'am ieminējās,
ka viņam liekoties, ka S2 darbojas ātrāk par S1. Watt viņam nepiekrita.
Tomēr teorētiski darbojas ātrāk gan.
Speed
Internally, S2 code is compiled into a lower level language and run directly
when the page is
loaded. Unlike S1, no parsing is necessary at run time. Also, S2 outputs directly
to the client
instead of being entirely buffered in memory first like S1, since S2 doesn’t
need to do tons of
templating replacements at the end.
Trusted code by default prints direct to the client without going through the
HTML cleaner. Untrusted,
user-created layers send all their output through an HTML cleaner which removes
JavaScript
and other potentially harmful markup.
Popular S2 code & data is cached by the webserver.
Es centīšos aprakstīt S2 stila uzbūvi un kā tas viss darbojas. Ņem vērā, ka dokumentāciju rakstīšana nav mana stiprā puse. Bet ceru, ka vismaz kāds to sapratīs un izmantos. Kad es pirmoreiz redzēju S2 kodu, tad nesapratu, ko ar to vispār var izdarīt, lai pielāgotu savām vajadzībām. Tas likās neizprotami. Bet patiesībā S2 nav sarežģīta! Vienkārši izmēģini.
Klases Page ģimenes koks
Page
|– RecentPage
| |
| FriendsPage
|– EntryPage
|– ReplyPage
|– YearPage
|– MonthPage
|– DayPage
Tāda, lūk, ir S2 stila uzbūve. Tas ir koks, kurā attēlotas klases un to attiecības
ģimenē un pēc nāves (mantošana). :)
Page ir pati galvenā klase. Un, kas definēts šajā klasē, attiecas
uz visām atvasinātajām klasēm (bērniem).
Piemēram, manā stilā Page::print
funkcija satur visu kopā. Tajā atrodas pati HTML lapa un tiek izsauktas vajadzīgās
funkcijas, atkarībā no pieprasītā skata (friends, reply, calendar, ..). Man tas
ir ērti, jo visām lapām tiek nodrošināts vienāds izskats.
Bet var arī darīt savādāk. Piemēram,
mp stilā "Debesu Zvani" šādas
funkcijas Page::print nav vispār. Tur viss tiek salikts kopā katrai
lapai (RecentPage, FriendsPage, EntryPage, ..) atsevišķi. Es nezinu, kāpēc
M. tā darīja, bet, ja jau viņam tā likās ērtāk, tad – kāpēc gan ne. Viņa stilā
universālais saturs atrodas Page::print_custom_head un Page::print_plain_footer funkcijās,
kas tiek izsauktas katram skatam.
Vēl viena lieta, kas jāņem vērā rakstot stilu, ir, ka ir iespējams pārdefinēt
gandrīz jebkuru (ir izņēmumi) funkciju no core slāņa (layer). Šis
slānis ir brīvi pieejams jebkuram. Ja vēlies to redzēt, tad
spied
šeit. Šķiet, ka šo un visu turpmāko vaidzēja rakstīt pašā sākumā, bet nu
labi.
Katram S2 slānim, kuru Tu raksti, gan apakšā, gan virs tā var būt vairāki citi slāņi. Jebkurā gadījumā pašā apakšā būs pats galvenais slānis – core. Tālāk es aprakstīšu katru iespējamo slāni. Tie sakārtoti pretējā kārtībā, kā tie "klājas" viens uz otra. (Programmētājiem koki parasti ir ar saknēm uz augšu.)
( slāņi )Tātad pavisam kopā ir seši slāņi, no kuriem Tu vari darboties ar četriem (jo
pirmie divi ir iebūvētie):
=> core
=> i18nc
=> layout
=> i18n
=> theme
=> user
Jā, man patīk zīmēt šēmiņas. :)
Vēl viena lieta, kas iesācējiem varētu noderēt, lai viss sāktu darboties.
Lai varētu izmantot šos slāņus, ir nepieciešams izveidot stilu. Katrā stilā
var būt iekļauti (pievienoti, pieslēgti) no 1 līdz 6 slāņiem. Tam paredzēta
neliela, viegli saprotama forma.
Piezīme. Ja Tev ir vairāki stili, tad, zinot to ID numurus,
Tu vari apskatīties, kā, izmantojot šo stilu, izskatīsies Tavs žūrnāls. Tev
vienkārši žūrnāla adreses galā jāpieraksta "?s2id=xxxx", kur "xxxx" vietā ir
slāņa ID numurs.
Vēl viena piezīme. Lai apskatītos kāda cita lietotāja žūrnālu "savā stilā", :)
adreses galā pieraksti "?style=mine".
Ū, pats galvenais. Ja nu kāds to vēl nezina, tad pārmainīt lietojamo stilu
sistēmu ir iespējams
šeit.
Ņem vērā, ka, ja Tu lieto S1 un vēlies izmēģināt S2 sistēmu, tad vari to droši
darīt, jo Tavs S1 stils paliks neskarts. Tam patiešām nekas nenotiks un, salaižot
kaut ko galīgā pakaļā, varēsi mierīgi atgriezties pie vecā, labā S1. Kamēr
vien
watt nenometīs
serveri. :)
Daļa šī puksta ir nākusi no manis, bet lielākā daļa ir tulkota no S2 Manual (PDF fails, 230k). Vēlāk varbūt vēl.
Un tad mācekļi redzēja, kā Jēzus pārvērta ūdeni vīnā un jautāja Dievam: «How
the hell did he do that??»
Gabaliņš no Rowan Atkinson (plašāk pazīstams kā Mr. Bean) šova.
Man radās kāda, manuprāt, noderīga ideja, taču, vai tā dzīvos vai drīz mirs,
būs atkarīgs no jums. Esmu izveidojis jaunu kopienu –
style – un tā
paredzēta visam, kas saistīts ar stiliem (gan S1, gan S2), sava žūrnāla izskatu
un vispār related stuff* Sviesta Cibā. Varam diskusēt arī par vispārīgām web-tehnoloģijām – XHTML, DHTML, CSS, XML, XSL, ..
Tā ir atvērta, bez ierobežojumiem. Tā domāta, lai nesaprašanā nonākušie varētu
uzdot savus jautājumus, bet apskaidrību guvušie – padalīties (uz grābekļa
kāpšanas) pieredzē.
S2 darbojas jau vairākus mēnešus un ir radušies vairāki
jauki stili. Jau ļoti daudziem ir zināms
mp ar saviem Debesu Zvaniem
(savējie sapratīs :) ). Arī ar S1 ir izveidoti daudzi jauki stili, nu, piemēram,
munky. Sou – kāpēc
gan nepamācīt citus, kā tikt pie tāda izskata un īpašībām savam žūrnālam?
Uz
LiveJournal ir
vairākas kopienas par šo tēmu. Mums arī vajag! Un latviski. Turklāt mēs taču
esam pret patentiem. :)
Tātad, rakstiet tutoriāļus, uzdodiet savus jautājumus, aprakstiet problēmas
Cibā un personiskajā dzīvē. :) Cibiņi lielākoties ir ar gaišām galviņām un noteikti
centīsies palīdzēt.
«Es esmu d***ā galīgā, man nav, ko pasaukt palīgā.» :)
(No cita Rovana Atkinsona projekta – seriāla «Black Adder»)
_________
*related stuff – korelatīvās mantas :)