Czy sztuczna inteligencja może zmienić osoby niebędące koderami w profesjonalnych programistów wtyczek WordPress? Aby się tego dowiedzieć, poprosiliśmy ChatGPT o zbudowanie od podstaw niestandardowej wtyczki WordPress, a następnie poprosiliśmy nasz zespół programistów o zbadanie kodu…
Sztuczna inteligencja to obecnie najpopularniejsze dwuliterowe słowo na świecie. Biorąc pod uwagę wszystkie ostatnie nagłówki wiadomości o tym, czy sztuczna inteligencja zabierze nam pracę, chcieliśmy wiedzieć… czy ChatGPT może faktycznie opracować funkcjonalną i użyteczną wtyczkę WordPress bez konieczności pisania kodu od zera? I czy wtyczka spełnia najlepsze praktyki kodowania?
Na szczęście WPMU DEV tworzy jedne z najbardziej niezawodnych wtyczek WordPress na świecie, więc mamy wielu doświadczonych programistów wtyczek WordPress, którzy mogą przetestować ChatGPT.
W rzeczywistości, jeśli przespacerujesz się po wirtualnych korytarzach naszej firmy, nie możesz powstrzymać się od wpadnięcia na programistów i programistów WordPress. Wygląda na to, że każdy tutaj może spojrzeć na wtyczkę WordPress i zobaczyć PHP tak, jak Neo widzi kod cyfrowego deszczu Matrixa.
Jak wygląda kod PHP dla doświadczonych programistów wtyczek WordPress. Źródło: Giphy.com
Wszyscy, to znaczy …z wyjątkiem mnie!
Jestem tylko autorem bloga bez umiejętności kodowania i palącym pragnieniem dodania „inżyniera” do mojego CV.
Tak więc w tym poście zbadamy, jak wykorzystać moc ChatGPT do szybkiego i bezpiecznego zbudowania prostej niestandardowej wtyczki WordPress, nawet jeśli nie masz rozległych umiejętności kodowania.
Zrobimy to poprzez:
1) Poproszenie ChatGPT o wygenerowanie kodu przydatnej wtyczki, którą możemy przetestować, oraz
2) Uruchomienie kodu wygenerowanego przez ChatGPT przez nasz zespół profesjonalnych programistów wtyczek, aby mogli go przejrzeć i przekazać szczere opinie.
Omówimy następujące kwestie:
Krok 1 – Zdefiniowanie funkcjonalności wtyczki
Przed użyciem ChatGPT do wygenerowania kodu, musimy mieć jasne zrozumienie funkcjonalności, którą chcemy, aby nasza wtyczka zapewniała.
Zaczyna się to od nakreślenia konkretnych funkcji, działań lub modyfikacji, które chcemy osiągnąć za pomocą naszej wtyczki. Pomoże nam to następnie wygenerować dokładne podpowiedzi dla ChatGPT i upewnić się, że nasz kod generowany przez sztuczną inteligencję jest zgodny z naszymi pożądanymi wynikami.
Krok 2 – Generowanie fragmentów kodu za pomocą ChatGPT
Aby wygenerować nasze fragmenty kodu za pomocą ChatGPT, zachowamy prostotę (i bezpłatność) i użyjemy bezpłatnie dostępnego interfejsu dostarczonego przez OpenAI.
Take #1…
Uwaga: Moja pierwsza próba użycia ChatGPT do stworzenia wtyczki WordPress od podstaw była zbyt ambitna. Poprosiłem ChatGPT o zbudowanie prostej wtyczki WordPress generującej atrapę tekstu podróży w czasie, używając poniższej podpowiedzi…
Ta podpowiedź z pewnością da ChatGPT kopa do tworzenia wtyczek WordPress.
Jako ktoś, kto spędza dużo czasu na pisaniu samouczków WordPress, często potrzebuję fikcyjnych treści do testowania wtyczek, tworzenia zrzutów ekranu itp.
Pomyślałem więc, że świetnie byłoby wzorować moją generowaną przez SI wtyczkę do tworzenia fikcyjnych treści na często używanej przeze mnie wtyczce o nazwie FakerPress.
ChatGPT odrzucił moją prośbę i poinformował mnie, że stworzenie w pełni funkcjonalnej wtyczki WordPress ze wszystkimi funkcjami, o które prosiłem, wykracza poza zakres jednej odpowiedzi.
Zaoferowano mi jednak dostarczenie podstawowego szablonu, wskazano, jak zaimplementować niektóre z funkcji, o których wspomniałem, a nawet podano instrukcje dotyczące tworzenia katalogu i pliku wtyczki…
Mmm… może moja pierwsza próba stworzenia wtyczki WordPress była zbyt ambitna!
Początkowo ChatGPT wypisywał kod, który wyglądał następująco całkiem imponujące…
Dla kogoś, kto zna się na kodowaniu, powyższy fragment kodu wygląda imponująco!
ChatGPT wyprowadził również cały dodatkowy kod wymagany do wykonania kolejnych kroków.
Nie mając umiejętności kodowania, polegałem na ChatGPT, który poprowadził mnie przez każdy etap procesu tworzenia wtyczki.
Po wygenerowaniu kodu wtyczki, następnym krokiem było przesłanie wtyczki do mojej witryny testowej i przetestowanie jej, aby upewnić się, że działa.
Krok 3 – Przetestuj niestandardową wtyczkę
Po przesłaniu folderu zawierającego kod wtyczki do katalogu wp-content > plugins mojej witryny testowej i aktywowaniu go na ekranie Wtyczki…
A teraz chwila, na którą wszyscy czekaliśmy [drumroll]… Otrzymałem błąd krytyczny!
Co za antyklimaks… najniższy punkt w mojej karierze programisty wtyczek WordPress!
Zakładając, że może nie dodałem dodatkowych fragmentów, które ChatGPT dostarczył poprawnie, wróciłem i poprosiłem o dostarczenie całego kodu jako pojedynczego pliku, który mógłbym po prostu skopiować i wkleić, aby nadpisać i zaktualizować przesłany plik wtyczki …
Dlaczego nie mógł po prostu dać mi całego kodu do skopiowania i wklejenia za pierwszym razem?
Było dużo kodu do wyprowadzenia, więc za każdym razem, gdy proces zatrzymywał się, instruowałem ChatGPT, aby kontynuował…
ChatGPT czasami potrzebuje tylko delikatnej zachęty, aby kontynuować.
Po kilkukrotnym powtórzeniu tego procesu, ChatGPT wypisał cały kod, a nawet podał kilka pomocnych informacji.
Po odczekaniu całych 2 minut… ChatGPT w końcu wypisał cały kod wtyczki!
Przesłałem plik wtyczki z nowym kodem do mojej witryny testowej, a następnie wskoczyłem do obszaru administracyjnego witryny i aktywowałem wtyczkę.
Zadziałało! A przynajmniej tak się wydawało.
ChatGPT nadał wtyczce własny element menu…
ChatGPT stworzył to wszystko!
I ekran ustawień z mnóstwem fantazyjnych pól i pól…
Wygląda imponująco… ale czy będzie działać?
Ale nie widziałem pola do określenia liczby postów lub stron do utworzenia, więc po prostu zaznaczyłem kilka pól, wprowadziłem kilka wartości i kliknąłem przycisk „Zapisz zmiany”, aby zobaczyć, co się stanie.
A teraz chwila prawdy…
I… absolutnie nic się nie stało!
Najnowszy najniższy punkt w mojej karierze programisty wtyczek WordPress… wtyczka, która nic nie robi!
Moja fantazyjna wtyczka była udawana, podobnie jak jeden z tych statków kosmicznych dla dzieci, który jest wypełniony bezużytecznymi pokrętłami, które można obracać i przyciskami, które można naciskać, udając, że latają w kosmosie.
Skontaktowałem się więc z jednym z naszych programistów za pośrednictwem Slacka i poprosiłem go o przejrzenie pliku wtyczki.
Niektóre z komentarzy, które wróciły, zawierały następujące informacje:
- „Wtyczka próbuje generować losową zawartość przy każdym ładowaniu strony administratora”.
- „Wywołuje funkcję dummy_content_generator_generate_content_paragraphs, która z kolei próbuje wywołać dummy_content_generator_get_random_paragraph dla każdego akapitu, który próbuje wygenerować. Problem polega na tym, że nie istnieje funkcja dummy_content_generator_get_random_paragraph.
- „Strona ładuje się do pewnego momentu, a następnie wywala błąd, ponieważ brakuje kolejnych elementów”.
- „Poza wszystkimi wymienionymi kwestiami, nie ma żadnej walidacji i nie ma ucieczki danych wyjściowych, co jest okropne”.
- „Jeśli chodzi o posiadanie czegoś jako punktu wyjścia, jest to bardzo, bardzo słabe. Jeśli chodzi o posiadanie działającej wtyczki, to nigdzie jej nie ma”.
Po kilku rozmowachW wyniku dyskusji uznano, że z wtyczką jest sporo nie tak, że naprawienie jej wymagałoby dużo pracy i zasugerowano, abym porzucił projekt.
W tym momencie byłem jednak zbyt zaangażowany w swoją misję, aby po prostu porzucić wszystko i się poddać. Przypominając sobie słynne słowa Sir Winstona Churchilla („Fetch me another brandy” „Never give in, never give in, never, never, never…”), zdecydowałem, że nadszedł czas na…
Take #2…
Ok, więc moja pierwsza próba nakłonienia ChatGPT do zbudowania wtyczki WordPress od zera była ponurą porażką. To samo w sobie dostarczyło kilku cennych spostrzeżeń na temat zdolności ChatGPT do wykonywania złożonych zadań kodowania (lub, jak to ujął ktoś z zespołu, „nie można kodować za pomocą ChatGPT bez posiadania rozległej wiedzy na temat kodowania”).
Tak więc, dla „Take #2”, postanowiłem spróbować ponownie z prostszym żądaniem wtyczki.
Wracając do deski kreślarskiej, w moim umyśle zapaliła się genialna żarówka… dlaczego nie poprosić ChatGPT o zasugerowanie pomysłów na proste wtyczki WordPress, dla których mógłby następnie wygenerować kod?
Tak właśnie zrobiłem. Oto podpowiedź, którą natychmiast opracowałem…
Mój genialny pomysł.
A oto lista sugerowanych wtyczek, którymi odpowiedział ChatGPT…
Plan mojego imperium wtyczek WordPress.
Spodobała mi się ostatnia sugestia, więc poprosiłem ChatGPT o wygenerowanie kodu dla funkcjonalnej wtyczki duplikatora treści i natychmiast zabrał się do pracy.
Tak właśnie wygląda licencja na drukowanie pieniędzy!
ChatGPT wygenerował następujący kod dla wtyczki w mgnieniu oka:
<?php /* Plugin Name: Content Duplicator Opis: Umożliwia użytkownikom duplikowanie postów, stron lub niestandardowych typów postów za pomocą jednego kliknięcia. Wersja: 1.0.0 Autor: Your Name Author URI: https://yourwebsite.com */ // Add duplicate action links to post row actions function content_duplicator_add_duplicate_link( $actions, $post ) { if ( current_user_can( 'edit_posts’ ) ) { $actions[’duplicate’] = 'ID ), 'content_duplicator_duplicate_post’ ) . '” title=”Zduplikuj ten element” rel=”permalink”>Duplicate’; } return $actions; } add_filter( 'post_row_actions’, 'content_duplicator_add_duplicate_link’, 10, 2 ); // Duplicate the post function content_duplicator_duplicate_post() { if ( isset( $_GET[’post_id’] ) { $post_id = absint( $_GET[’post_id’] ); if ( current_user_can( 'edit_posts’ ) && wp_verify_nonce( $_GET[’_wpnonce’], 'content_duplicator_duplicate_post’ ) ) { $post = get_post( $post_id ); $args = array( 'post_title’ => $post->post_title . ’ (Duplicate)’, 'post_content’ => $post->post_content, 'post_type’ => $post->post_type, 'post_status’ => $post->post_status, 'post_parent’ => $post->post_parent, 'post_author’ => get_current_user_id(), ); $new_post_id = wp_insert_post( $args ); if ( $new_post_id ) { // Duplicate meta fields $meta_fields = get_post_custom( $post_id ); foreach ( $meta_fields as $key => $values ) { foreach ( $values as $value ) { add_post_meta( $new_post_id, $key, $value ); } } // Przekierowanie do zduplikowanego postu wp_redirect( admin_url( 'post.php?action=edit&post=’ . $new_post_id ) ); exit; } } } } add_action( 'admin_post_content_duplicator_duplicate_post’, 'content_duplicator_duplicate_post’ );
Po wygenerowaniu kodu dostarczono nawet zestaw instrukcji.
Kod nie tylko zawiera instrukcje, ale ChatGPT mówi nawet „Proszę”!
Następnie przesłałem nowy plik wtyczki do katalogu wp-content > plugins mojej witryny testowej za pomocą menedżera plików The Hub.
Na tym zrzucie ekranu jest dużo akcji do rozpakowania.
I utworzyłem fikcyjny post, aby przetestować wtyczkę…
Czy wtyczka zduplikowała ten tandetny post? Przekonajmy się!
Oto opcje menu postu przed aktywacją wtyczki…
Domyślny post z domyślnymi opcjami.
Po aktywacji wtyczki…
„Activate Content Duplicator” – brzmi jak tekst z filmu Star Trek.
Sukces!
Nieodpłatny zrzut ekranu potwierdzający pomyślną aktywację wtyczki.
Wtyczka została aktywowana. Ale czy faktycznie zadziałała?
Oto mój post testowy (zauważ, że wtyczka dodała nowy element „Duplicate” do menu po aktywacji). Następnie kliknąłem na „Duplicate”, aby zobaczyć, co się stanie…
ChatGPT dodał nawet podpowiedź elementu menu „Duplicate” do kodu!
I zduplikowany post został utworzony!
Duplikat oryginalnego postu.
Oto tabela postów pokazująca wpisy dla oryginalnego i zduplikowanego postu.
Oryginalny post i jego sklonowana wersja.
Jestem pewien, że dzięki lepszej inżynierii podpowiedzi i kilku poprawkom kodu wtyczka mogłaby zostać znacznie ulepszona. Na przykład wolałbym, aby wtyczka ustawiała status nowo zduplikowanego posta na „wersję roboczą” zamiast go publikować, ale ChatGPT dostarczył prostą wtyczkę WordPress, która działała. Była podstawowa, ale spełniała swoje zadanie.
Ostatnim krokiem było poproszenie kogoś, kto zajmuje się kodowaniem wtyczek WordPress, o przeanalizowanie kodu i uzyskanie opinii na temat korzystania z narzędzia takiego jak ChatGPT do kodowania wtyczek.
Informacje zwrotne od naszych ekspertów ds. wtyczek
Wkrótce po przesłaniu wtyczki do jednego z naszych kanałów testowych otrzymałem ping od jednego z naszych programistów. Oto niektóre z kluczowych punktów zawartych w ich opinii:
- „ChatGPT i inni są przyzwoici w odpowiadaniu na pytania, na które już znasz odpowiedź”.
- „Używałem go również w przeszłości do zbudowania prostej wtyczki dla mnie, ale tak długo, jak dawałem bardziej złożone podpowiedzi, zaczęło się coś psuć, więc w końcu ręcznie debugowałem dany kod, aby działał, ponieważ w przeciwnym razie debugowanie go linia po linii zajęłoby wieki”.
- „Zasadniczo robi to, co mówi. Jednak robi to, co mówi bardzo dosłownie. Powiela post i odpowiadające mu pola postmeta (niestandardowe). Wydaje się jednak, że nie będzie propagować żadnych taksonomii do zduplikowanego postu (wtyczka powinna skopiować i przypisać te same terminy taksonomii, takie jak kategorie lub tagi, z oryginalnego postu do zduplikowanego postu)”.
- Gdybym miał być bardzo wybredny, wspomniałbym również, że nie jest gotowy na L10n – nie będzie opcji przetłumaczenia tej wtyczki. Ale to tylko bardzo czepialstwo – tak naprawdę nie sądzę, ani nie spodziewałbym się, że wtyczka generująca podpowiedzi będzie na tyle ogólna, aby w ogóle potrzebować czegoś takiego. Dla mnie jest to raczej coś w rodzaju „bardzo specyficznej domeny problemu”, włączając w to używany język. Pod koniec dnia robi to, co mówi, że zrobi, co jest bardzo miłe”.
</ul>
Oprócz zbadania kodu wtyczki WordPress wygenerowanego przez ChatGPT i przekazania opinii, jak pokazano powyżej, nasi programiści zgodzili się również z następującymi kluczowymi punktami po ocenie obecnych możliwości ChatGPT w zakresie generowania kodu:
1 – Ważne jest, aby zachować ostrożność i nie ślepo akceptować kodu wygenerowanego przez ChatGPT jako poprawnego.
- ChatGPT może dostarczyć odpowiedzi, ale to do użytkownika należy ocena, czy odpowiedź jest poprawna, czy nie.
- Istnieje ryzyko otrzymania nieprawidłowych lub bezsensownych odpowiedzi od ChatGPT, zarówno oczywistych, jak i subtelnych.
- Ważne jest, aby zachować ostrożność i nie ślepo akceptować wygenerowanego kodu jako poprawnego.
- Wyniki ChatGPT powinny być traktowane jako autouzupełnianie, ułatwiające życie, ale wymagające ostrożności i weryfikacji.
Zdolność do odróżnienia dobrego kodu od złego lub bezsensownego oznacza jednak, że…
2 – Użytkownicy powinni mieć wystarczającą wiedzę i zrozumienie rozwoju wtyczek WordPress, aby ocenić i zmodyfikować wygenerowany kod w razie potrzeby.
- ChatGPT może pomóc uprościć i przyspieszyć proces tworzenia prostych niestandardowych wtyczek WordPress, generowania fragmentów kodu i dostarczania wyjaśnień. Wszystko, co bardziej złożone, wymaga jednak doświadczenia w tworzeniu wtyczek i umiejętności kodowania.
- Korzystanie z ChatGPT bez wystarczającej wiedzy może prowadzić do negatywnych konsekwencji lub niewiarygodnego kodu.
- Poleganie wyłącznie na ChatGPT bez krytycznego myślenia jest podobne do ślepego kopiowania pierwszej odpowiedzi ze Stack Overflow (wątki Stack Overflow zapewniają więcej kontekstu, wiele odpowiedzi i opinie innych użytkowników, co czyni je bardziej wiarygodnym źródłem, ale wątki Stack Overflow mają tendencję do bycia bardziej ogólnymi, podczas gdy ChatGPT może dostarczyć konkretnych odpowiedzi na indywidualne zapytania).
3 – Korzystanie z innych zasobów, takich jak dokumentacja WordPress, samouczki i fora społecznościowe, wraz z ChatGPT może zapewnić bardziej kompleksowe zrozumienie rozwoju wtyczek WordPress.
- Podczas odkrywania możliwości wykorzystania ChatGPT do tworzenia wtyczek WordPress, warto zaangażować się w społeczność WordPress. Dziel się swoimi doświadczeniami, pytaj o opinie i szukaj wskazówek od doświadczonych deweloperów. Uczestnictwo w forach, spotkaniach WordPress lub dołączanie do społeczności internetowych może dostarczyć cennych spostrzeżeń i pomóc w udoskonaleniu procesu tworzenia wtyczek.
- Ponadto warto rozważyć przestrzeganie najlepszych praktyk bezpieczeństwa WordPress, aby zabezpieczyć swoją witrynę przed potencjalnymi lukami w zabezpieczeniach. ChatGPT może dostarczyć zaleceń dotyczących środków bezpieczeństwa, które można wdrożyć w celu ochrony wtyczki.
- Ważne jest również, aby zachować jasne zrozumienie pożądanej funkcjonalności i dokładnie przejrzeć i przetestować wygenerowany kod oraz zabezpieczyć niestandardowe wtyczki przed wdrożeniem ich do środowiska produkcyjnego.
Czy ChatGPT może zmienić cię w programistę wtyczek WordPress?
W tym artykule zbadaliśmy, w jaki sposób można wykorzystać ChatGPT do tworzenia prostych niestandardowych wtyczek WordPress, nawet jeśli masz ograniczone doświadczenie w kodowaniu.
W innych artykułach widzieliśmy, że narzędzia oparte na sztucznej inteligencji, takie jak ChatGP, mogą usprawnić przepływ pracy, zwiększyć produktywność i odblokować nowe możliwości (sprawdź nasz ostatni artykuł na temat sposobów, w jakie ChatGPT może pomóc Ci jako programista WordPress).
Chociaż dostępnych jest ponad 60 000 darmowych wtyczek WordPress obejmujących każdy rodzaj funkcjonalności, jaki można sobie wyobrazić, czasami możesz potrzebować niestandardowego rozwiązania.aby spełnić specyficzne wymagania klienta.
Poza podstawową funkcjonalnością wtyczki, można również wykorzystać ChatGPT do generowania kodu dla niestandardowych interfejsów użytkownika. Dzięki jego zdolności do rozumienia podpowiedzi i generowania fragmentów HTML, CSS i JavaScript, możesz tworzyć intuicyjne interfejsy administratora, komponenty front-end i elementy interaktywne, które poprawią wrażenia użytkownika i pozwolą Ci dostarczyć dopracowany produkt końcowy.
Wykorzystując możliwości modelu językowego, można generować fragmenty kodu, optymalizować funkcjonalność i tworzyć przyjazne dla użytkownika interfejsy. Ważne jest jednak, aby zrozumieć wygenerowany kod, przejrzeć go i udoskonalić oraz dokładnie przetestować niestandardowe wtyczki przed wdrożeniem ich w działającej witrynie.
Wygenerowany kod może również wymagać dostosowania do standardów kodowania, konwencji nazewnictwa lub określonych wymagań projektu. Wymaga to pewnej wiedzy i umiejętności w zakresie kodowania, podobnie jak optymalizacja kodu i zapewnienie, że jest on zgodny z wytycznymi kodowania WordPress dla lepszej konserwacji.
Podsumowanie:
Oto moje wnioski po próbie nakłonienia ChatGPT do zakodowania mi wtyczki od podstaw:
- Nie udałoby mi się tego zrobić bez pomocy naszych doświadczonych programistów.
- Używanie ChatGPT do generowania kodu bez wiedzy o kodowaniu jest naprawdę trudne – pomaga wiedzieć, co robisz 🙂
- Podczas gdy ChatGPT jest potężnym i cennym narzędziem, nie wydaje się, aby sztuczna inteligencja zastąpiła wykwalifikowanych programistów w najbliższym czasie.
Zainteresowany tworzeniem wtyczek WordPress?
Sprawdź niektóre z naszych samouczków i artykułów na temat tworzenia wtyczek WordPress: