En av de store tingene med et CMS er at det lagrer all din nettsideinformasjon i en enkelt database (som et Excel-regneark), og gir deg enkel tilgang til å redigere den informasjonen i administrasjonen. Når du redigerer en side tittel, sammendrag eller kropps kopi, og klikk publisere, Du oppdaterer i hovedsak databasen med den endrede informasjonen. Men hva om du vil lagre tilleggsinformasjon knyttet til en bestemt innholdstype? En profilside kan for eksempel inneholde en gjentakende struktur av informasjon om den personen (Fornavn, Etternavn, Jobbtittel, osv.). Tradisjonelt vil alternativene være å re-skrive all den informasjonen hver gang, eller du må enten endre databasen (enten direkte eller skrive noen tilpassede skript for å gjøre det for deg) for å lage flere kolonner for å inneholde den informasjonen. Da må du endre brukergrensesnittet (brukergrensesnittet) for å gi brukeren tilleggsskjemafelter for å legge inn den informasjonen.
I Mura CMS blir hele prosessen forenklet med bruk av Utvidede attributter. I Mura-administratoren kan du strekke seg omtrent hvilken som helst innholdsnodetype (side, komponent, galleri, mappe osv.) Og legge til så mange ekstra felt du vil ha, alt uten å måtte trykke på databasen eller skrive noen kode.
I dette eksemplet skal vi lage en ny sidetype for en bok. I tillegg til tittelen vil hver bok ha følgende felt for innholdsadministratoren å fylle ut:
Forfatter
Utgivelsesdato
ISBN
Ny / Brukt
Pris
Det er tre deler involvert i å skape utvidede attributter:
Klasseforlengelse: Dette er basenoden du utvider (side, mappe, galleri, komponent osv.)
Attrbute Set: En gruppering av utvidede attributter, vist når brukeren redigerer innhold
Utvidede attributter: Individuelle felt for dataene du vil samle inn (som vi er oppført ovenfor).
Opprett klasseutvidelsen
Det første trinnet er å opprette klasseutvidelsen. Dette er hovedobjektet Type og SubType som vil huse alle de utvidede attributter. Slik oppretter du en ny klasseutvidelse:
Fra Mura Admin, gå til å velge Site Config>Class Extension Manager> Legg til klasseforlengelse.
Til Base Type Å velge Side.
Under SubType, type Bok Merk: Hvis du forlater "SubType" satt til "Standard", brukes alle utvidede attributter du lager til ALLE innholdsnoder av den typen.
Under Ikon, velg bokikonet for å knytte seg til bokens undertype.
Klikk Legg til.
Legg til utvidet attributtsett
Nå som du har din Page / Book Class Extension, må vi legge til noen utvidede attributter for elementene vi trenger for boken. Utvidede attributter grupperes i Attributt sett, omtrent som a i et HTML-skjema). Attributtsettene er adskilt visuelt i administrasjonen for å tillate modulær separasjon for brukeren.
Slik oppretter du et attributtsett:
Å velge Legg til > Legg til attributtsett.
Tast inn Bokdetaljer for Egenskapssettnavn. Dette settet inneholder alle detaljene vi trenger for hver bok.
For Container (Tab), å velge grunn~~POS=TRUNC (du kan velge alternative faner i Mura UI for organisasjonen)
Klikk Legg til.
Legg til utvidede attributter
Når du har fått ditt attributtsett opprettet, kan du legge til de enkelte utvidede attributter. Vi starter med å legge til et vanlig tekstfelt for bokens forfatter:
Innenfor din Bokdetaljer Attributt sett, klikk Legg til nytt attribut.
I Navn feltet, skriv inn AUTHOR. Merk: Det er viktig å navngitte variabelen basert på subtypen og Attributtens navn. For eksempel, hvis subtypen er 'Bok' og attributtet du ønsker å legge til, er 'tittel', bruk deretter 'productTitle' som den faktiske 'navnet' for attributtet i stedet. Hvis du har flere tilpassede utvidede attributter for nettstedet ditt, kan du enkelt og ved et uhell bygge to (eller flere) utvidede attributter med samme navn. Ikke gjør dette! I tillegg må du unngå å bruke noen av Mura standardformularfeltnavn. Dette er for å unngå skjemafeltnavnskollisjoner, ellers kan du utilsiktet ende opp med to skjemafelt med "Tittel" for navnetattributtet, en fra Mura, den andre fra ditt utvidede attributt.
I feltet Etikett skriver du inn den brukervennlige etiketten for feltet som vil vises til brukeren.
For Inngangstype, å velge Tekstboks.
Til tooltip, skriv inn et brukervennlig hint om hva som skal gå inn i feltet. Noe som "Vennligst skriv navnet på hvem som skrev boken" for å sikre at brukerne forstår hva dette feltet betyr.
Din komplette form skal se slik ut:
Klikk Legg til
For de gjenværende feltene, gjenta trinnene ovenfor med følgende detaljer for hvert felt:
Utgivelsesdato
Navn: bookReleaseDate
Merkelapp: Utgivelsesdato
Inngangstype: Tekstboks
Verktøytips: Vennligst velg datoen boken ble publisert
Validere: Dato (dette vil legge til en datovelger i feltet)
ISBN
Navn: bookISBN
Merkelapp: ISBN
Inngangstype: Tekstboks
Verktøytips: Vennligst skriv inn ISBN av boken
Ny / Brukt
Navn: bookNewUsed
Merkelapp: Ny eller brukt
Inngangstype: SelectBox
Verktøytips: Vennligst velg om boken er ny eller brukt
Alternativliste (html-verdiene for elementene i rullegardinlisten): ny ^ brukt
Valglabelliste (de brukervennlige etikettene for elementene i rullegardinlisten): New ^ Brukt
Pris
Navn: bookPrice
Merkelapp: Pris $
Inngangstype: Tekstboks
Verktøytips: Vennligst skriv inn prisen på boken
Bruke en klasseutvidelse
Nå som du har opprettet alle dine utvidede attributter, kan du legge til en ny bok fra nettstedssjefen og fylle ut alle skjemafeltene du nettopp har opprettet.
Gå til Nettstedssjef
Ved siden av Hjemmesiden holder du over (+) -tegnet og velger Legg til innhold
Å velge Mappe
Tast inn bøker for Tittel
Velg kategorien Layout og objekter
Under Alternativ oppsettmaler for barn, å velge twoCol_SR.cfm
Klikk publisere
Ved siden av Bøker-mappen i Site Manager, svinger du over (+) -tegnet og velger Legg til innhold
Når Velg innholdstype Modal vises, du bør nå se Bok sidetype, sammen med det respektive ikonet.
Skriv inn bokens tittel, oppsummering og innhold
du bør se Bokdetaljer Attributt Angi under innholdsfeltet på Grunnleggende fane (hvis du ikke ser det der, kan du ha valgt en annen fane for å vise Egenskapsinnstillingen på, for eksempel Utvidede attributter). Skriv inn bøkens respektive informasjon og klikk publisere
Viser utvidede attributter
Når du ser på siden, vil du legge merke til at attributene dine ikke vises. Det er fordi vi må fortelle Mura å vise disse verdiene ut på siden. Nå er det flere måter å oppnå dette, alt avhengig av brukssaken og hvor mye fleksibilitet du vil gi brukerne for å endre sidelayout. I dette eksemplet skal vi lage en komponent som utdataer den informasjonen vi ønsker, slik at den er allsidig å bruke i hvilken hvilken sidemal vi velger.
Merk: Vi bruker enkel formatering for dette eksempelet, men du kan merke og utforme dette, men du ønsker det med CSS.
Klikk publisere
Legg til komponenten i boksidene
Tilbake i Site Manager, finn bøker mappe (ikke selve boken), og klikk på den for å redigere.
Velg Layout og objekter tab
Under Arv Regler, å velge Start ny kaskade
Under Innholdsobjekter, velg Komponenter, finn Bokdetaljer komponent og legg den til i Høyre kolonne vis region.
Klikk publisere
Nå når du oppdaterer boksiden din, bør du se bokens detaljer vises i høyre sidefelt.
Wrapping Up
Som nevnt tidligere, er dette bare en måte å vise utvidede attributter på. Du kan også velge å innlemme dine utvidede attributter i sidesiden eller komponentsjablene, der du kan bruke ekstra logikk og forhindre at brukerne endrer merkingen din.
Hvis du vil vise dine utvidede attributter i en mal, endrer du bare [M] til # f.eks. # $. Innhold ( 'AUTHOR') #
De [M] tag er en del av Mura-omfanget slik at du kan vise visse Mura-funksjoner i redaktøren i administrasjonen, hvor som hashtags (#) er den vanlige måten å skrive ut innhold på i CFML.
Nå som du har lært hvordan du bruker klasseutvidelser, kan du ta Mura-temaene til et helt nytt nivå ved å gi brukerne mer robuste måter å administrere innholdet i temaene dine på..