1. Database에서 테마 변경이 왜 필요할까요?

일반적으로 테마변경은 워드프레스 관리자 보드에서 쉽게 할 수 있습니다. 그래픽처리되어서 아주 쉽게 할 수 있지요.

그럼엗 불구하고 database에서 변경으루 거론한 이유는 이게 필요한 특수한 케이스가 있기 때문입니다.

테마와 이젯이나 다른 플러그인과의 충돌로 사이트가 작동하지 않는 경우가 있습니다.

며칠전 저의 경우가 그 경우인데요.
테마의 CSS를 조금 건들였더니 홈페이지가 먹통이 되더군요. 그래서 이를 되돌리려 CCS 코드를 원래로 돌리고 여러가지 작업을 했지만 이상하게 작동이 안되는 것입니다.
그래서 삽질을 3~4시간 정도 한 후에야 정상화 시킬 수 있었습니다.

워드프레스가 상당히 안정적이긴하지만 테마와 플러그인간의 충돌은 많이 거론되는 내용이라 외국의 경우는 database에서 테마 변경에 대한 질문이 많이 올라오고 이있습니다.

저도 인터넷을 검색하면서 이 방법을 확인했고 한국 유저들에게도 도움이 된다고 판단해서 공유드립니다.
(한글로 관련 내용을 찾았는데 마땅한 자료를 찾을 수는 없었습니다)

2. Database 중 wp_option으로 이동합니다.

Database에서 테마를 변경하려면 아주 기초적이긴하지만 phpMyAdmin을 사용할 줄 알고 SQL 문구를 실행할 줄 알아야합니다. 이것은 생각보다 어려운것이 아니므로 필요하다면 용기를 내서 도전해 보시기 바랍니다.

그리고 Database를 변경시키는 것이므로 반드시 Database backup을 두고 해주시기 바랍니다.

먼저 database로 들어갑니다.

C-panel을 쓰는 경우 C-panel에서 phpMyAdmin을 선택해 눌러 들어갑니다.

그렇지않은 일반 호스팅도 phpMyAdmin을 지원하므로 phpMyAdmi를 실행시키고 ID, Password를 입력하고 phpMyAdmi에 진입합니다.

워드프로세스 Database중 테마변경과 관련 항목은 wp_options에 있으니 거기로 이동합니다..

3. Theme에 해당하는 항목을 찾습니다. – 'template'과 'stylesheet'

테마를 변경하려면 아래 세가지가 변경되어야 합니다.

  • template – 테마 이름은 style.css에서 정의되어 있습니다.
  • stylesheet – 테마가 들어있는 실제 폴더 이름입니다.
  • current_theme – 테마가 들어있는 실제 폴더 이름입니다.

그러면 wp_option에서 위 해당 항목이 어디에 있는지 찾아 봅니다.

찾을 항목은 'template'과 'stylesheet' 등인데요. 이들이 어디에 있느냐를 찾는 것이지요.

쿼리 문법은 아래와 같습니다. DB가 얼마 안되면 그냥 눈으로 찾아도 됩니다. 저의 경우는 41번째에 있어서 쉽게 빨리 찾을 수 있었습니다.
그러나 노가다를 할 필요는 없지요..

SELECT *
FROM wp_options
WHERE option_name = 'template'
OR option_name = 'stylesheet'
OR option_name = 'current_theme';

이 쿼리를 실행 모습니다.

쿼리 실행 결과

twentyfourteen 테마가 기본 테마로 설정되어 있군요.

현재 테마 twentyfourteen가 적용된 모습 resize

4. 테마(Theme)를 변경해 봅시다.

볌경하고 싶은 테마(Theme)가 colormag라고 합시다.
이 테마가 /wp-content/themes/colormag/ 에 위치하고 있어야 합니다.

이를 변경하는 쿼리문은 아래와 같습니다.

