Configurare personalizată înapoi în Magento

În acest tutorial, voi demonstra configurația personalizată a modulelor în back-end-ul Magento. Este întotdeauna util să oferiți un set de opțiuni configurabile ale modulului în back-end, care permite administratorilor să configureze ușor setările specifice modulului. Vom trece prin procesul de configurare a modulului de configurare prin crearea unui modul personalizat în Magento.

Introducere în Configurația personalizată în Magento

În calitate de dezvoltator, în timpul procesului de creare a modulelor personalizate s-ar putea să simțiți că ar fi frumos dacă ați putea transfera controlul anumitor setări specifice modulelor pe back-end. Magento vă permite să realizați acest lucru utilizând un sistem de configurare bazat pe fișiere XML. Trebuie doar să configurați fișierele conform convențiilor Magento și ele vor fi preluate cu auto-magie! De cele mai multe ori, va trebui să vă ocupați de o mulțime de setări configurabile furnizate de modulele de bază, în timp ce configurați magazinul de bază de bază.

Presupun că sunteți familiarizat cu procesul de creare a modulului de bază în Magento. Iată un articol frumos, dacă doriți să aflați mai multe despre module personalizate în Magento. Spunând asta, Magento urmează convenția asupra paradigmei de configurare, ceea ce ar trebui să facă lucrurile mai ușor de înțeles dacă sunteți un începător la procesul de dezvoltare personalizată a modulelor.

Creați un modul personalizat pentru a furniza configurări personalizate

Pentru cursul acestui tutorial, voi crea un modul personalizat de bază numit "CustomConfig" care oferă configurația back-end sub Sistem> Configurare meniul. Iată lista fișierelor necesare pentru configurarea dorită:

  • app / etc / module / Envato_All.xml: Este un fișier folosit pentru a permite modulul nostru personalizat.
  • app / code / local / Envato / CustomConfig / etc / config.xml: Este un fișier de configurare a modulelor.
  • app / code / local / Envato / CustomConfig / etc / System.Xml: Este un fișier care declară opțiunile de configurare pentru modulul nostru.
  • app / code / local / Envato / CustomConfig / Model / Options.php: Este un fișier model care oferă opțiunile pentru anumite elemente de formă ale configurației.
  • app / code / local / Envato / CustomConfig / Helper / Data.php: Este un fișier folosit de sistemul de traducere Magento.

Setări fișiere

Pentru a începe, vom crea un fișier de activator de module. Creați un fișier "app / etc / modules / Envato_All.xml" și lipiți următorul conținut în acel fișier. Am folosit "Envato" ca spațiu de nume al modulelor noastre și "CustomConfig" ca numele modulului nostru. Acesta va permite modulul "CustomConfig" în mod implicit.

    Adevărat local   

Apoi, trebuie să creați un fișier de configurare a modulului. Creați "app / code / local / Envato / CustomConfig / etc / config.xml" și lipiți următorul conținut în acel fișier.

    0.0.1      Envato_CustomConfig_Helper     Envato_CustomConfig_Model              Partea de configurări personalizate           

Ar trebui să cunoașteți modelul și declarația clasei de ajutor în conformitate cu convențiile Magento. Desigur,  eticheta este nouă pentru dvs., ceea ce ne interesează în contextul acestui tutorial. Să trecem prin fiecare etichetă în detaliu pentru a înțelege ce înseamnă.

eticheta este utilizată pentru a defini resursele paginii admin. În exemplul nostru, pagina de configurare pentru modulul nostru este o resursă. Mai mult, am folosit-o  eticheta pentru a înfășura a tag, ceea ce înseamnă că va fi accesibil numai utilizatorilor autentificați. 

Următoarele două etichete sunt utilizate pentru a defini calea paginii noastre de configurare din spate. Deci, calea catre pagina noastra de configurare arata ca "admin / system / config / customconfig_options". Desigur, ultima etichetă ar trebui să fie unic, astfel încât să nu contravină altor extensii.

