Ghid pentru a crea un modul în Magento 2

Publicat: 2015-11-20

Căutați modalitatea de a crea un modul în Magento 2? Astăzi, vă vom ghida cum să creați un modul în Magento 2. Sperăm că vă veți bucura de ele și îl veți folosi cu ușurință!

Pentru a crea un modul flexibil este foarte dificil, dar avem un tutorial simplu despre crearea unui modul simplu în Magento 2. Sper că acest tutorial vă poate ajuta în primul pas. Înainte de a crea modulul , este necesar să înțelegeți diferențele în structura directoarelor dintre cele două versiuni de Magento. În structura de directoare Magento 2, pool-urile de cod sunt eliminate din structura fișierelor de bază de cod. Acum toate modulele sunt grupate după furnizor. Prin urmare, putem crea module chiar în directorul aplicație/cod.

Ultima actualizare: tocmai am lansat versiunea 2.0 a temei Claue Multipurpose Magento 2, cu o mulțime de îmbunătățiri ale performanței și funcții exclusive. Verificați această temă acum: Claue Magento Theme 2. 0

claue2_editat (1)

Demo live

Claue – Tema Clean, Minimal Magento 2&1 este un șablon excelent pentru un magazin de comerț electronic modern și curat, cu peste 40 de aspecte de pagină de pornire și o mulțime de opțiuni pentru magazin, blog, portofoliu, machete de locator de magazine și alte pagini utile. Claue versiunea 2.0 vine cu o mulțime de caracteristici exclusive, inclusiv:

  • Bazat pe tema Luma.
  • Îndeplinește toate standardele temei Magento
  • Îmbunătățirea semnificativă a performanței
  • Compatibil cu majoritatea extensiilor de la terți.
  • Complet compatibil cu Magento 2.4.x

Această a doua versiune avansată se diferențiază complet de cea anterioară. Astfel, dacă utilizați Claue versiunea 1 și doriți să actualizați la Claue versiunea 2, nu puteți decât să reconstruiți un nou site web, în ​​loc să actualizați de la versiunea veche. Acum, să revenim la subiectul principal.

Diferențele dintre Magento1.0 și Magento2.0

Există câteva diferențe de bază între Magento 1.0 și Magento 2.0, astfel încât să puteți vizualiza cu ușurință structura folderelor în Magento 2.0. Astfel, realizarea unui modul simplu în Magento 2.0 este doar o briză.

Ghid pentru a crea un modul în Magento 2

Creați un modul în Magento2

Pasul 1: Creați fișiere de configurare.

– Creați fișierul: app/code/Tutorial/Example/etc/module.xml (Scop: Acest fișier va declara modulul dvs.) și introduceți următorul cod în el:

  1. <? versiune xml = „1.0” ?>
  2. <config xmlns:xsi = „http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation = „..
  3. /../../../../lib/internal/Magento/Framework/Module/etc/module.xsd” >
  4. < nume modul = „Tutorial_Example” setup_version = „1.0.0” >
  5. </modul>
  6. </config>

- Creați fișier: app/code/Tutorial/Example/etc/frontend/routes.xml (Scop: Routerul modulului dumneavoastră pentru frontend va fi declarat aici):

  1. <? versiune xml = „1.0” ?>
  2. <config xmlns:xsi = „http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation = „..
  3. /../../../../../lib/internal/Magento/Framework/App/etc/routes.xsd” >
  4. < ID router = „standard” >
  5. <route id = „exemplu” frontName = „exemplu” >
  6. < nume modul = „Tutorial_Example” />
  7. </route>
  8. </router>
  9. </config>

Pasul 2: Creați fișiere de control, aspect și șablon.

După crearea fișierelor de configurare, vom începe cu fișierele controler, aspect și șablon.

– Creați fișierul controlerului: aplicație/cod/Tutorial/Exemplu/Controller/Index/Index.php si pune codul asta:

  1. <? php
  2. spatiu de nume Tutorial \Example\Controller\Index ;
  3. utilizați Magento \Framework\App\Action\Context ;
  4. utilizați Magento \Framework\View\Result\PageFactory ;
  5. clasa Index extinde \Magento\Framework\App\Action\Action
  6. {
  7. /**
  8. * @param Context $context
  9. * @param PageFactory $resultPageFactory
  10. */
  11. funcția publică __construct (
  12. Context $context ,
  13. PageFactory $resultPageFactory
  14. )
  15. {
  16. parent :: __construct ( $context );
  17. $this -> resultPageFactory = $resultPageFactory ;
  18. }
  19. funcția publică executa ()
  20. {
  21. $resultPageFactory = $this -> resultPageFactory -> create ();
  22. // Adăugați titlul paginii
  23. $resultPageFactory -> getConfig ()-> getTitle ()-> set ( __ ( 'Exemplu de modul' ));
  24. // Adăugați pesmet
  25. /** @var \Magento\Theme\Block\Html\Breadcrumbs */
  26. $breadcrumbs = $resultPageFactory -> getLayout ()-> getBlock ( 'breadcrumbs' );
  27. $breadcrumbs -> addCrumb ( 'acasă' ,
  28. [
  29. 'label' => __ ( 'Acasă' ),
  30. 'title' => __ ( 'Acasă' ),
  31. 'link' => $this -> _url -> getUrl ( )
  32. ]
  33. );
  34. $breadcrumbs -> addCrumb ( 'exemplu_tutorial' ,
  35. [
  36. 'label' => __ ( 'Exemplu' ),
  37. 'title' => __ ( 'Exemplu' )
  38. ]
  39. );
  40. returnează $resultPageFactory ;
  41. }
  42. }

– Creați fișierul de aspect: app/code/Tutorial/Example/view/frontend/layout/example_index_index.xml

  1. <? versiune xml = codificare „1.0” = „UTF-8” ?>
  2. <pagina xmlns:xsi = „http://www.w3.org/2001/XMLSchema-instance” aspect = „3columns”
  3. xsi:noNamespaceSchemaLocation = „../../../../../../../lib/internal/Magento/Framework/View/Layout/
  4. etc/page_configuration.xsd” >
  5. <corp>
  6. <referenceContainer name = „conținut” >
  7. <block class = „Magento\Framework\View\Element\Template” nume = „tutorial_example_block”
  8. template = „Tutorial_Example::index.phtml” />
  9. </referenceContainer>
  10. </corp>
  11. </pagina>

– Creați fișierul șablon: app/code/Tutorial/Example/view/frontend/templates/index.phtml

<h1> <? php echo __ ( 'Acesta este un exemplu de modul!' ) ?> </h1>

Pasul 3: Activați modulul în fișierul de configurare al Magento 2

Vom activa acest modul prin deschidere app/etc/ config.php fișier, apoi adăugați această linie în el:

Apoi deschideți Comanda în Windows (sau Terminalul în Linux și MAC OS). Accesați folderul rădăcină Magento și rulați această linie de comandă pentru a vă instala modulul:

bin\magento setup:upgrade

În cele din urmă, ștergeți memoria cache Magento, apoi accesați cu url http://localhost/magento2/example/index/index/

Vizitați blogul Magesolution pentru a nu pierde niciodată actualizări sau tutoriale despre Magento 2.0