Tilpasset Back-End-konfigurasjon i Magento

I denne opplæringen skal jeg demonstrere tilpasset modulkonfigurasjon i bakenden av Magento. Det er alltid nyttig å gi et sett konfigurerbare alternativer for modulen i back-end, som gjør at administratorer enkelt kan konfigurere modulspesifikke innstillinger. Vi går gjennom prosessen med å konfigurere modulkonfigurasjonen ved å opprette en tilpasset modul i Magento.

Introduksjon til tilpasset konfigurasjon i Magento

Som utvikler, under prosessen med tilpasset modulopprettelse, kan du føle at det ville være fint hvis du kunne overføre kontrollen av bestemte modulspesifikke innstillinger til bakenden. Magento lar deg oppnå dette ved hjelp av et XML-filbasert konfigurasjonssystem. Du trenger bare å sette opp filene i henhold til konvensjonene i Magento, og de vil bli plukket opp auto-magisk! Mesteparten av tiden må du håndtere mange konfigurerbare innstillinger som leveres av kjernemoduler mens du konfigurerer den grunnleggende frontend-butikken.

Jeg antar at du er kjent med grunnleggende modulopprettingsprosessen i Magento. Her er en fin artikkel, hvis du vil lære mer om tilpassede moduler i Magento. Når det er sagt, følger Magento konvensjonen over konfigurasjonsparadigmet, noe som burde gjøre det lettere å forstå om du er nybegynner til den tilpassede modulutviklingsprosessen.

Opprett en tilpasset modul for å gi tilpasset konfigurasjon

I løpet av denne opplæringen lager jeg en grunnleggende tilpasset modul kalt "CustomConfig", som gir konfigurasjonen bakfra System> Konfigurasjon Meny. Her er listen over filer som kreves for ønsket oppsett:

  • app / etc / moduler / Envato_All.xml: Det er en fil som brukes til å aktivere vår egendefinerte modul.
  • app / code / local / Envato / CustomConfig / etc / config.xml: Det er en modulkonfigurasjonsfil.
  • app / code / local / Envato / CustomConfig / etc / System.Xml: Det er en fil som deklarerer konfigurasjonsalternativene for modulen vår.
  • app / code / local / Envato / CustomConfig / Modell / Options.php: Det er en modellfil som gir mulighetene for visse formelementer i konfigurasjonen.
  • app / code / local / Envato / CustomConfig / Helper / Data.php: Det er en fil som brukes av Magento oversettelsessystemet.

Filoppsett

Til å begynne med vil vi opprette en modul-enabler-fil. Opprett en fil "app / etc / modules / Envato_All.xml" og lim inn følgende innhold i den filen. Vi har brukt "Envato" som vår modulnavn og "CustomConfig" som vårt modulnavn. Den aktiverer vår "CustomConfig" -modul som standard.

    ekte lokal   

Deretter må vi opprette en modulkonfigurasjonsfil. Opprett "app / code / local / Envato / CustomConfig / etc / config.xml" og lim inn følgende innhold i den filen.

    0.0.1      Envato_CustomConfig_Helper     Envato_CustomConfig_Model              Egendefinert konfigurasjonsseksjon           

Du bør være kjent med modellen og helperklassdeklarasjonen i henhold til Magento-konvensjonene. Selvfølgelig, den  taggen er ny for deg, noe vi er opptatt av i forbindelse med denne opplæringen. La oss gå gjennom hver tag i detalj for å forstå hva den står for.

De tag brukes til å definere ressursene på administrasjonssiden. I vårt eksempel er konfigurasjonssiden for modulen vår en ressurs. Videre har vi brukt  tag for å pakke inn en tag, noe som betyr at den bare vil være tilgjengelig for godkjente brukere. 

De neste par kodene brukes til å definere banen til vår back-end konfigurasjonsside. Så banen til vår konfigurasjonsside ser ut som "admin / system / config / customconfig_options". Selvfølgelig, den siste taggen bør være unikt slik at det ikke er i konflikt med andre utvidelser.