UPDATE wp_options SET option_value = 'colormag' WHERE option_name = 'template';
UPDATE wp_options SET option_value = 'colormag' WHERE option_name = 'stylesheet';
UPDATE wp_options SET option_value = 'colormag' WHERE option_name = 'current_theme';

쿼리를 실행하고 난 후의 모습니다.

확인하기 위해서 2번에서 실행한 쿼리를 다시 돌려볼까요..

쿼리 실행 결과 확인

이제는 인터넷으로 나가서 제댜로 작동하고 있는지 살펴보도록 합시다.

홈페이지가 제대로 작동하고 새로운 테마로 변경되어 있습니다.

테마 변경 후 사이트 메인 resize

5. 글을 마치며

Database에서 자료를 변경해야하는 것은 절대로 피해야하는 일이지만 위급한 상황, 이나 바쁜 상황에서는 DB를 변경할 수 밖에 없습니다.

즉 아무리 DB를 일괄 변경해주는 것이 가장 빠를 때가 있기 때문이죠..

참고하시고 직업이 아닌 이상 홈페이지를 운영하며서 DB까지 고민할 필요는 없는 것 같아요.
중요한 것은 컨텐츠를 얼마장 ㅅ비자에게 도움이되고 인사이트를 줄 수 있도록 만드느냐가 중요한 포인트가 아닐까요?

CMS(XE,워드프레스) 관련 이런 저런 이야기

[Tips]나눔고딕을 가장 효율적으로 적용하는 방법

XE에서 워드프레스로 이전하기

XE에서 워드프레스로 이전 후 느끼는 장단점 정리

XE에서 워드프레스 이전 후 이미지 최적화를 위한 이미지 변환 프로그램 비교

[워드프로세스 Tips]테마를 DB에서 수동으로 변경하기 (How to change WordPress Thems from the DB)

6 COMMENTS

  1. 검색을 해보니 DB에서 테마를 변경하는 방법이 제법 소개되어 있네요.

    그런데, 저는 이 글을 보고서 느낀 것이… “왜 이 작업이 필요하지?”였습니다.
    만약 워드프레스 알림판에 접속하지 못한다고 한다면 FTP에 접속하여 현재 활성화된 테마의 폴더 이름을 변경해주면 워드프레스에서 자동으로 감지하여 기본 테마로 바꾸어줍니다. 테스트를 해보니 실제로 그렇게 되네요. 만약 이 방법이 잘 작동하지 않을 때에 위의 방법을 사용하면 될 것 같습니다.

    • 네 의견 감사드려요. 조만간 이도 테스트해보고 같이 업데이트하면 좋을 것 같네요..
      그때 당시 FTP로 테마 이름을 바꾸어 보았는데 이상하게도 암튼 작동이 안되었던 것으로 기억하고 있어요. 별짓을 다한 본것으로 기억합니다.
      DB 조작하는 것보다 FTP로 수정하는 게 훨 편하죠..
      좋은 팁을 제안해주시어 다시한번 감사드립니다.

      • 그런 문제가 가끔 발생하는가 보네요.
        어떤 글에서는 테마 폴더의 권한을 “000”으로 설정하면 간단히 문제가 해결된다고도 하네요.

          • 참고로 크롬에서 이 블로그 top navigation에 있는 검색 아이콘을 클릭해도 제대로 작동하지 않네요. IE에서는 잘 작동합니다.

          • 네 이 지적이 있기전부터 원인읓 찾으려고 노력햇는데 해결하지 못하고 지금까지 왔습니다.

            다행히 테마 제작사측에서 패치버젼을 배포해주어서 이를 적용하니 이 문제가 해결이 되었습니다.
            크롬에서 검색이 잘 안되었구요. 마찬가지로 안드로이드 스마트폰에서도 작동하지 않았습니다. 아이폰은 테스트를 해보지 못했구요.

            지금은 크롬 및 안드로이드에서 모두 잘 됩니다.

LEAVE A REPLY

Please enter your comment!
Please enter your name here