WordPress 테마 충돌 해결 — 깨짐·흰화면·기능 미작동 대응
테마가 갑자기 깨지거나 흰 화면이 뜨면 당황스러워요. 다행히 대부분 순차 진단으로 30분 안에 해결됩니다. 흔한 증상별 원인·진단 절차를 정리.
흔한 증상 5가지
- 흰 화면 (관리자·사이트 둘 다)
- 디자인 깨짐 (CSS 미적용·레이아웃 무너짐)
- 기능 미작동 (메뉴 안 펼침·슬라이더 멈춤·폼 안 보냄)
- 모바일만 깨짐
- 특정 페이지만 이상
보편 진단 — 5단계
문제가 생기면 무조건 이 순서:
1. 백업 확인 + 즉시 백업
설정 > UpdraftPlus > "지금 백업"
작업 전 안전망. 더 망가지기 전.
2. 캐시 비우기
문제가 캐시 때문일 수 있음:
- 브라우저:
Ctrl+Shift+R(Win) /⌘+Shift+R(Mac) - 캐시 플러그인: WP Rocket·W3 Total Cache 등에서 “캐시 비우기”
- 서버 캐시: 호스팅사 페이지 또는 cPanel
- CDN: Cloudflare 등에서 “Purge Everything”
가장 흔한 “해결”: 캐시만 비우면 끝.
3. 플러그인 일괄 비활성화
플러그인 > 설치된 플러그인 > 모두 선택 > 일괄 작업: 비활성화
- 문제 사라짐 → 플러그인 충돌. 1개씩 다시 활성화하며 원인 찾기
- 문제 그대로 → 테마 문제 또는 코어 문제
💡 운영 사이트는 스테이징·로컬에서 테스트.
4. 기본 테마로 전환
WordPress 기본 테마 (Twenty Twenty-Five 등)로:
외모 > 테마 > Twenty Twenty-Five 활성화
- 기본 테마에서 정상 → 원래 테마 문제
- 기본 테마에서도 문제 → 코어·DB·플러그인·서버 문제
5. 디버그 모드
wp-config.php에 추가:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
- 오류가
wp-content/debug.log에 기록됨 - 파일 매니저로 열어 오류 메시지 확인
- 메시지를 구글에 검색하면 대부분 해결
해결 후 WP_DEBUG를 false로 (라이브 사이트에서 오류 노출 X).
증상별 대응
증상 1: 흰 화면 (사이트 + 관리자 둘 다)
가장 흔한 원인: PHP 메모리 부족 또는 플러그인 충돌.
메모리 늘리기
wp-config.php에:
define('WP_MEMORY_LIMIT', '256M');
저장 후 사이트 새로고침.
FTP로 플러그인 강제 비활성
관리자 접속도 안 되면:
- FTP로
wp-content/plugins/폴더 진입 - 폴더명을
plugins-disabled로 변경 - WordPress가 모든 플러그인을 못 찾아 비활성화 처리
- 관리자 접속 가능해지면 다시
plugins로 이름 복원 → 1개씩 활성화
증상 2: 디자인 깨짐 (CSS 미적용)
원인 후보:
- 캐시 (브라우저·플러그인·CDN)
- 자식 테마의 CSS 로드 코드 오류
- 부모 테마와 자식 테마 충돌
- 추가 CSS의 문법 오류
진단
- 시크릿창에서 사이트 확인 → 캐시 영향 제외
- 외모 > 사용자 정의 > 추가 CSS 확인 → 잘못된 문법 제거
- 자식 테마의
functions.php확인 → 부모 CSS 로드 코드 있는지
증상 3: 기능 미작동 (JS 오류)
- 메뉴 안 펼침
- 슬라이더 안 움직임
- 폼 안 보냄
원인: JavaScript 오류.
진단
브라우저 개발자 도구 (F12) > Console 탭:
- 빨간 오류 메시지 확인
- 어느 파일에서 오류인지 (테마? 플러그인?)
오류 메시지를 구글 검색 → 대부분 해결책 발견.
증상 4: 모바일만 깨짐
원인:
- 테마의 반응형 미지원
- 모바일 전용 CSS 오류
- 캐시 (모바일·PC 분리 캐싱)
- 모바일 광고 위젯
진단
- PC 브라우저 개발자 도구 > 모바일 시뮬레이션
- 모바일 화면에서만 적용되는 CSS 확인
- 모바일 전용 플러그인 비활성화 테스트
증상 5: 특정 페이지만 이상
원인:
- 해당 페이지의 단축코드·블록 오류
- 페이지 템플릿 오류
- 글에 깨진 HTML
진단
- 정상 페이지와 비교
- 페이지 편집 → 본문 내용 일부 삭제 → 어디부터 정상인지
자식 테마 관련 문제
자식 테마 활성화 후 디자인 다 깨짐
원인: functions.php에서 부모 CSS 로드 코드 누락.
해결:
add_action('wp_enqueue_scripts', function() {
wp_enqueue_style('parent-style', get_template_directory_uri() . '/style.css');
});
자식 테마가 외모 > 테마에 안 보임
원인:
style.css헤더의Template:값 오타 (부모 폴더명과 불일치)style.css파일이 없음- 폴더 이름이 부모와 같음
확인:
/*
Theme Name: Astra Child
Template: astra ← 부모 폴더명 정확히
*/
부모 테마 업데이트 후 깨짐
가능성:
- 부모가 메이저 업데이트 → 구조 변경
- 자식 테마의 오버라이드 파일이 옛 구조
해결:
- 백업 복원 또는 자식 테마 임시 비활성
- 부모 테마의 changelog 읽기 (변경 사항 확인)
- 자식 테마의 오버라이드 파일을 새 구조에 맞게 수정
호스팅 환경 문제
테마가 아닌 호스팅 문제일 때:
- PHP 버전 너무 옛 (7 이하): 호스팅 cPanel에서 PHP 8+로 변경
- 메모리 한도 낮음: 위 메모리 늘리기
- 실행 시간 한도 짧음:
set_time_limit(300);추가 또는 호스팅 설정 - 디스크 공간 부족: 옛 백업·미디어 정리
진단 도구
Site Health (사이트 헬스)
도구 > 사이트 헬스 → WordPress 권장 설정 점검.
Query Monitor (개발자용)
플러그인 Query Monitor — 페이지별 DB 쿼리·PHP 오류·HTTP 요청 분석.
Health Check & Troubleshooting
플러그인 — 자신만 보이는 트러블슈팅 모드 (다른 방문자에겐 정상 사이트 유지하며 진단).
마지막 수단 — 백업 복원
위 모든 방법으로도 해결 안 되면 백업 복원.
UpdraftPlus > 백업 기록 > 정상 작동하던 시점으로 복원.
복원 후 원인 분석은 로컬·스테이징에서.
⚠️ 자주 하는 실수
- 백업 없이 진단: 더 망가질 수 있음
- 모든 플러그인 한꺼번에 활성: 어느 플러그인이 원인인지 모름
- 운영 사이트에서 디버그 모드 켜둠: 일반 방문자에게 오류 노출 → 보안 위험
- 백업 없이 코드 수정: 옛 상태로 못 돌아감
- 호스팅에 무조건 책임 전가: 자체 진단 안 함
❓ FAQ
Q. 관리자 접속도 안 되는데 어떻게? A. FTP·파일 매니저로 직접 작업. 플러그인 폴더 이름 변경 또는 테마 파일 복원.
Q. 디버그 로그 어디서 봐요?
A. wp-content/debug.log 파일. FTP 또는 호스팅 파일 매니저.
Q. 호스팅사에 도움 요청해도 되나요? A. 호스팅사는 서버·코어 문제만 책임. 테마·플러그인 문제는 해당 개발자에게. 다만 일부 호스팅사는 무료 지원 범위 ↑.
Q. 테마 개발자에게 어떻게 연락? A. 무료 테마: 공식 저장소 페이지의 Support 탭. 유료 테마: 구입처에서 지원 채널.
Q. 가장 안전한 진단 순서? A. 백업 → 캐시 → 플러그인 → 테마 → 코어 → 호스팅. 점진적으로.