ChatGPT가 실제로 작동하는 유용한 WordPress 플러그인을 구축할 수 있습니까?
게시 됨: 2023-05-22AI가 비코더를 프로 WordPress 플러그인 개발자로 전환할 수 있습니까? 이를 알아보기 위해 ChatGPT에 사용자 정의 WordPress 플러그인을 처음부터 빌드하도록 요청한 다음 균열 개발자 팀이 코드를 검사하도록 했습니다…
AI는 현재 세계에서 가장 인기 있는 두 글자 단어입니다. AI가 우리의 일자리를 앗아갈 것인지에 대한 최근의 모든 뉴스 헤드라인을 통해 우리는 알고 싶었습니다... ChatGPT가 처음부터 코드를 작성하지 않고도 실제로 기능적이고 유용한 WordPress 플러그인을 개발할 수 있습니까? 그리고 플러그인이 최고의 코딩 관행을 충족합니까?
다행스럽게도 WPMU DEV는 세계에서 가장 강력한 WordPress 플러그인을 구축하므로 ChatGPT를 테스트할 수 있는 전문 WordPress 플러그인 개발자가 많이 있습니다.
사실 우리 회사의 가상 회랑을 거닐다 보면 워드프레스 코더와 개발자를 마주칠 수밖에 없습니다. 여기 있는 모든 사람들이 WordPress 플러그인을 보고 Neo가 Matrix의 디지털 레인 코드를 보는 방식으로 PHP를 볼 수 있는 것 같습니다.
여러분, 그건... 저만 빼고요!
저는 코딩 기술이 없고 이력서에 "신속한 엔지니어"를 추가하고 싶은 불타는 열망이 있는 블로그 작가일 뿐입니다.
따라서 이 게시물에서는 광범위한 코딩 기술이 부족하더라도 ChatGPT의 기능을 활용하여 간단한 사용자 지정 WordPress 플러그인을 빠르고 안전하게 구축하는 방법을 살펴보겠습니다.
우리는 이것을 할 것입니다:
1) 우리가 테스트할 수 있는 유용한 플러그인에 대한 코드를 생성하도록 ChatGPT에 요청합니다.
2) 우리의 전문 플러그인 개발자 팀을 지나서 ChatGPT에서 생성된 코드를 실행하여 그들이 코드를 검토하고 정직한 피드백을 제공할 수 있도록 합니다.
다음 내용을 다룹니다.
- 1단계 – 플러그인 기능 정의
- 2단계 – ChatGPT로 코드 스니펫 생성
- 3단계 – 사용자 지정 플러그인 테스트
- 전문가 플러그인 개발자의 피드백
- ChatGPT로 WordPress 플러그인 개발자가 될 수 있습니까?
1단계 – 플러그인 기능 정의
ChatGPT를 사용하여 코드를 생성하기 전에 플러그인에서 제공하려는 기능을 명확하게 이해해야 합니다.
이는 플러그인으로 달성하려는 특정 기능, 작업 또는 수정 사항을 설명하는 것으로 시작합니다. 그러면 ChatGPT에 대한 정확한 프롬프트를 생성하고 AI 생성 코드가 원하는 결과와 일치하는지 확인하는 데 도움이 됩니다.
2단계 – ChatGPT로 코드 스니펫 생성
ChatGPT를 사용하여 코드 스니펫을 생성하기 위해 우리는 작업을 간단하고 무료로 유지하고 OpenAI에서 제공하는 무료로 사용할 수 있는 인터페이스를 사용할 것입니다.
1번을 선택하세요…
참고: 처음부터 WordPress 플러그인을 만들기 위해 ChatGPT를 사용하려는 나의 첫 번째 시도는 너무 야심적이었습니다. ChatGPT에 간단한 워드프레스 구축을 요청했습니다. 시간 여행 아래 프롬프트를 사용하여 더미 텍스트 생성 플러그인…
WordPress 튜토리얼을 작성하는 데 많은 시간을 보내는 사람으로서 저는 종종 플러그인 테스트, 스크린샷 생성 등을 위해 더미 콘텐츠가 필요합니다.
그래서 저는 FakerPress라는 플러그인에서 AI 생성 더미 콘텐츠 플러그인을 모델링하는 것이 좋을 것이라고 생각했습니다.
ChatGPT는 내 요청을 푸시백하고 내가 요청한 모든 기능을 갖춘 완전한 기능의 WordPress 플러그인을 만드는 것은 단일 응답의 범위를 벗어남을 알려주었습니다.
그러나 기본 템플릿을 제공하고 내가 언급한 기능 중 일부를 구현하는 방법을 안내하고 플러그인 디렉토리 및 파일을 만드는 방법에 대한 지침도 제공했습니다…
처음에 꽤 인상적이었던 ChatGPT 출력 코드…
ChatGPT는 또한 다음 단계를 완료하는 데 필요한 모든 추가 코드를 출력합니다.
플러그인 코드 출력으로 다음 단계는 플러그인을 내 테스트 사이트에 업로드하고 테스트하여 작동하는지 확인하는 것이었습니다.
3단계 – 사용자 지정 플러그인 테스트
내 테스트 사이트의 wp-content > plugins
디렉토리에 플러그인 코드가 포함된 폴더를 업로드하고 Plugins 화면에서 활성화한 후…
치명적인 오류가 발생했습니다!
아마도 ChatGPT가 제공한 추가 스니펫을 추가하지 않았다고 가정하고 돌아가서 업로드된 플러그인 파일을 덮어쓰고 업데이트하기 위해 간단히 복사하여 붙여넣을 수 있는 단일 파일로 모든 코드를 제공하도록 요청했습니다…
출력할 코드가 많아서 프로세스가 멈출 때마다 ChatGPT에 계속하라고 지시했습니다…
이 과정을 여러 번 반복한 후 ChatGPT는 전체 코드를 출력하고 유용한 정보도 제공했습니다.
새 코드가 포함된 플러그인 파일을 내 테스트 사이트에 업로드한 다음 사이트의 관리 영역으로 이동하여 플러그인을 활성화했습니다.
그것은 효과가 있었다! 아니면 그렇게 보였습니다.
ChatGPT는 플러그인에 자체 메뉴 항목을 제공했습니다…
멋진 상자와 필드가 많은 설정 화면…
하지만 생성할 게시물이나 페이지 수를 지정하는 필드를 볼 수 없었기 때문에 몇 개의 상자를 선택하고 값을 입력한 다음 "변경 사항 저장" 버튼을 클릭하여 어떻게 되는지 확인했습니다.
그리고… 아무 일도 일어나지 않았습니다!
내 멋진 플러그인은 마치 우주 공간에서 날아가는 척하면서 돌릴 수 있는 쓸모없는 손잡이와 누를 수 있는 버튼으로 가득 찬 어린이 놀이터 우주선 중 하나와 같이 모두 가상이었습니다.
그래서 Slack을 통해 개발자 중 한 명에게 연락하여 플러그인 파일을 살펴보라고 요청했습니다.
돌아온 댓글 중 일부는 다음과 같습니다.
- "플러그인은 모든 관리 페이지 로드에서 임의의 콘텐츠를 생성하려고 시도합니다."
- “
dummy_content_generator_generate_content_paragraphs
함수를 호출하여 생성하려는 모든 단락에 대해dummy_content_generator_get_random_paragraph
호출하려고 시도합니다. 문제는dummy_content_generator_get_random_paragraph
함수가 없다는 것입니다. - "페이지가 특정 지점까지 로드된 다음 누락된 항목이 더 있기 때문에 오류가 발생합니다."
- "언급된 모든 문제 외에는 유효성 검사가 전혀 없고 출력이 이스케이프되지 않아 끔찍합니다."
- “무언가를 출발점으로 삼는다는 점에서 이것은 매우, 매우 빈약한 것입니다. 작동하는 플러그인을 가지고 있다는 점에서 이것은 그 어디에도 없습니다.”
몇 차례의 논의 끝에 플러그인에 상당히 많은 문제가 있고 수정하려면 많은 작업이 필요하다고 판단되어 프로젝트를 폐기할 것을 제안했습니다.
그러나 이 시점에서 나는 단순히 모든 것을 포기하고 포기하기에는 내 사명에 너무 몰두했습니다. 윈스턴 처칠 경의 유명한 말을 떠올리며 ( "브랜디 하나 더 가져와" "절대로 포기하지마, 절대 포기하지마, 절대, 절대, 절대..."), 나는 지금이...
2번을 선택하세요…
좋아, 그래서 처음부터 WordPress 플러그인을 빌드하기 위해 ChatGPT를 얻는 첫 번째 시도는 음울한 실패였습니다. 이것은 그 자체로 복잡한 코딩 작업을 수행하는 ChatGPT의 능력에 대한 귀중한 통찰력을 제공했습니다(또는 팀의 누군가가 말했듯이 "광범위한 코딩 지식 없이는 ChatGPT를 사용하여 코딩할 수 없습니다.").
그래서 "Take #2"를 위해 더 간단한 플러그인 요청으로 다시 시도하기로 했습니다.
드로잉 보드로 돌아가서 천재적인 전구의 순간이 내 마음에 불을 붙였습니다… ChatGPT에 코드를 생성할 수 있는 간단한 WordPress 플러그인에 대한 아이디어를 제안하도록 요청하는 것이 어떻습니까?
그래서 제가 한 일입니다. 제가 신속하게 설계한 프롬프트는 다음과 같습니다.
그리고 ChatGPT가 응답한 추천 플러그인 목록은 다음과 같습니다.
마지막 제안이 마음에 들어서 ChatGPT에 기능적인 콘텐츠 복제기 플러그인에 대한 코드를 생성하도록 요청했고 즉시 작동했습니다.
ChatGPT는 눈 깜짝할 사이에 플러그인에 대해 다음 코드를 생성했습니다.
<?php /* Plugin Name: Content Duplicator Description: Allows users to duplicate posts, pages, or custom post types with one click. Version: 1.0.0 Author: 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'] = '<a href="' . wp_nonce_url( admin_url( 'admin-post.php?action=content_duplicator_duplicate_post&post_id=' . $post->ID ), 'content_duplicator_duplicate_post' ) . '" title="Duplicate this item" rel="permalink">Duplicate</a>'; } 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 ); } } // Redirect to the duplicated post 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' );
코드를 생성한 후 일련의 지침도 제공했습니다.
그런 다음 The Hub의 파일 관리자를 사용하여 테스트 사이트의 wp-content > plugins
디렉토리에 새 플러그인 파일을 업로드했습니다.
그리고 플러그인을 테스트하기 위해 더미 포스트를 만들었습니다…
플러그인을 활성화하기 전 게시물의 메뉴 옵션은 다음과 같습니다.
플러그인을 활성화한 후…
성공!
플러그인이 활성화되었습니다. 그러나 실제로 효과가 있었습니까?
여기 내 테스트 게시물이 다시 있습니다(플러그인이 활성화 후 메뉴에 새로운 "Duplicate" 항목을 추가했음을 참고하십시오). 그런 다음 "Duplicate(복제)"를 클릭하여 무슨 일이 일어나는지 확인했습니다…
그리고 중복 게시물이 생성되었습니다!
다음은 원본 게시물과 중복 게시물에 대한 항목을 보여주는 게시물 표입니다.
더 나은 프롬프트 엔지니어링과 약간의 코드 조정으로 플러그인이 크게 개선될 수 있었다고 확신합니다. 예를 들어 플러그인이 새로 복제된 게시물의 게시물 상태를 게시하는 대신 '초안'으로 설정하면 좋겠지만 ChatGPT는 작동하는 간단한 WordPress 플러그인을 제공했습니다. 기본적이지만 할만했습니다.
마지막 단계는 생계를 위해 WordPress 플러그인을 코딩하는 사람에게 코드를 면밀히 조사하고 ChatGPT와 같은 도구를 사용하여 플러그인을 코딩하는 것에 대한 의견을 얻는 것이었습니다.
전문가 플러그인 개발자의 피드백
테스트 채널 중 하나에 플러그인을 업로드한 직후 개발자 중 한 명으로부터 핑을 받았습니다. 피드백에 제공된 몇 가지 핵심 사항은 다음과 같습니다.
- "ChatGPT 등은 이미 답을 알고 있는 질문에 답하는 데 능숙합니다."
- “과거에 간단한 플러그인을 빌드하는 데도 사용했지만 더 복잡한 프롬프트를 제공하는 한 일이 엉망이 되기 시작했습니다. 실제로 한 줄씩 디버깅하는 데 시간이 걸립니다.”
- “기본적으로 시키는 대로 합니다. 그러나 그것은 매우 문자 그대로 말하는 것을 수행합니다. 마찬가지로 게시물과 해당 postmeta(사용자 정의) 필드를 복제 합니다 . 그러나 복제된 게시물에 분류법을 전파할 것 같지는 않습니다(플러그인은 원본 게시물에서 복제된 게시물로 카테고리 또는 태그와 같은 동일한 분류법 용어를 복사하고 할당해야 합니다).”
- 내가 이것에 대해 매우 까다롭다면 L10n이 지원되지 않는다고 언급하고 싶습니다. 이 플러그인을 번역할 수 있는 옵션이 없을 것입니다. 그러나 그것은 매우 까다로운 것입니다. 즉석에서 생성된 플러그인이 그런 것이 전혀 필요할 만큼 충분히 일반적이라고 생각하지도 않고 기대하지도 않습니다. 나에게 그것은 사용된 언어를 포함하여 "매우 구체적인 문제 영역"에 가깝습니다. 하루가 끝나면 약속한 대로 수행합니다. 매우 좋습니다.”
ChatGPT에서 생성된 WordPress 플러그인 코드를 검토하고 위와 같이 피드백을 제공하는 것 외에도 개발자는 ChatGPT의 현재 코드 생성 기능을 평가한 후 다음과 같은 핵심 사항에 동의했습니다.
1 – ChatGPT에서 생성된 코드를 올바른 것으로 맹목적으로 받아들이지 말고 주의를 기울이는 것이 중요합니다.
- ChatGPT는 답변을 제공할 수 있지만 답변이 올바른지 여부를 평가하는 것은 사용자의 몫입니다.
- ChatGPT에서 명백하거나 미묘하게 부정확하거나 무의미한 답변을 받을 위험이 있습니다.
- 주의를 기울이고 생성된 코드를 올바른 것으로 맹목적으로 받아들이지 않는 것이 중요합니다.
- ChatGPT의 출력은 자동완성으로 처리되어 삶이 더 쉬워지지만 주의와 확인이 필요합니다.
그러나 나쁜 코드나 무의미한 코드로부터 좋은 코드를 식별하는 능력은 다음을 의미합니다.
2 – 사용자는 필요에 따라 생성된 코드를 평가하고 수정하기 위해 WordPress 플러그인 개발에 대한 충분한 지식과 이해를 가지고 있어야 합니다.
- ChatGPT는 간단한 사용자 정의 WordPress 플러그인 구축 프로세스를 단순화하고 신속하게 처리하고 코드 스니펫을 생성하며 설명을 제공할 수 있습니다. 그러나 더 복잡한 것은 플러그인 개발 경험과 코딩 기술이 필요합니다.
- 충분한 지식 없이 ChatGPT를 사용하면 부정적인 결과나 신뢰할 수 없는 코드로 이어질 수 있습니다.
- 비판적 사고 없이 ChatGPT에만 의존하는 것은 스택 오버플로의 첫 번째 답변을 맹목적으로 복사하는 것과 유사합니다(스택 오버플로 스레드는 더 많은 컨텍스트, 여러 답변 및 다른 사용자의 피드백을 제공하므로 더 안정적인 리소스가 되지만 스택 오버플로 스레드는 더 많은 경향이 있습니다. 반면 ChatGPT는 개별 쿼리에 대한 특정 답변을 제공할 수 있습니다.
3 – ChatGPT와 함께 WordPress 설명서, 자습서 및 커뮤니티 포럼과 같은 다른 리소스를 활용하면 WordPress 플러그인 개발에 대한 보다 포괄적인 이해를 제공할 수 있습니다.
- WordPress 플러그인 개발에 ChatGPT를 사용할 가능성을 탐색할 때 WordPress 커뮤니티에 참여하는 것이 중요합니다. 경험을 공유하고, 피드백을 요청하고, 숙련된 개발자에게 조언을 구하세요. 포럼 참여, WordPress 모임 참석 또는 온라인 커뮤니티 참여는 귀중한 통찰력을 제공하고 플러그인 개발 프로세스를 개선하는 데 도움이 될 수 있습니다.
- 또한 WordPress 보안 모범 사례를 따라 잠재적인 취약성으로부터 웹 사이트를 보호하는 것이 좋습니다. ChatGPT는 플러그인을 보호하기 위해 구현할 수 있는 보안 조치에 대한 권장 사항을 제공할 수 있습니다.
- 원하는 기능에 대한 명확한 이해를 유지하고 생성된 코드를 철저히 검토 및 테스트하고 프로덕션 환경에 배포하기 전에 사용자 지정 플러그인을 보호하는 것도 중요합니다.
ChatGPT로 WordPress 플러그인 개발자가 될 수 있습니까?
이 기사에서는 코딩 경험이 제한적인 경우에도 ChatGPT를 활용하여 간단한 사용자 지정 WordPress 플러그인을 구축하는 방법을 살펴보았습니다.
다른 기사에서 우리는 ChatGP와 같은 AI 기반 도구가 작업 흐름을 간소화하고 생산성을 높이며 새로운 가능성을 열 수 있음을 확인했습니다(ChatGPT가 WordPress 개발자로서 당신을 도울 수 있는 방법에 대한 최신 기사를 확인하십시오).
상상할 수 있는 모든 유형의 기능을 포함하는 60,000개 이상의 무료 WordPress 플러그인이 있지만 때로는 클라이언트의 특정 요구 사항을 충족하기 위해 사용자 지정 솔루션이 필요할 수 있습니다.
플러그인의 핵심 기능 외에도 ChatGPT를 활용하여 사용자 지정 사용자 인터페이스용 코드를 생성할 수 있습니다. 프롬프트를 이해하고 HTML, CSS 및 JavaScript 스니펫을 생성하는 기능을 통해 사용자 경험을 향상시키고 세련된 최종 제품을 제공할 수 있는 직관적인 관리 인터페이스, 프런트 엔드 구성 요소 및 대화형 요소를 만들 수 있습니다.
언어 모델의 기능을 활용하여 코드 스니펫을 생성하고 기능을 최적화하며 사용자 친화적인 인터페이스를 만들 수 있습니다. 그러나 생성된 코드를 이해하고 이를 검토 및 수정하며 실제 웹 사이트에 배포하기 전에 사용자 정의 플러그인을 철저히 테스트하는 것이 중요합니다.
생성된 코드는 코딩 표준, 명명 규칙 또는 특정 프로젝트 요구 사항에 맞게 조정해야 할 수도 있습니다. 이를 위해서는 코드를 최적화하고 더 나은 유지 관리를 위해 WordPress 코딩 지침을 따르도록 하는 것과 마찬가지로 어느 정도의 코딩 지식과 기술이 필요합니다.
결론:
다음은 ChatGPT가 플러그인을 처음부터 코딩하도록 시도한 후 발견한 내용입니다.
- 숙련된 개발자의 도움 없이는 이 작업을 수행할 수 없었습니다.
- 코딩 지식 없이 ChatGPT를 사용하여 코드를 생성하는 것은 정말 어려운 일입니다. 자신이 무엇을 하고 있는지 파악하는 데 도움이 됩니다 :)
- ChatGPT는 강력하고 가치 있는 도구이지만 AI가 곧 숙련된 코더를 대체할 것 같지는 않습니다.
WordPress 플러그인 개발에 관심이 있으십니까?
WordPress 플러그인 개발에 대한 몇 가지 자습서 및 기사를 확인하십시오.
- WordPress 플러그인 개발 시작하기
- WordPress Hooks에 대한 빠르고 자세한 가이드
- 객체 지향 방식으로 WordPress 플러그인 만들기