Fortsett, la oss definere den viktigste filen, "system.xml". Opprett "app / code / local / Envato / CustomConfig / etc / system.xml" og lim inn følgende innhold i den filen.

     1      customconfig tekst 1 1 1 1    tekst 1 1 1 1    tekst 1 1 1 1 Eksempel på tekstfelt.      tekst 2 1 1 1    å velge customconfig / alternativer 1 1 1 1 Eksempel på velg felt.    radioer customconfig / alternativer 2 1 1 1 Eksempel på radiofelt.    Flervalg customconfig / alternativer 3 1 1 1 Eksempel på multiselect-felt.       

Som du kanskje har gjettet, er denne filen ansvarlig for å vise en konfigurasjonsside av modulen vår i bakenden. La oss se nærmere på noen av de viktige kodene i den filen.

De tag brukes til å definere faner som vises på venstre side av konfigurasjonssiden. Og tag brukes til å definere seksjoner under hver kategori. 

La oss prøve å forstå det gjennom et eksempel. Gå til System> Konfigurasjon på baksiden av Magento. Du vil legge merke til at det er forskjellige faner som Generelt, Katalog, Kunder, etc. 

Under hver kategori ser du også forskjellige seksjoner. For eksempel, under Avansert tag, det er Admin, System, Avansert og Utvikler seksjoner. I vårt tilfelle har vi en Tilpassede konfigurasjonsinnstillinger delen under Tilpasset konfigurasjonsfane.

Deretter bruker vi  tagg for å gruppere lignende konfigurasjonsfelt sammen. For eksempel vil du vise bilderelaterte felt og e-postrelaterte felt under ulike seksjoner. For det har vi definert og tags.

Til slutt pakker vi feltene i hver seksjon med  stikkord. I vårt eksempel har vi gitt et tekstfelt under feltet "Seksjon 1", mens andre felt som valgboks, radioknapp og flervalg er tilgjengelige under feltet "Seksjon 2". Så det er det for "system.xml" -filen.

Deretter la oss lage en modellfil "app / code / local / Envato / CustomConfig / Model / Options.php".

1, 'label' => 'One'), array ('value' => 2, 'label' => 'To'), array ('value' => 3, 'label' => 'Three' array ('value' => 4, 'label' => 'Fire')); 

Ikke noe fancy her - det er bare vant til å mate alternativer til et radiobild felt og velg formularfeltet i konfigurasjonsskjemaet.

Endelig må vi opprette filen "app / code / local / Envato / CustomConfig / Helper / Data.php" for å sikre at oversettelsessystemet til Magento fungerer riktig. Det er nesten en tom fil, men skal være der i henhold til konvensjonene!

Vi har gjort med filoppsettet. I neste avsnitt, ser vi hvordan det ser ut i bakenden av Magento.

Gå gjennom baksiden for å teste tilpasset konfigurasjon

Gå over til bakenden av Magento og fjern alle caches. Det kan nås ved å gå til System> Cache Management

Nå, gå til System> Konfigurasjon for å åpne konfigurasjonssiden. Du bør legge merke til BEGRENSET KONFIGURASJON TAB på venstre side av siden. Under det, den Tilpassede konfigurasjonsinnstillinger lenke er tilgjengelig, og klikk på det vil åpne en konfigurasjonsside for modulen vår. Hvis du ikke kan se det, kan du prøve å logge ut av administrasjonsdelen og logge på igjen.


Det er et flott grensesnitt som går ut av esken, ikke sant? Du kan spille litt, fyll ut skjemaet og klikk på Lagre konfig knappen for å forplikte endringene, og Magento vil håndtere resten.

For å få tilgang til verdiene for konfigurasjonsparametrene i koden, kan du bruke getStoreConfig statisk metode. For eksempel kan du hente verdien av custom_field_one parameter ved hjelp av følgende syntaks:

Mage :: getStoreConfig ( 'customconfig_options / section_one / custom_field_one');

Syntaxen er ganske enkel - du må bruke "section_name / group_name / field_name" mønsteret som definert i system.XML-filen.

Konklusjon

Admin system konfigurasjon er en av de sterkeste og mest nyttige delene av Magento. Magento lar deg enkelt tilpasse konfigureringsparametere, takk til utvidelsen av et av de kraftigste e-handelssystemene! Del dine tanker ved å bruke feedet under!