Deplasând-ne înainte, să definim cel mai important fișier, "system.xml". Creați "app / code / local / Envato / CustomConfig / etc / system.xml" și lipiți următorul conținut în acel fișier.

     1      customconfig text 1 1 1 1    text 1 1 1 1    text 1 1 1 1 Exemplu de câmp text.      text 2 1 1 1    Selectați customconfig / opțiuni 1 1 1 1 Exemplu de câmp selectat.    aparate radio customconfig / opțiuni 2 1 1 1 Exemplu de câmp radio.    selectare multipla customconfig / opțiuni 3 1 1 1 Exemplu de câmp multiselect.       

Așa cum probabil ați ghicit, acest fișier este responsabil pentru afișarea unei pagini de configurare a modulului nostru în back-end. Să ne uităm mai îndeaproape la unele dintre etichetele importante din fișier.

eticheta este utilizată pentru a defini filele care vor fi afișate în partea stângă a paginii de configurare. Si eticheta este utilizată pentru a defini secțiunile de sub fiecare filă. 

Să încercăm să o înțelegem printr-un exemplu. Mergi la Sistem> Configurare în partea din spate a Magento. Veți observa că există diferite file ca General, Catalog, Clienți, etc. 

Sub fiecare filă, veți vedea și secțiuni diferite. De exemplu, în cadrul Avansat etichetă, există Admin, Sistem, Avansat și Dezvoltator secțiuni. În cazul nostru, vom avea a Setările personalizate de configurare secțiune în cadrul Fila de configurare personalizată.

Apoi, folosim  tag pentru a grupa împreună câmpurile de configurare împreună. De exemplu, doriți să afișați câmpuri legate de imagine și câmpuri legate de e-mail sub diferite secțiuni. Pentru asta, am definit și Etichete.

În cele din urmă, înfășurăm câmpurile din fiecare secțiune cu  etichetă. În exemplul nostru, am furnizat un câmp de text sub câmpul "Secțiunea 1", în timp ce alte câmpuri, cum ar fi caseta de selectare, butonul radio și selecția multiplă, sunt disponibile în câmpul "Secțiunea a doua". Deci asta este pentru fișierul "system.xml".

Apoi, să creăm un fișier model "app / code / local / Envato / CustomConfig / Model / Options.php".

1, 'label' => 'Trei'), array ('value' => array ('value' => 4, 'label' => 'Four')); 

Nimic nu este aici - este folosit doar pentru a alimenta opțiunile unui câmp de formular radio și pentru a selecta câmpul formularului din formularul de configurare.

În cele din urmă, va trebui să creați fișierul "app / code / local / Envato / CustomConfig / Helper / Data.php" doar pentru a vă asigura că sistemul de traducere al Magento funcționează corect. Este aproape un dosar gol, dar ar trebui să fie acolo conform convențiilor!

Am făcut-o cu configurarea fișierelor. În secțiunea următoare, vom verifica cum arată în back-end-ul Magento.

Treceți prin back-end pentru a testa Configurația personalizată

Mergeți pe spatele Magento și eliberați toate cache-urile. Se poate ajunge la aceasta Sistem> Gestionare cache

Acum, du-te la Sistem> Configurare pentru a deschide pagina de configurare. Ar trebui să observați TAB CU CONFIGURAȚIE CUVANTĂ în partea stângă a paginii. Sub aceasta, Setările personalizate de configurare este disponibil și faceți clic pe acesta va deschide o pagină de configurare pentru modulul nostru. Dacă nu îl puteți vedea, încercați să vă deconectați de la secțiunea de administrare și să vă conectați din nou.


Este o interfață frumoasă, care iese din cutie, nu-i așa? Puteți să jucați în jur, să completați formularul și să faceți clic pe Salvați Config pentru a efectua modificările, iar Magento va ocupa restul.

Pentru a accesa valorile parametrilor de configurare din cod, puteți utiliza getStoreConfig metoda statică. De exemplu, puteți prelua valoarea custom_field_one utilizând următoarea sintaxă:

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

Sintaxa este destul de simplă - trebuie să utilizați modelul "nume_secție / nume_grupă / nume_cheie" așa cum este definit în fișierul system.XML.

Concluzie

Configurația sistemului de administrare este una dintre cele mai puternice și mai utile părți ale Magento. Magento vă permite să conectați foarte ușor parametrii personalizați de configurare datorită extensibilității unuia dintre cele mai puternice sisteme de e-commerce! Împărtășiți-vă gândurile folosind feed-ul de mai jos!

Cod