2026년 단계별 워드프레스 AI 플러그인 만들기

발행: (2026년 6월 11일 PM 05:45 GMT+9)
2 분 소요
원문: Dev.to

워드프레스 AI 플러그인 만드는 방법 (2026 단계별 가이드)

이 가이드는 AI 콘텐츠 생성을 위한 완전한 워드프레스 플러그인을 구축합니다. 설정 페이지, OpenAI API 래퍼, 보안 AJAX 핸들러, 그리고 Gutenberg 사이드바 패널을 포함합니다.

wp-ai-assistant/
├── wp-ai-assistant.php    # Headers + init
├── includes/class-api.php # OpenAI wrapper
├── includes/class-ajax.php# AJAX handlers
└── assets/editor.js       # Gutenberg sidebar
class WP_AI_Assistant_API {
    public function generate(string $prompt): string {
        $client = OpenAI::client(get_option('wp_ai_assistant_api_key'));
        $response = $client->chat()->create([
            'model' => 'gpt-4o-mini',
            'messages' => [['role' => 'user', 'content' => $prompt]],
        ]);
        return $response->choices[0]->message->content;
    }
}

add_action('wp_ajax_wp_ai_generate', function () {
    check_ajax_referer('wp_ai_assistant_nonce', 'nonce');
    if (!current_user_can('edit_posts')) wp_send_json_error('Forbidden', 403);
    $prompt = sanitize_textarea_field($_POST['prompt'] ?? '');
    try {
        $result = (new WP_AI_Assistant_API())->generate($prompt);
        wp_send_json_success(['content' => $result]);
    } catch (Exception $e) {
        wp_send_json_error($e->getMessage());
    }
});

const { registerPlugin } = wp.plugins;
registerPlugin('wp-ai-assistant', { render: AIAssistantPanel });
// Panel calls admin-ajax.php → inserts generated content as a paragraph block
  • 모든 AJAX 액션에 check_ajax_referer() 사용
  • 처리 전에 current_user_can() 로 권한 확인
  • 모든 입력에 sanitize_* 적용, 모든 출력에 esc_* 적용
  • API 키는 wp_options에 저장하고 코드에는 절대 포함하지 않음

원본은 kalyna.pro에서 처음 공개되었습니다.

0 조회
Back to Blog

관련 글

더 보기 »