{"id":229704,"date":"2022-11-25T17:30:00","date_gmt":"2022-11-25T14:30:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=229704"},"modified":"2022-11-25T17:31:26","modified_gmt":"2022-11-25T14:31:26","slug":"tworzenie-wtyczek-i-motywow-na-wordpress-trunk","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pl\/tworzenie-wtyczek-i-motywow-na-wordpress-trunk\/","title":{"rendered":"Tworzenie wtyczek i motyw\u00f3w na WordPress Trunk"},"content":{"rendered":"\n<p>Podczas tworzenia wtyczek lub motyw\u00f3w dla WordPressa jedn\u0105 z cz\u0119sto zalecanych przeze mnie strategii jest robienie tego przeciwko trunkowi (lub aktualnemu zrzutowi kodu) WordPressa.<\/p>\n<p>Dla tych, kt\u00f3rzy s\u0105 bardziej do\u015bwiadczonymi programistami, jeste\u015b ju\u017c na bie\u017c\u0105co z j\u0119zykiem i zastrze\u017ceniami, kt\u00f3re si\u0119 z tym wi\u0105\u017c\u0105. Ale je\u015bli jeste\u015b kim\u015b, kto szuka sposob\u00f3w na ulepszenie swoich praktyk programistycznych, by\u0107 mo\u017ce to pomo\u017ce.<\/p>\n<p>Pami\u0119taj, \u017ce poniewa\u017c WordPress jest oprogramowaniem typu open source, mo\u017cesz <strong><a href=\"https:\/\/core.trac.wordpress.org\/browser\/trunk\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">w ka\u017cdej chwili<\/a><\/strong> wy\u015bwietli\u0107 kod \u017ar\u00f3d\u0142owy w sieci .<\/p>\n<p>Nie tylko to, ale mo\u017cesz r\u00f3wnie\u017c pobra\u0107 go na sw\u00f3j komputer lokalny i pracowa\u0107 z nim. B\u0119dzie to wymaga\u0142o pewnych program\u00f3w i zajm\u0119 si\u0119 tym za chwil\u0119; jednak ostatecznym celem tego postu jest om\u00f3wienie:<\/p>\n<ul>\n<li>jak pracowa\u0107 z aktualn\u0105 migawk\u0105 kodu w WordPressie,<\/li>\n<li>jak i dlaczego korzystanie z tej bazy kodu mo\u017ce by\u0107 korzystne podczas pracy nad projektami dla innych.<\/li>\n<\/ul>\n<p>Jak wspomniano powy\u017cej, istniej\u0105 pewne zastrze\u017cenia, aby to zrobi\u0107, a czasami dobrym pomys\u0142em jest u\u017cycie najnowszej stabilnej wersji bazy kodu. I o tym r\u00f3wnie\u017c zajm\u0119 si\u0119 w dalszej cz\u0119\u015bci artyku\u0142u.<\/p>\n<h2>Rozwijanie si\u0119 w stosunku do WordPress Trunk<\/h2>\n<p>Przed rozpocz\u0119ciem wa\u017cne jest, aby mie\u0107 zainstalowany klient Subversion lub Subversion. Je\u015bli do obs\u0142ugi oprogramowania u\u017cywasz mened\u017cera pakiet\u00f3w, takiego jak Homebrew, instalacja klienta wiersza polece\u0144 jest tak prosta, jak wprowadzenie tego w terminalu:<\/p>\n<pre><code>$ brew install subversion<\/code><\/pre>\n<p>Mo\u017cesz przeczyta\u0107 wi\u0119cej o Homebrew i mened\u017cerach pakiet\u00f3w <strong><a href=\"https:\/\/wordpress.mediadoma.com\/pl\/srodowisko-programistyczne-wordpress-przy-uzyciu-menedzera-pakietow\/\" title=\"we wcze\u015bniejszych wpisach\">we wcze\u015bniejszych wpisach<\/a><\/strong> ; jednak mo\u017cesz r\u00f3wnie\u017c chcie\u0107 u\u017cy\u0107 czego\u015b takiego jak <strong><a href=\"https:\/\/versionsapp.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Wersje<\/a><\/strong> lub <strong><a href=\"https:\/\/cornerstone.assembla.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Cornerstone<\/a><\/strong>, je\u015bli chcesz u\u017cy\u0107 interfejsu.<\/p>\n<h3>1 Pobierz najnowszy kod<\/h3>\n<p>W tym momencie mo\u017cesz pobra\u0107 najnowsz\u0105 migawk\u0119 kodu WordPress, u\u017cywaj\u0105c tego polecenia:<\/p>\n<pre><code>$ svn co https:\/\/core.svn.wordpress.org\/trunk\/ .<\/code><\/pre>\n<p>Z drugiej strony, je\u015bli u\u017cywasz interfejsu, mo\u017cesz u\u017cy\u0107 nast\u0119puj\u0105cego adresu URL w wybranym przez siebie kliencie, aby przegl\u0105da\u0107 repozytorium:<\/p>\n<pre><code>https:\/\/core.svn.wordpress.org\/trunk<\/code><\/pre>\n<p>St\u0105d pobierz zawarto\u015b\u0107\u00a0 katalogu <strong>trunk<\/strong> na sw\u00f3j komputer i przygotuj si\u0119 do zainstalowania go na swoim komputerze.<\/p>\n<p>Lub korzystaj\u0105c z wybranego interfejsu:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-164358-61e763df08feb.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-164358-61e763df08feb.png\" alt=\"Tworzenie wtyczek i motyw\u00f3w na WordPress Trunk\"><\/a><\/p>\n<p>Aby to zrobi\u0107, upewnij si\u0119, \u017ce masz przygotowan\u0105 baz\u0119 danych, a nast\u0119pnie przejd\u017a przez standardow\u0105 procedur\u0119 instalacji.<\/p>\n<p>Mo\u017cesz przeczyta\u0107 o tym, jak to zrobi\u0107 <strong><a href=\"https:\/\/codex.wordpress.org\/Installing_WordPress\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">w Kodeksie<\/a><\/strong> lub w <strong><a href=\"https:\/\/wordpress.mediadoma.com\/pl\/srodowisko-programistyczne-wordpress-przy-uzyciu-menedzera-pakietow\/\" title=\"tym po\u015bcie\">tym po\u015bcie<\/a><\/strong>.<\/p>\n<h3>2 Konfiguracja trybu debugowania<\/h3>\n<p>Po zainstalowaniu zalecam ustawienie WordPressa w trybie debugowania, aby m\u00f3c zobaczy\u0107 informacje w dziennikach debugowania, a tak\u017ce w przegl\u0105darce.<\/p>\n<p>Aby to zrobi\u0107, otw\u00f3rz <strong>wp-config.php<\/strong> i zmie\u0144 wiersz, kt\u00f3ry brzmi:<\/p>\n<pre><code>define( 'WP_DEBUG', false );<\/code><\/pre>\n<p>Czyta\u0107:<\/p>\n<pre><code>define( 'WP_DEBUG', true );\ndefine( 'WP_DEBUG_LOG', true );\ndefine( 'WP_DEBUG_DISPLAY', false );\n@ini_set( 'display_errors', 0 );\ndefine( 'SCRIPT_DEBUG', true );<\/code><\/pre>\n<p>Od tego momentu za ka\u017cdym razem, gdy pracujesz z kodem, zobaczysz informacje wydrukowane na ekranie i b\u0119dziesz mie\u0107 informacje zapisane w <strong>debug.log<\/strong>, kt\u00f3re mo\u017cesz wy\u015bwietli\u0107 w preferowanym edytorze tekstu lub konsoli.<\/p>\n<p>Nie oznacza to, \u017ce nie powiniene\u015b mie\u0107 zainstalowanego narz\u0119dzia takiego jak Xdebug, ale to tre\u015b\u0107 na <strong><a href=\"https:\/\/wordpress.mediadoma.com\/pl\/korzystanie-z-xdebug-z-usluga-valet-i-wordpress\/\" title=\"inny post\">inny post<\/a><\/strong>.<\/p>\n<h3>3 Praca z w\u0142a\u015bciwymi katalogami<\/h3>\n<p>Teraz, gdy WordPress jest zainstalowany i jeste\u015b gotowy do pracy nad swoim projektem, zanotuj, czy pracujesz z wtyczkami lub motywami. Oczywi\u015bcie znajdziesz je w <strong>wp-content\/plugins<\/strong> lub <strong>wp-content\/themes<\/strong>.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-164358-61e763e2b5e39.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-164358-61e763e2b5e39.png\" alt=\"Tworzenie wtyczek i motyw\u00f3w na WordPress Trunk\"><\/a><\/p>\n<p>Powiedz, na przyk\u0142ad, \u017ce pracujesz nad wtyczk\u0105, a nast\u0119pnie zachowasz wtyczk\u0119 w katalogu wtyczek. W moim przypadku, jak wida\u0107 na powy\u017cszym zrzucie ekranu, pracuj\u0119 z <strong><a href=\"https:\/\/tommcfarlin.com\/scheduled-post-shortcut-1-5-0\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Scheduled Post Shortcut<\/a><\/strong> przeciwko trunkowi.<\/p>\n<h2>S\u0142owo o stabilnych wersjach<\/h2>\n<p>Za ka\u017cdym razem, gdy pracujesz z wtyczk\u0105 lub motywem i masz zamiar spr\u00f3bowa\u0107 z nimi pracowa\u0107 w stabilnej wersji WordPressa, masz wyb\u00f3r:<\/p>\n<ul>\n<li>pracowa\u0107 ze stabiln\u0105 wersj\u0105 kodu dost\u0119pn\u0105 na WordPress.org,<\/li>\n<li>pracowa\u0107 z migawk\u0105 kodu w baga\u017cniku.<\/li>\n<\/ul>\n<p>Je\u015bli u\u017cywasz tego pierwszego, wiesz, \u017ce Tw\u00f3j kod b\u0119dzie dzia\u0142a\u0142 z najnowsz\u0105 stabiln\u0105 wersj\u0105. Ale je\u015bli zdecydujesz si\u0119 pracowa\u0107 z tym drugim, wiesz, \u017ce Tw\u00f3j kod b\u0119dzie dzia\u0142a\u0142 z nadchodz\u0105c\u0105 wersj\u0105 WordPressa.<\/p>\n<p>Ale oto zastrze\u017cenie: rzeczy mog\u0105 si\u0119 zmieni\u0107 mi\u0119dzy tym, co jest w baga\u017cniku, a tym, co ostatecznie zostanie uwolnione. Je\u015bli wi\u0119c zamierzasz pracowa\u0107 z trunkiem, pami\u0119taj, \u017ce b\u0119dziesz musia\u0142 testowa\u0107 swoj\u0105 prac\u0119 pod k\u0105tem kodu, a\u017c g\u0142\u00f3wny zesp\u00f3\u0142 oznaczy trunk jako wersj\u0119 stabiln\u0105.<\/p>\n<p>Z drugiej strony, gdy tylko to zrobi\u0105, b\u0119dziesz mie\u0107 dzia\u0142aj\u0105c\u0105 wersj\u0119 swojego projektu gotow\u0105 do uruchomienia, gdy zostan\u0105 wys\u0142ane WordPress.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0179r\u00f3d\u0142o nagrywania:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Poradnik, jak rozwija\u0107 si\u0119 w oparciu o trunk WordPress, kt\u00f3ry mo\u017ce by\u0107 dobrym pomys\u0142em dla wtyczek lub motyw\u00f3w. Ostatecznie mo\u017ce to pom\u00f3c w zapewnieniu zgodno\u015bci z Twoimi projektami.<\/p>\n","protected":false},"author":1,"featured_media":164359,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[721,845,866],"tags":[1169],"class_list":["post-229704","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-deweloper","category-samouczki","category-wordpress-7","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/229704","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/comments?post=229704"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/229704\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media\/164359"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media?parent=229704"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/categories?post=229704"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/tags?post=229704"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}