Technote

테마 · 플러그인 실무

플러그인 개수는 기능 개수가 아니라 예산입니다

플러그인 생태계는 워드프레스의 최대 강점입니다. 다만 하나를 켤 때마다 매달 확인할 대상이 하나 늘어나고, 그 예산은 유한합니다.

워드프레스로 사업 사이트를 만들 수 있는 가장 큰 이유가 플러그인입니다. 예약 · 결제 · 폼 · 다국어 · 회원 관리를 직접 개발하지 않고 붙일 수 있다는 것은 대단한 강점이고, 이 글은 그것을 부정하지 않습니다.

다만 관점을 하나 바꾸면 결정이 훨씬 쉬워집니다. 플러그인은 기능 목록이 아니라 매달 지출되는 예산입니다. 설치하는 순간 비용이 시작되고, 그 비용은 돈이 아니라 확인해야 할 일의 형태로 매달 청구됩니다.

하나가 데려오는 네 가지

플러그인 하나의 실제 비용 — 아래 세 줄은 설치 화면에 표시되지 않는다

업데이트 확인이 가장 꾸준한 비용입니다. 스무 개를 설치하면 매달 스무 개의 갱신 여부를 확인하게 되고, 그중 몇 개는 적용 뒤에 화면을 다시 봐야 합니다. 이 일을 하지 않으면 예산을 아낀 것이 아니라 미룬 것입니다 — 공개된 취약점은 갱신하지 않은 사이트에만 남습니다.

충돌 가능성은 개수에 비례하지 않고 조합에 비례합니다. 두 개일 때 짝은 하나지만, 열 개면 짝만 마흔다섯 가지입니다. “어제까지 잘 되던 화면이 갑자기 깨졌다” 는 상황의 원인 추적이 어려워지는 이유가 여기 있습니다.

몇 개가 적정인가 — 질문을 바꿉니다

“플러그인은 몇 개까지 괜찮나요” 라는 질문에는 숫자로 답할 수 없습니다. 무거운 플러그인 다섯 개가 가벼운 열다섯 개보다 부담이 클 수 있고, 사업에 꼭 필요한 것이라면 열 개라도 정당합니다.

더 나은 질문은 이것입니다. 내가 매달 실제로 확인할 수 있는 수는 몇 개인가. 혼자 운영하며 이 일에 쓸 수 있는 시간이 한 달에 한 시간이라면, 그 한 시간에 들어가는 개수가 그 사이트의 상한입니다. 상한을 넘긴 초과분은 사라지는 것이 아니라 확인되지 않은 채 쌓입니다.

줄이는 순서

정리는 어렵지 않고, 대개 한 번에 여러 개가 나옵니다.

판단 기준은 편의가 아니라 "이번 달에 실제로 값을 했는가" 다

비활성 플러그인부터 지웁니다. 꺼 두면 안전하다고 생각하기 쉽지만 파일은 서버에 그대로 남아 있고, 알려진 취약점이 있는 파일은 활성 여부와 무관하게 문제가 될 수 있습니다. 나중에 다시 쓸 것 같아도 그때 다시 설치하면 됩니다.

다음은 겹치는 기능입니다. SEO 플러그인이 둘이면 검색엔진에 보내는 정보가 중복으로 나가 오히려 손해입니다. 백업 도구가 둘, 보안 도구가 둘인 경우도 흔한데, 서로의 동작을 막아 원인 추적이 불가능해집니다.

마지막으로 테마나 코어에 이미 있는 기능을 확인합니다. 이미지 최적화 · 목차 · 공유 버튼처럼 최근에는 기본 기능으로 들어온 것들이 있고, 서버 쪽에서 처리하는 편이 나은 것도 있습니다.

새로 하나 늘릴 때

설치 전에 3분만 확인하면 대부분의 사고를 미리 걸러 냅니다. 마지막 업데이트가 최근인가, 활성 설치 수가 충분한가, 알려진 취약점 이력이 어떤가 — 그리고 하나 더, 이 기능을 정말 이번 달에 쓸 것인가입니다. “언젠가 쓸 것 같아서” 설치한 플러그인은 대개 그 언젠가가 오지 않은 채 예산만 씁니다.

플러그인 선택과 유지보수에 관한 글은 테마 · 플러그인 아카이브에 모여 있고, 설치 전 점검을 습관으로 만드는 방법은 첫 보안 사고를 겪기 전에 연재에서 다룹니다. 지금 설치된 것들의 상태를 먼저 보고 싶다면 무료 도구의 진단 플러그인이, 정리와 업그레이드까지 맡기고 싶다면 최적화 지원 사업이 그 작업을 포함합니다.

이 주제의 다른 글

노하우 목록으로

테마 · 플러그인 실무

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

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

디자이너 3분 읽기

테마 · 플러그인 입문

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

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

기획자 · 운영 · 관리자 2분 읽기

테마 · 플러그인 심화

JS 없이 만드는 상호작용과 그것을 안전하게 하는 규칙

details · :target · :focus-within · :has() · 스크롤 타임라인으로 상당수의 상호작용이 스타일시트 안에서 끝납니다. 안전하게 만드는 규칙은 하나입니다 — 기본값이 완성된 상태여야 합니다.

디자이너 6분 읽기

₩270,000 · 신청하기