나는 여러 등급의 회원제도를 가진 조직의 포럼 관리자입니다. 이 등급들은 포럼의 사용자 그룹 멤버십에 해당합니다. 현재는 모든 신규 회원에 대해 수동으로 처리해야 합니다. 신규 회원의 이메일 주소를 받아 해당 주소가 사용자 계정에 연결되어 있는지 확인한 후, 해당 사용자를 사용자 그룹에 추가하는 과정입니다.
원하는 것은 이메일 주소 목록을 받아, 해당 주소로 등록된 사용자가 있으면 그 사용자를 그룹에 추가하고, 없으면 그룹 권한이 이미 설정된 초대장을 보내는 스크립트입니다. 이런 스크립트를 어떻게 작성해야 할까요?
문제는 제가 실제로 가지고 있는 것이 사용자 이름이 아니라 이메일 주소 목록이라는 점입니다. 저희 조직은 포럼이 조직의 일부일 뿐이므로, 포럼 사용자 이름이 아닌 이름과 이메일로 회원 등급을 관리하고 있습니다. 회원 담당자가 매주 신규 회원의 이름과 이메일 목록을 보내주는데, 포럼에 공개 섹션이 있으므로 해당 회원들이 이미 포럼 계정을 가지고 있을 수도 있고, 없을 수도 있습니다.
내가 스스로를 혼동했을 수도 있겠네요. 기존 포럼 기능으로 원하는 것을 달성할 수 있는 방법을 찾아보겠습니다.
수정:
Bulk Invite 옵션을 사용하면 가능할 것 같습니다. 이메일 주소 목록이 담긴 CSV 파일이 있고, 두 번째 열에 추가하려는 그룹이 포함되어 있다면, 이 파일을 Bulk Invite 도구에 실행하면 계정이 없는 사용자에게 가입 초대 메일을 보내고, 기존 멤버는 두 번째 열에 입력한 그룹에 추가합니다. 다만, 이 기능은 그룹에 추가되었다는 알림을 생성하지 않는다는 점이 부족합니다.
혼란을 해결했습니다. 제 생각대로 작동하는 것은 이메일이 아니라 링크였습니다. 따라서 다른 방법은 초대 링크(이메일 대신)를 생성한 후, 이메일 목록에 있는 모든 사람에게 그 링크를 이메일로 보내는 것입니다. 새 멤버는 그룹에 추가되고 해당 주제(topic)로 이동하기(해당 기준을 추가한 경우) 전에 ‘계정 생성 및 초대 수락’ 페이지로 이동하게 됩니다. 이미 로그인된 기존 사용자는 그룹에 추가되고 지정한 주제로 바로 이동하며, 로그인되지 않은 기존 사용자는 ‘계정 생성 및 초대 수락’ 페이지에서 로그인할 수 있습니다(이것이 가능한지 다소 모호하지만, js.create_account.subheader_title에 추가 텍스트를 넣어 힌트를 제공할 수 있습니다). 이후 그룹에 추가되고 해당 주제로 이동하게 됩니다.