, statamic 101,,,,, 2,,,,,,,,, 13,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, statamic er en moderne php cms, som virkelig gør en indsats for at være let og intuitiv brug.fra en flad fil design til brugen af teknologier som nedskrives, og yaml, man kan opnå et fremragende arbejde, uden at nogen regler overhovedet. i denne artikel, vil vi se på processen fra anlæg til oprettelsen af en grundlæggende portefølje.,,, med en flad fil design, opsætning er så enkelt, som udvinder zip fil du downloade fra statamic websted.der er ingen database med alle de indhold og indstillinger er lagret lokalt i en lang række forskellige sager, hvilket også betyder, at man automatisk backup og versioning på alle deres indhold, hvis du bruger noget i retning af sted. med indhold, der udvindes, lad os tage et kig på statamic struktur.,, filen struktur, der er mere eller mindre fem forskellige mapper, vil de sandsynligvis være i kontakt med, og de er:,, _config, hvor alle dine indstillinger er afholdt, _content, er, hvor du sætter din nedskrives filer, _add-ons, er for statamic tilføjelser,,, _themes, er, hvor de bygger deres tema,,, aktiver, hvor du kan stikke ressourcer til deres område, og disse har de følgende fire foldere, som de sandsynligvis ikke vil røre direkte:,, _app er hjem for statamic egne kildekode, _cache, hvor statamic depoter alle deres indhold, _logs, hvor statamic vil gemme dine timesedler, administration, er statamic admin - panel, det første skridt i hver statamic lokalitet er at forme dets muligheder.,, konfiguration, alle konfiguration filerne er i _config folder, som beskrevet ovenfor.den vigtigste sag, du skal se det, indstillinger. yaml,.,, hvis du er ny yaml, så du skal vide, at det er et dataformat, svarende til json, bortset fra at det er meningen, at det skulle være et mere menneskeligt læsbar format.det gør det ved ikke at kræve, at folk som semikolon eller anførselstegn, men det får sin struktur fra placering og fordybning.,, settings.yaml, fil er veldokumenteret, så skulle du ikke har et problem med det.nogle af de muligheder, de vil sikkert gerne se på, er følgende:, _license_key: angiv dit kørekort centrale _site_name: min portefølje _site_url: http: //localhost: 7000 _theme: portefølje _taxonomy: - sprog _log_enabled: det er rigtigt _cookies.secret_key: en tilfældig nøgle, de fleste af dem er ret ligetil, som om kørekort, din hjemmeside er navn og url.det tema, som tema mulighed sæt mappen til last.vi vil komme ind på om et øjeblik, men et tema i det væsentlige er det sted, hvor du angive, hvordan de forskellige sider på deres websted vil arbejde.vi skaber vores egen tema, så du kan kalde det, hvad du vil.jeg valgte "mappe". den anden mulighed er et system kaldet taksonomi.hvis du nogensinde har brugt noget som wordpress, så ved du, hvad det er til.det giver dig mulighed for at tilføje en fastsættelse eller "type" for hver enkelt stilling, og du kan bruge disse taxonomies til at filtrere deres indhold og skabe skik sider for disse grupper. jeg vil kun tilføje en taksonomi, sprog, taksonomi, fordi der i vores eksempel portefølje, kommer vi til at specificere hver arbejder er programmeringssprog.du behøver ikke at skabe en taksonomi for hver skik ejendom.vi skal have andre ting i vores portefølje, som forbinder og beskrivelser.en taksonomi er for områder, hvor der er flere indrejser har til fælles, og for områder, der måske vil skabe en skik side.,, log_enabled, hvori der drejer sig om skovhugst, så du kan se de problemer, der kommer fra admin - panelet.de vil blive opbevaret i den mappe, _logs, vi tidligere har set.endelig den sidste mulighed, jeg nævnte, er den hemmelig nøgle, der er anvendt til at kryptere den kage, denne sag kan blive reddet, men før vi går på indholdet, lad os tage et øjeblik til at oprette porteføljen model, så vi kan se, hvad vi laver,.,, tema grundprincipper, som de fleste moderne rammer, når du lad en side, du kan bygge det op fra flere genanvendelige komponenter.en side i statamic består af en, layout,,, - model, og et indhold fil.både layout filer og - modeller kan eventuelt også være af endnu større stykker kaldet delvise.,, udformning, er den ydre skal, hvor din model vil blive placeret.det anvendes normalt til at holde boilerplate html kode som hoved afsnit, samt den grundlæggende organ, at alle sider af det her layout skal komme fælles biblioteker på bunden af din fil.,, model, er et specifikt syn for en enkelt side.du kan få en hjemmeside - model, en kontakt side model, og så videre.du behøver ikke at skabe én pr. side, men jeg vil anbefale en pr. type af side. i disse skabeloner, du har evnen til at bruge variabler, opbevares i det faktiske indhold filer.f.eks. siger, at du har brug for en side, der viser et indeks for bøger du læser, og så den anden side til at vise en liste over viser, du ser.i stedet for at kopiere det meste af kode for hver side, du kan skabe en model for at vise en liste over ting, og så trækker i detaljer, som liste for at hente fra indholdet fil.,, indhold fil, - som navnet antyder, er den faktiske indtægt, der udvises.den kan variere fra ting som et virkeligt enestående hjemmeside, til en enkelt blog indrejse.vi vil få dem i flere detaljer i et øjeblik. nu i stedet for manuelt at skabe alle de forskellige komponenter, statamic giver en slags første skabelon, giver dig en grundlæggende struktur for at komme i gang.du kan downloade tema mappe fra github. bare placere hele mappen til, _themes, fortegnelse, og omdøbe den mappe til portefølje (som det er temaet navn vi erklærede i indstillinger fil).du er også nødt til at omdøbe den, kindling.js, fil fra er mappen og, kindling.css, fil fra css adresseregister for portfolio.js, og portfolio.css, som der er et særligt mærke, til at trække disse automatisk. det er alle her, vi har brug for nu, men for at få en bedre idé om, det, jeg talte om, med hensyn til indretning og skabelon, lad os kigge på filerne.til at begynde med at åbne filen, der hedder, default.html fra, layout, mappe.dette svarer til den misligholdelse, indretning, som du måske har gættet, <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title>{{ _site_name }}</title> <link rel="stylesheet" href="{{ theme:css }}"> </head> <body> {{ layout_content }} <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> <script src="{{ theme:js }}"></script> </body> </html>,Like I mentioned earlier, the layout is a good place to put code that is required on multiple pages (or templates rather), which is why the default layout in this file just contains the basic outline of an HTML file. vi har ikke rigtig talt om det endnu, men statamic kommer med sin egen blive motor, som er let at samle op.du er dybest set bare et mærke, hvis du vil have noget, der indsættes i lighed med styret, hvis du er bekendt med, at. denne udformning indeholder et par brikker, som jeg troede, jeg ville gå igennem, hvoraf den første er, _site_name,.dette mærke, henviser til den ejendom, der blev oprettet i den, settings.yaml, fil.du vil finde denne konvention i hele statamic.du kan sætte yaml valgmuligheder - enten på sådan her, eller endog pr. sag grundlag, og du kan få disse muligheder er lige ved at sætte et mærke med deres navne i dine skabeloner. den næste øremærke, der rent faktisk kommer op to gange, er de, tema, tag.hjælpere i statamic er mere som uafhængige moduler, så de kan have flere forskellige funktioner, der er knyttet til samme navn du adgang til de enkelte funktioner med et kolon og så navnet på kommando, du vil have.,, tema, et handler om lastning i midler til netop dette tema.den kan bruges til at trække på ting som manuskripter og stylesheets, men også ting, som billeder og delvise.det er en funktion, der gør det muligt, at du hjælper bare give navnet på den ressource, de ønsker, og det vil udfylde vejen til de nuværende modeller fortegnelse.så for eksempel, hvis du skulle skrive: {{tema: er src = "understrege. j 'er"), der skal erstatte det med et link til en fil ved navn, underscore.js, inde i den nuværende tema er js mappe.som standard, hvis ingen src parameter er fastsat for j 'er eller css kommando, det vil påtage sig de henviser til en er eller css fil med navnet på det aktuelle emne, og det er derfor, vi omdøbte de filer for at matche; det er kun et spørgsmål om bekvemmelighedsflag, så vi behøver ikke at angive dem, og det kan kilde lidt. den næste, der kommer, {{layout_content}}.dette svarer til udbyttet i andre blive motorer, og det dybest set betyder, hvor den indre skabelon bør indsættes. det sidste, jeg ønsker at gøre i denne sag er at fjerne forbindelsen til jquery, fordi jeg vil ikke bruge det, hvis du vil, så kan du naturligvis overlade det til næste). lad os gå videre til misligholdelse skabelon fil (, skabeloner /default. html).det burde være tomt.for uddannelse er skyld, lad os tilføje et øremærke, {{indhold), som fastlægger indholdet af denne side blive rig. så at opsummere, når du går på en side, vil den første last layout fil, og hvor, {{layout_content}}, tag er placeret dette model vil blive indsat.denne model vil så bare produktion uanset den aktuelle side har indeni. med det gjort, redde disse filer, og lad os komme videre med indhold, indhold, indhold i statamic er specificeret i nedskrivning af filer som standard, og den manglende fil ladt kaldes, s. md.på samme måde som en standard webserver. hvis ikke det vil belastning er specificeret, statamic læsser side. cand. med. det er også værd at bemærke, at de ruter og url forbindelser i dit sted, vil blive defineret af, _content, fortegnelse.hvis man f.eks. skabe en folder, der hedder, demo, i, _content, fortegnelse, og i en fil ved navn, link. md, vil det svare til url, /demo /link.hvis du en, page.md, fil indenfor, vil det blive ladt, hvis du navigere, /'/, da det er den manglende fil navn. statamic kommer med en demo indhold, men du kan bare slette alt indenfor de, _content, adresseregister for dette eksempel (eller flytte det til side til nu). lad os begynde med en grundlæggende hjemmeside.på grund af det, _content, fortegnelse, skabe en fil ved navn, page.md, med følgende: - - - titel: hjem - - -velkommen til {{navn}} side, alle filer er opdelt i to sektioner indhold; yaml front og indhold.den øverste del (mellem stiplede linjer), hvor du kan sætte standarden yaml specifikt til denne sag, og er en god måde at fastsætte muligheder til at justere deres model filer.den anden del er fradraget område, hvor gjorde du af indholdet af den faktiske side.du kan bruge standard nedskrives samt statamic hjælper hundetegn. denne side vil belastning med misligholdelse, layout og skabelon filer, sætter vi bare op, men hvis du vil have det til at anvende forskellige, kan de angive disse som muligheder i yaml afsnit på toppen af _layout, og _template hhv. hvis du skaber en server på grund af deres statamic fortegnelse:, php - s localhost: 7000, - - og så navigerehttp: //localhost: 7000, i din browser, du burde se h1 - tagfat med vores velkomment budskab. det er alt, du behøver at vide, at skabe sider i statamic, og hvis du bygger en forholdsvis statisk sted, ville det være nok.men for mange steder, vi skal være i stand til at tilføje dynamiske data, som kan tage form af en blog, butik, og i vores tilfælde portefølje virker.,, angivelser, der er ingen database i statamic, så den slags oplysninger lagres i nedskrives filer ligesom side, vi lige har bygget. selv om et par ting, blev gjort til de indføre flere elementer at optimere ting, og at få det til at fungere i administrationen. første du kan navngive filerne med en særlig dato format, så de kan sorteres og filtreret med dato.du gør det med præ - indtil afsnit med et år måned, dag, mønster.hvis de ønskede at skabe en post, der hedder "foobar" ville du hedder det sådan:, 2013-09-15-foobar. md, indstillinger stillingen kræver ind foran sig i toppen, og indholdet er henført under.det følger formatet af sider, som beskrevet ovenfor. og dette er ret sejt, det svarer til manuelt ind stillinger i en database i et traditionelt system.der er en anden mulighed.statamic kommer, dog med en virkelig rart administration, som kan gøre det hele for dig, men for at få sat det op, vi er nødt til at fortælle det, hvilke områder denne type adgang skal have.dette vil ske i en fil på passende måde ved navn, områder. yaml,., så vores eksempel, lad os skabe en mappe inde i _content fortegnelse ved navn, fungerer, og i, fungerer, lad os skabe et dossier, der indgives, områder. yaml,.i, fields.yaml, fil, vi er nødt til at præcisere, hvilke egenskaber vores angivelser indeholder, og de forskellige former for hver af disse indstillinger. du kan angive deres fieldset (listen over områder) i, _config /fieldsets /, statistik, og træk i en definition, eller kan du bare ind i definition her eller du kan gøre begge dele for at udvide en eksisterende definition).for eksempel er jeg bare den definition, idet vi ikke genbruge det overalt: type: dato områder: sprog: type: et display: programmering krævede sprog: korrekt beskrivelse: type: teksten angive: beskrivelse, der kræves: falske link: type: tekst display: forbindelse krævede: sande indhold: type: skjult, den første ejendom statamic bare siger, at vi ønsker, at disse adgang til filer på date ejendom og navngives på passende vis.vi åbner en yaml objekt, der hedder, områder, som indeholder alle de egenskaber, af vores punkter. det første er, sprog, område, og hvis du husker er taksonomi vi skabte i, indstillinger. yaml,.indenfor hver ejendom har vi brug for at fastsætte dets type (eller det misligholder en tekst boks), dets display tekst (som standard til ejendom navn), og om det er nødvendigt.der er andre muligheder, kan du sætte, herunder instrukser og standardværdien, du kan se mere information om disse muligheder på statamic websted.sideløbende med disse indstillinger, forskellige område typer kan har deres egen skik muligheder. for, sprog, input, det bruger, mærke, type, som giver dem mulighed for at fastsætte flere mærker for denne mulighed.det er bare en anden type input til ind i sin værdi i administrationen.du kan se alle de forskellige fieldtypes i statamic dokumentation eller på de officielle statamic noter under fieldtypes.,, beskrivelse og sammenhæng, er stort set det samme.de vil begge være tekst kasser, undtagen et, vil være nødvendig, og til de andre ikke.ud over de områder, de nævner, alle oplysningerne, vil komme med en titel og indhold.vi vil ikke have et indhold inden for vores arbejde, de vil være mere som forbindelser, så jeg har sat den til skjulte. det sidste skridt, før vi går til administration er at skabe en, page.md, fil i, bygge - og anlægsarbejder, fortegnelse.det er ikke nødvendigt, men administrationen vil forsøge at få titlen på dette punkt - fra her, så er det en god ide at placere det.for at gøre det, skabe en, page.md, fil i, bygge - og anlægsarbejder, folder med titlen til "værker": - - - titel: virker - -, administration, for at komme ind i administrationen, skal vi først skaber en bruger.det er en simpel yaml fil i den ud, mappe.navnet på den fil er brugernavn, de skal bruge til at logge på og i de filer du konfigurere brugerens detaljer og kodeord. lad os skabe en ny bruger et brugernavn, redaktør.vi gør dette ved at skabe filen, editor.yaml, inde i den, _config /brugere /, mappe.indsæt følgende data (undtagen med dine oplysninger i stedet for min):, - - first_name: gabriel last_name: manricks roller: [admin] e - mail: [email protected] kodeord: kodeord - - - redaktør på denne portefølje, de fleste af disse kolonner er ret ligetil, og jeg tror ikke, de har brug for en forklaring.det eneste område, det er værd at nævne den, roller, hvori der.i øjeblikket, administration, er den eneste mulighed, men i fremtiden vil være, hvor du ville være i stand til at tilpasse sig brugerens redigering tilladelser. det er også værd at nævne, at det password bliver ikke almindelig tekst.efter den første adgangskode, statamic vil få kodeordet sammen med salt og omfatte de her i stedet for. alt efter den stiplede linjer skal opbevares som indhold for brugerne, og som kan bruges som en slags bio for dem. nu redde denne fil, og hvis deres web - server er stadig i drift, navigere til /admin, i din computer.dette vil åbne login konsol, hvor man kan opføre disse egenskaber.første gang du logger på, du bliver nødt til at gøre det to gange, først hash kodeordet, og anden gang til rent faktisk at logge ind.,,, statamic login, når du er inde i, du vil se en liste over vores sider.omfattet er vores hjemmeside samt er ind - type.lad os se på, hvad vores marker erklæring gjorde for os.klik på skabe forbindelse inden for de arbejder,.,,, du bør se en god form, der omfatter alle de områder, der er anført, og den titel.forsøge at tilføje nogle stillinger til at teste det.,,, med nogle stillinger, oplagres, vi har afsluttet første runde.nu ved du, hvordan skaber sider, temaer, brugere og angivelser, det er et godt første skridt.men der er meget mere, statamic har at tilbyde.,, blive motor, med nogle stillinger er rart, men det ville være bedre, hvis vi kunne vise dem på en side.det bliver vi nødt til at redigere misligholdelse model. det bliver vores første reelle interaktion med de omfattede blive motor, men bare rolig, statamic er intuitiv design gør det nemt at samle op, på en fuldstændig liste over tilgængelige, kan du tage et kig på statamic dokumentation.det, vi virkelig har brug for, for eksempel er, angivelser, et, som anvendes til at trække i angivelser fra en særlig folder i, _content, fortegnelse.der er en masse valgfrie egenskaber, som gør det muligt at filter ved aftale eller af betingelser, som taxonomies eller faste ejendomme.We are going to keep it simple and just list the properties by date (which is the default).,Here is the complete new default template (,templates/default.html,):, <h1>Portfolio</h1> <table> {{ entries:listing folder="works" }} <tr> <td class="lang"><p>{{ language }}</p></td> <td class="work"> <a href="{{ link }}"> <span class="title">{{ title }} - </span> <span class="desc">{{ description }}</span> </a> </td> </tr> {{ /entries:listing }} </table>,In this code we are creating a table and looping through all posts in the '- fortegnelse.den slags blok hundetegn, hvor du mere html indenfor, tildele nye placeholders.bortset fra, at der er adgang til ting, som alle post - attributter, du får også særlige udsending variabler, som kan fortælle dig ting, som det løbende indeks, eller om det er første eller sidste post.vi bruger ikke nogen af disse variabler.vi har brug for, er at vise den titel, sprog, beskrivelse og sammenhæng.men hvis du fylde den side i deres browser, vil du sikkert er klar over, at i stedet for at vise det sprog, står der "system". det er, fordi vi sætter denne ejendom til en type, mærke, hvilket betyder, at det kan have mere end ét sprog.selvom du måske har kun ét sprog, det stadig er oplagret i et system.heldigvis statamic kommer med modifikatorer.,, modifikatorer, til sidst i denne vejledning, lad os se på et par modifikatorer, som vil gøre det muligt for os at få denne side endnu bedre. den første og største problem er, at det sprog, dukker op.hvis man ser på de statamic noter, hele vejen til den nederste, venstre, vil du se et afsnit, der hedder liste genveje.mens det teknisk set ikke er modifikatorer, statamic tillader dig at sætte disse ord til udgangen af en liste med variabel, og det vil i stedet vende tilbage en snor repræsentation.det, jeg ønsker at bruge i denne situation, er den standard, _list, hjælper.hvad det vil gøre, er separate flere værdier i den vifte med et komma og rum, og det er det, vi vil have i vores situation. for at prøve det, erstatte, {{sprog), tag med {(language_list}}.genopfrisk din browser, og det bør nu være med sprog korrekt. næste lad os tilføje en transformer til titlen, for at gøre det store.hvis du nogensinde har brugt noget som den kloge - blive motor, det virker på samme måde.du tilføjer et rør til udgangen af den variable navn og så tilføje en transformer.i vort eksempel er man nødt til at erstatte indkaldelsen til {{navn}} med {(afsnit
statamic 101
Previous:fast: del 1