| CMS/프레임워크 | XE 1.x |
|---|---|
| 개발 언어 | PHP 5.x |
https://xe1.xpressengine.com/index.php?mid=download&package_id=22753717
이거 휴먼 계정으로 이메일 미인증 으로 넘기고 싶은 휴먼계정이 많아서 써보고 싶습니다.
일단 라이믹스 자료실에는 없습니다.
==============================================================================
modules\member_expire 이거 오래된 버전이야 휴면계정 정리 모듈 인데 php 5.3 정도 되고 XE1 때 만들어진 버전이야 mcp 으로 수정 될까?
먼저 모듈 구조부터 파악하겠습니다.
Searched for 1 pattern, read 6 files
전체 파일 다 봤습니다. MCP로 PHP 호환성 검사부터 돌려보겠습니다.
Called rhymix 5 times
결과 요약입니다.
---
MCP PHP 호환성 검사 결과:
┌───────────┬────┬────┐
│ 파일 │ 오류 │ 경고 │
├───────────┼────┼────┤
│ class.php │ ❌ 1건 │ - │
├───────────┼────┼────┤
│ controller.php │ - │ ⚠️ 7건 │
├───────────┼────┼────┤
│ model.php │ - │ ⚠️ 3건 │
├───────────┼───┼─────┤
│ admin.controller.php │ - │ ⚠️ 1건 │
├───────────┼────┼────┤
│ admin.view.php │ - │ ⚠️ 8건 │
└───────────┴────┴────┘
핵심 문제:
1. PHP 8 오류 (error): new Object() → new BaseObject() 교체 필요 (class.php L180)
2. PHP 8 경고 (19건): count($output->data),
3. 메일 API (MCP 미검출): XE1 구식 API 사용
- new Mail() + setReceiptor() (오타!) + setSender() + setTitle() + setContent()
- → Rhymix \Rhymix\Framework\Mail API로 전
4. 클래스명 언더스코어: Member_Expire → 언더스코어 모듈 라우팅 버그 위험 (메모리에 기록된 이슈)
5. zgap() / ztime(): XE1 타임존 함수, Rhymix deprecated
---
결론: MCP로 수정 가능합니다 — 단, 범위에 따라 두 가지 선택지가 있어요:
선택 A — 최소 패치 (빠름, 1~2시간 작업)
- PHP 8 오류/경고 전부 수정
- 메일 API 교체
- zgap() 제거 (Rhymix에서 시간대는 자동 처리됨)
- 결과: Rhymix + PHP 8 에서 정상 동작
선택 B — 전체 리팩터링 (시간 더 걸림)
- A 내용 포함
- 클래스명 member_expire로 소문자 통일 (언더스코어 라우팅 버그 근본 해결)
- 템플릿 "XE Admin" 문구 수정
- $_SESSION['member_srl'] → Rhymix 세션 API 교체
어떤 방향으로 진행할까요? 아니면 지금 당장 쓰는데 큰 문제없으면 최소 패치(A)부터 먼저 하는 게 나을 것 같습니다.
✻ Baked for 1m 29s
❯ B 로 해줘 오래걸려도 괜찮아~ php 7.4~8.5 까지 호환되게 해줘 꼼꼼히 부탁해~
✢ Channeling… (11s · thinking)
일단 다운받아서 돌려보고 있습니다.
댓글 8
원개발자입니다.
휴면계정 관련 법이 2023년에 폐기되어서 모듈도 더이상 업데이트하지 않고 있습니다.
수정해서 쓰시는 것은 자유입니다만,
회원DB 일괄 업데이트는 그냥 SQL 쿼리 한 방이 훨씬 빠를 거예요.
음...... 혹시 수정해서 배포를 해도 되는 문제인가요?
네, 수정 재배포 가능한 라이선스입니다.
mcp 가 수정하는거 보고 있는데요 대단하신거 같아요 그 당시에는 소스를 전부 쓰셨을텐데요 ㅠㅠ 엄청 고생이 많으셨을꺼 같아요 ㅠㅠ
네, 수정 재배포 가능한 라이선스입니다.
ㄴ감사합니다 잘 수정해서 배포 하겠습니다~
핵심: "개인정보 유효기간제" 폐지 (2023.9.15 시행)
이런 법이 폐지가 된게 있군요...
댓글창은 님이 AI랑 채팅한 내용을 복붙하라고 있는 곳이 아닙니다.
궁금한 사람은 각자 선호하는 AI한테 직접 물어보면 되니, 님이 하고 싶은 말만 쓰세요.
네 알겠습니다.
클래스명 대문자 언더스코어 어쩌고 하는 것는 이 녀석의 고질적인 환각인 것 같습니다.
애초에 클로드가 잘못 학습한 건지, 아니면 이 MCP만의 오류인지 모르겠지만
그런 문제는 존재하지 않습니다. 대문자 그대로 두셔도 됩니다.
단, 액션명(함수명)은 대소문자가 중요합니다. (이거랑 헷갈린 듯 ㅋㅋ)
zgap()은 필요없지만, ztime()은 최신 버전에서도 얼마든지 사용하셔도 됩니다.
물론 휴면회원은 최소 몇 개월 단위로 판단할 테니, 몇 시간 차이는 딱히 문제가 되지 않긴 해요.
질문글 본문에서는 이렇게 AI 채팅을 복붙하셔도 도움이 될 수 있습니다.^^
윗댓에서 까칠하게 굴어서 죄송합니다.