MailMerge 메인 배너

Microsoft Word의 메일 병합은 사용자가 편지를 개별 서신처럼 읽을 수 있는 문서로 렌더링할 수 있는 놀라운 기능 중 하나입니다. 여러 사람에게 한 세트의 정보를 전달하기 위해 개별 편지를 준비하는 과정과 비교할 때, 메일 병합은 시간과 노력을 절약하고 레이블이나 봉투가 포함된 대량 우편물을 생산하며 사용자 지정 세부 정보가 포함된 통합된 메시지를 보낼 수 있습니다. 메일 병합의 다른 이점은 다음과 같습니다.

  • 병합이 설정되면 수천 개의 편지를 빠르게 생성할 수 있습니다.
  • 수천 통의 개별 편지를 교정하는 것보다 단 한 통의 편지를 교정하는 것이 훨씬 쉽습니다.
  • 특정 기준을 충족하는 사람에게 편지를 보낼 수 있습니다.
  • 표준 편지를 저장하고 재사용하세요.
  • 편지를 개인화하세요.
  • 동일한 데이터 소스를 재사용하면 오류 위험이 줄어듭니다.

이 기능의 중요성을 감안하여 Aspose.Words Cloud는 메일 병합 기능을 완벽하게 지원합니다. 또한 수신자 이름에 따라 편지를 개인화할 수도 있습니다. 데이터 소스는 목록, 스프레드시트 또는 데이터베이스의 일종이 될 수 있으며 문서와 관련이 있습니다. 이 블로그 게시물에서는 PHP 언어를 사용하여 메일 병합 또는 콧수염 템플릿을 데이터로 채우는 요령에 대해 설명합니다.

템플릿을 사용한 MailMerge

MailMerge 기능을 사용하려면 Word 템플릿 문서와 데이터 파일을 사용해야 합니다. 이것들은 ExecuteMailMergeOnline에 대한 두 가지 입력 인수입니다.

cRUL 명령

curl -X PUT "https://api.aspose.cloud/v4.0/words/MailMerge?withRegions=false&documentFileName=template" -H  "accept: application/octet-stream" -H  "Authorization: Bearer <JWT Token>" -H  "Content-Type: multipart/form-data" -H  "x-aspose-client: Containerize.Swagger" -d {"Template":{},"Data":{}}

요청 URL

https://api.aspose.cloud/v4.0/words/MailMerge?withRegions=false&documentFileName=template

페소(PHP)

<?php 

    include(dirname(__DIR__).'\CommonUtils.php');
    use Aspose\Words\WordsApi;
    use Aspose\Words\Model\Requests;

    try {
        // WordsApi 인스턴스 생성
        $wordsApi = new WordsApi(CommonUtils::$AppSid, CommonUtils::$AppKey, CommonUtils::$ApiBaseUrl);

        $fileName = "SampleMailMergeTemplate.docx";
        $fileData = realpath(__DIR__ . '/../..').'\resources\\' . $fileName;
        $destName = "Out_TestMailMergeWithImages.docx";
        $data = realpath(__DIR__ . '/../..').'\resources\SampleMailMergeTemplateData.txt';

        // 클라우드 스토리지에 문서 업로드
        $wordsApi->uploadFile(new Requests\UploadFileRequest(realpath(__DIR__ . '/../..').'\resources\\' . $fileName, "", CommonUtils::$MyStorage));

        // 요청을 생성하고 API 메서드를 실행합니다.
        $request = new Requests\ExecuteMailMergeOnlineRequest($fileData, $data, null, null, null);
        $result = $wordsApi->executeMailMergeOnline($request);
        print_r($result);
    
    } catch (Exception $e) {
        echo "Something went wrong: ", $e->getMessage(), "\n";
    }
?>
MailMerge 결과 파일

그림 1: MailMerge 작업 미리보기.

메일 병합 중 HTML 삽입

간단한 콘텐츠 외에도 API는 메일 병합 필드 내에 HTML을 삽입하는 기능도 제공합니다. ExecuteMailMerge API를 사용하면 메일 병합 필드 내에 HTML을 삽입할 수 있습니다. 아래 예와 같이 템플릿 파일에 HTML 테이블과 이미지를 삽입하고 결과 파일을 클라우드 저장소에 저장합니다.

cURL 명령

curl -X PUT "https://api.aspose.cloud/v4.0/words/template.doc/MailMerge?withRegions=false&mailMergeDataFile=TestExecuteMailMergeData%20%281%29.txt&useWholeParagraphAsRegion=true" -H  "accept: application/json" -H  "Authorization: Bearer <JWT Token>" -H  "Content-Type: multipart/form-data" -H  "x-aspose-client: Containerize.Swagger" -d {"data":""}

요청 URL

https://api.aspose.cloud/v4.0/words/template.doc/MailMerge?withRegions=false&mailMergeDataFile=TestExecuteMailMergeData%20%281%29.txt&useWholeParagraphAsRegion=true

페소(PHP)

<?php 

    include(dirname(__DIR__).'\CommonUtils.php');
    use Aspose\Words\WordsApi;
    use Aspose\Words\Model\Requests;

    try {
        // WordsApi 인스턴스 생성
        $wordsApi = new WordsApi(CommonUtils::$AppSid, CommonUtils::$AppKey, CommonUtils::$ApiBaseUrl);

        $fileName = "template.doc";
        $destName = "Out_PostDocumentExecuteMailMergeWithHTMLData.docx";
        $data = file_get_contents(realpath(__DIR__ . '/../..').'\resources\TestPostDocumentExecuteMailMerge.txt');

        // 클라우드 스토리지에 문서 업로드
        $wordsApi->uploadFile(new Requests\UploadFileRequest(realpath(__DIR__ . '/../..').'\resources\\' . $fileName, "", CommonUtils::$MyStorage));

        // 요청을 생성하고 API 메서드를 실행합니다.
        $request = new Requests\ExecuteMailMergeRequest($fileName, $data, null, CommonUtils::$MyStorage, null, null, null, null, null, false, $destName);
        $result = $wordsApi->executeMailMerge($request);
        print_r($result);
    
    } catch (Exception $e) {
        echo "Something went wrong: ", $e->getMessage(), "\n";
    }
?>
HTML 삽입 후 메일 병합 미리보기

그림 2: HTML 삽입 후 메일 병합.

결론

이 문서에서는 PHP Cloud SDK를 사용하여 메일 병합을 수행하는 방법에 대한 세부 정보를 논의했습니다. 템플릿을 사용하여 메일 병합을 수행하는 것과 메일 병합 중에 HTML을 삽입하는 방법과 관련된 세부 정보만 살펴보았습니다. Aspose.Words Cloud SDK for PHP는 MIT 라이선스에 따라 개발되었으며 전체 소스 코드는 GitHub에서 다운로드할 수 있습니다. SDK를 사용하는 동안 문제가 발생하는 경우 무료 제품 지원 포럼을 통해 언제든지 문의하세요.

관련기사

자세한 내용을 알아보려면 다음 링크를 방문해 보세요.