Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 269

Warning: Undefined array key "HandLtestDomainNameServer" in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 303

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 219

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 219

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 219

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 219

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 219

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 269

Warning: Undefined array key "HandLtestDomainNameServer" in /usr/www/users/globaz/prod_global4net_com/wp-content/plugins/handl-utm-grabber-v3/handl-utm-grabber-v3.php on line 303

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /usr/www/users/globaz/prod_global4net_com/wp-config.php:1) in /usr/www/users/globaz/prod_global4net_com/wp-includes/rest-api/class-wp-rest-server.php on line 1831
{"id":5282,"date":"2021-04-21T08:30:14","date_gmt":"2021-04-21T06:30:14","guid":{"rendered":"https:\/\/global4net.com\/?p=5282"},"modified":"2023-11-10T13:56:41","modified_gmt":"2023-11-10T12:56:41","slug":"magento-2-jak-stworzyc-dzialajacy-modul","status":"publish","type":"post","link":"https:\/\/global4net.com\/blog\/magento\/magento-2-jak-stworzyc-dzialajacy-modul\/","title":{"rendered":"Magento 2 – jak stworzy\u0107 dzia\u0142aj\u0105cy modu\u0142?"},"content":{"rendered":"

Magento s\u0142ynie z tego, \u017ce jest platform\u0105 umo\u017cliwiaj\u0105c\u0105 rozbudow\u0119 w praktycznie nieograniczonej skali. Nowa wersja systemu, Magento 2, jeszcze bardziej rozszerza nie tylko ofert\u0119 gotowych rozwi\u0105za\u0144 i wdro\u017ce\u0144, ale r\u00f3wnie\u017c mo\u017cliwo\u015bci tworzenia swoich w\u0142asnych modu\u0142\u00f3w. Stworzenie ca\u0142kowicie nowego modu\u0142u pozwala nam na dodanie funkcji do naszego biznesu, kt\u00f3re nie s\u0105 obecne w wersji podstawowej. Sprawia to, \u017ce sami mo\u017cemy decydowa\u0107, w jaki spos\u00f3b chcemy budowa\u0107 przewag\u0119 nad konkurencj\u0105 i jak chcemy zarz\u0105dza\u0107 naszym systemem. Dlatego te\u017c warto wiedzie\u0107 jak stworzy\u0107 taki modu\u0142.<\/p>\n

Jak stworzy\u0107 w\u0142asny modu\u0142 w Magento 2?<\/h2>\n

Z tego artyku\u0142u dowiesz si\u0119:<\/p>\n

    \n
  1. Jak utworzy\u0107 pusty modu\u0142 w Magento 2?<\/strong><\/li>\n
  2. Jak stworzy\u0107 kontroler i akcj\u0119 do naszego modu\u0142u?<\/strong><\/li>\n
  3. W jaki spos\u00f3b podlinkowa\u0107 modu\u0142 w menu nawigacyjnym w Magento 2?<\/strong><\/li>\n<\/ol>\n

    Krok 1: Stw\u00f3rz pusty modu\u0142 w Magento 2<\/h3>\n

    Po pierwsze, <\/span>utw\u00f3rz katalog o nazwie takiej samej jak modu\u0142<\/b>, dla kt\u00f3rego tworzysz \u00f3w katalog. W celach szkoleniowych w tym artykule naszemu modu\u0142owi nadamy nazw\u0119 “Hello World”,\u00a0 zatem nasz katalog te\u017c b\u0119dzie tak si\u0119 nazywa\u0142. <\/span>Utw\u00f3rz go w katalogu wedle swojego uznania, gdzie przechowasz go razem z innymi modu\u0142ami<\/b>. U nas b\u0119dzie to katalog firmowy, a wi\u0119c \u015bcie\u017cka dost\u0119pu b\u0119dzie si\u0119 prezentowa\u0107 w ten spos\u00f3b: “app\/code\/Global4Net\/”, jednak u Ciebie b\u0119dzie on wygl\u0105da\u0142 inaczej. Nasz katalog jest stworzony tylko w celach tutorialowych, dlatego ca\u0142o\u015b\u0107 \u015bcie\u017cki powinna wygl\u0105da\u0107 tak:<\/span><\/p>\n

    \n

    app\/code\/Global4Net\/HelloWorld<\/p>\n<\/blockquote>\n

    Krok 2: Stw\u00f3rz katalog informacyjny do swojego modu\u0142u<\/h3>\n

    Po drugie, w katalogu naszego modu\u0142u, <\/span>stw\u00f3rz kolejny katalog o nazwie “etc”<\/b>. Dodaj do niego plik “<\/span>module.xml<\/b>“. B\u0119dzie on przechowywa\u0142 informacje o nazwie modu\u0142u, jego wersji oraz zale\u017cno\u015bciach wobec innych modu\u0142\u00f3w \u2013 czyli tego jak wp\u0142ywa on na ich dzia\u0142anie, np. czy nadpisuje inne modu\u0142y, itp. Funkcja zale\u017cno\u015bci jest opcjonalna i dla u\u0142atwienia nasz modu\u0142 nie b\u0119dzie jej posiada\u0142. Wed\u0142ug tych zasad ca\u0142y nasz tutorialowy plik “module.xml” powinien wygl\u0105da\u0107 w ten spos\u00f3b:<\/span><\/p>\n

    <?xml version=\"1.0\"?>
    \n<config xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"urn:magento:framework:Module\/etc\/module.xsd\">
    \n<module name=\"Global4Net_HelloWorld\" setup_version=\"1.0.0\"\/>
    \n<\/config><\/code><\/p>\n

    Zanim przyst\u0105pimy do nast\u0119pnych krok\u00f3w, wyja\u015bnijmy sobie co oznaczaj\u0105 poszczeg\u00f3lne terminy.<\/p>\n