Technote

테마 · 플러그인 입문

업데이트가 멈춘 플러그인을 판별하는 기준

마지막 업데이트 날짜 하나로는 방치를 판정할 수 없습니다. 판별 신호 다섯 개를 함께 보고, 대체 불가라면 격리 조건이라도 걸어야 합니다.

플러그인 방치는 취약점이 공개된 채로 고쳐지지 않는 상태가 된다는 뜻입니다. 문제는 “마지막 업데이트 2년 전” 같은 숫자 하나로 단정하기 어렵다는 것 — 완성돼서 조용한 플러그인과 버려져서 조용한 플러그인은 겉이 같습니다.

다섯 가지 신호를 겹쳐 본다

  • Tested up to — 코어 몇 개 버전 전에서 멈췄는가. 날짜보다 정직한 신호입니다.
  • 지원 포럼 응답 — 최근 질문에 개발자 응답이 있는가. 무응답 스레드가 쌓이면 방치입니다.
  • 공개 취약점 이력 — 취약점 DB 에 미해결(unfixed) 항목이 있는가. 이것 하나면 즉시 교체 대상입니다.
  • PHP 호환 — 최신 PHP 에서 deprecated 경고를 쏟아내는가. 방치의 이른 징후입니다.
  • 설치 수 추세 — 활성 설치가 줄고 있는가. 커뮤니티가 이미 떠나는 중이라는 뜻입니다.
판정 → 대체 → 제거, 비활성화로 끝내지 않는다

대체가 불가능할 때의 차선

맞물린 데이터 구조 때문에 당장 못 지우는 경우가 있습니다. 그때는 노출면이라도 줄입니다 — 해당 플러그인의 프론트 엔드포인트를 서버에서 막고, 관리자 전용 기능이면 관리자 밖에서 로드되지 않게 하고, 파일 권한을 읽기 전용으로 내립니다. 격리는 해결이 아니라 유예라는 것을 기록에 남기는 것까지가 일입니다.

애초에 늘리지 않기

플러그인 하나는 기능 하나가 아니라 유지보수 부채 하나입니다. 도입 전에 코어 · 테마 · 몇 줄의 자체 코드로 해결되는지 먼저 확인하는 습관이 이 판별 작업 자체를 줄입니다. 반복 필드가 필요할 때 유료 플러그인 대신 구조로 푸는 예시를 ACF 무료판 콘텐츠 모델에서 볼 수 있습니다.

설치된 플러그인 전체의 취약점 대조는 최적화 지원 사업의 취약점 진단 항목에서 전/후 리포트로 제공합니다.

이 주제의 다른 글

노하우 목록으로

테마 · 플러그인 실무

템플릿 안의 보조 쿼리 — reset 을 빠뜨리면

관련 글 목록을 넣었더니 그 아래의 모든 것이 엉뚱한 글을 가리킵니다. 템플릿 문제처럼 보이지만 원인은 빠뜨린 한 줄입니다.

개발자 5분 읽기

테마 · 플러그인 실무

옛 콘텐츠가 새 디자인에서 깨지는 세 가지 이유

본문에 박힌 인라인 스타일, 사라진 플러그인의 숏코드 잔여물, 하드코딩된 폭. 새 디자인 시스템이 존중받지 못하는 지점은 대개 이 셋입니다.

디자이너 3분 읽기

테마 · 플러그인 실무

편집 가능한 영역을 디자인 전에 정합니다

CMS 가 표현할 수 없는 디자인은 배포된 뒤에도 계속 협상 대상으로 남습니다. 어디까지 편집자가 바꿀 수 있는지를 먼저 정하면 그 협상 자체가 사라집니다.

디자이너 3분 읽기

₩270,000 · 신청하기