워드프레스 테마 변경 시 유의 사항

7

워드프레스에는 괜찮은 유료 혹은 무료 테마가 많이 있습니다. 특정 테마를 사용하다가 시간이 지나면 다른 테마로 바꾸고 싶은 생각이 들 수도 있을 것입니다.

저는 몇 차례 테마를 바꾸면서 현재 Publisher라는 매거진 테마를 사용하고 있습니다. 이 테마는 기능이 많지만 상대적으로 버그도 제법 있어서 꼭 필요한 기능 외에는 사용하지 않고 있습니다.

사실 다른 테마로 변경하고 싶은 생각이 들기도 하지만 이번에는 조금 오랫동안 유지해볼 생각입니다. 작년에 테마를 여러 차례 변경하는 과정에서 캐시 플러그인이 문제를 일으켜서 SEO에서 손해를 보았습니다.

이 글에서는 워드프레스 테마를 변경하는 경우에 글, 페이지, 커스텀 포스트 타입(사용자 정의 글), 메뉴, 위젯, 테마 설정 등이 어떻게 되는지에 대해 간략히 살펴보겠습니다.

워드프레스 테마를 변경하기 전에…

테마를 변경하기 전에 반드시 백업을 하시기 바랍니다. 백업은 사실 정기적으로 해주는 것이 좋습니다.

특히 웹호스팅 업체에서 자동으로 백업본을 제공하는 경우에도 컴퓨터 하드 디스크나 클라우드에 별도의 백업본을 보관해놓는 것이 좋습니다.

가령 카페24의 경우 지난 7일 동안의 백업본을 제공하지만, 최근 멀웨어는 로그인한 상태에서는 멀웨어가 활동하지 않기 때문에 멀웨어에 감염되었는지 인식하지 못하는 경우가 있습니다. 그러면 7일 이후에 악성코드에 감염된 사실을 알게 된다면 자동 백업본을 이용한 복구가 불가능하게 됩니다.

참고로 사이트그라운드에서는 GrowBig 이상 플랜에서 지난 30일 동안의 백업을 제공합니다(“해외 호스팅 Siteground에서 백업/복원 기능 업데이트” 참고). 웹호스팅에서 자동 백업을 제공하는지 여부는 해당 호스팅 업체에 문의해보시기 바랍니다.

웹호스팅 업체에서 자동 백업을 제공하지 않는 경우 플러그인을 사용하여 백업을 할 수 있습니다.

새 테마를 적용하기 전에 외모 > 테마에서 원하는 테마 위에 마우스를 올린 다음 “실시간 미리보기“를 클릭하여 사이트를 미리보기할 수 있습니다.

테마 미리보기

미리보기 모드에서 사이트의 메인 페이지, 개별 글과 페이지, 카테고리 페이지 등을 살펴보도록 합니다.

새 테마에서 메뉴 설정하기

테마를 바꾸면 메뉴가 사라질 가능성이 높습니다. 메뉴가 제대로 표시되지 않으면 외모 > 메뉴로 이동하여 원하는 메뉴를 선택한 후에 메뉴 위치를 지정해주면 됩니다.

워드프레스 메뉴 지정

가령 위와 같은 화면에서 Main Menu 위치를 체크해주면 메뉴가 제대로 표시됩니다.

위젯 설정

테마를 변경하게 되면 사이드바가 새 테마의 사이드바로 바뀌게 됩니다. 그러면 활성화된 위젯이 비활성화될 수 있습니다.

참고로 최근 워드프레스 4.9 버전으로 업데이트되면서 테마가 변경되더라도 테마의 위젯 영역(Widget Area) 매핑을 이전보다 효과적으로 할 수 있는 로직이 포함되었다고 합니다.

  • 두 테마에 하나의 사이드바만 있다면 사이드바가 알아서 매핑됩니다.
  • 두 테마에 슬러그(예: sidebar-1)가 같은 사이드바가 있다면 두 사이드바가 매핑됩니다.
  • 유사한 종류의 사이드바에서 슬러그 이름이 (부분적으로라도) 일치되면 서로 매핑됩니다. 예를 들어, 한 테마에 “Primary”라는 위젯 영역이 있고 다른 테마에 “Main” 위젯 영역이 있다면 이 두 위젯 영역이 매핑됩니다. 마찬가지로 “Bottom”은 “Footer” 위젯 영역과 매핑될 수 있습니다.

자세한 내용은 워드프레스 문서(Widget Improvements in WordPress 4.9)를 참고해보세요.

테마 설정

각 워드프레스 테마마다 다른 사용자 정의(Customization) 옵션을 제공합니다.

워드프레스에서는 테마 옵션을 외모 > 사용자 정의하기를 통해 제공하도록 권장하고 있지만 아바다 등 많은 유료 테마에서는 별도의 Theme Options 메뉴를 통해 테마 옵션을 제공합니다.

테마 옵션 설정에는 사이트의 로고, 파비콘, 헤더, 배경 이미지 등이 포함될 수 있습니다. 테마를 새로운 테마로 변경하면 이러한 설정이 모두 사라지게 됩니다.

테마를 변경하기 전에 이전 테마의 설정을 기록했다가 새 테마에서 해당 옵션을 적용할 수 있을 것입니다. 하지만 이전 테마에는 있는 옵션이 새 테마에는 없을 수 있고, 그 반대의 경우도 있습니다.

특정 테마에 관련된 글 유형(Post Type)과 분류(Taxonomy)

예를 들어, 일부 테마에서는 포트폴리오 등의 기능을 제공할 수 있습니다. 이런 기능은 플러그인을 설치하여 구현할 수도 있지만, 아바다, Enfold 등 많은 유료 테마에서는 자체적으로 여러 가지 기능(예: 포트폴리오, Testimonials 등)을 제공하기도 합니다.

테마를 변경하게 되면 특정 테마에 관련된 커스텀 포스트 타입(사용자 정의 글 유형)과 분류는 사용할 수 없게 됩니다. 테마를 변경하면 워드프레스 알림판의 메뉴에 이런 글 유형이나 분류가 표시되지 않고 사용할 수 없게 되지만, 데이터베이스에는 그대로 유지됩니다. 다시 원래 테마로 바꾸면 다시 사용할 수 있게 됩니다.

특정 테마에서 제공하는 글 유형을 다른 테마에서 사용할 수 있도록 하려면 쉽지 않은 작업이 됩니다. 저는 예전에 PC용 테마와 모바일용 테마를 달리 지정하고, PC용 테마에서 제공하는 커스텀 포스트 타입을 모바일용 테마에서도 그대로 사용할 수 있도록 한 적이 있는데, 고려해야 할 사항이 많아서 쉽지 않은 작업이었습니다.

특정 테마에 관련된 슬라이더

많은 테마에서 자체적으로 슬라이더를 표시하는 기능을 제공합니다. 하지만 테마를 변경하면 특정 테마에서 제공하는 슬라이더는 사라지게 됩니다.

테마에서 제공하는 슬라이더 대신 슬라이더 플러그인을 사용하면 테마를 변경하더라도 슬라이더를 다시 배치할 수 있습니다.

하지만 개인적으로는 테마에서 제공하는 슬라이더 기능을 이용하는 편입니다. Revolution Slider 같은 플러그인을 사용하면 사이트 성능에 영향을 미칠 수 있습니다.

특정 테마에서 제공하는 숏코드

많은 테마에서 버튼, 갤러리, 슬라이더 등을 추가하는 숏코드를 제공하기도 합니다.

하지만 테마를 변경하면 특정 테마에 관련된 모든 숏코드는 비활성화되고 글 등에 추가된 숏코드는 숏코드 코드 형태로 표시됩니다.

포스트 내에서 코드로 표시되는 숏코드를 제거하려면 DB에서 일괄적으로 제거하는 것을 고려해볼 수 있을 것입니다. 다음 글을 참고해보세요.

테마 변경의 영향을 받지 않는 요소

테마를 변경해도 글과 페이지는 그대로 유지됩니다. 하지만 레이아웃은 테마에 따라 조금씩 다르게 보일 수 있습니다.

테마를 변경하면 썸네일이 이상하게 표시될 수 있습니다. 이 경우 Regenerate Thumbnails 플러그인을 설치하여 썸네일을 다시 생성해주면 문제가 해결될 것입니다. (글이 많을 경우 시간이 많이 소요됩니다.)

그리고 설정 메뉴 아래에 위치한 기본 워드프레스 설정도 그대로 유지됩니다.

참고로 테마를 바꾸면 외모 > 사용자 정의하기 > 추가 CSS에 추가한 CSS 코드는 사라지게 될 것입니다. 그리고 다시 원래 테마로 바꾸어도 복구되지 않을 수 있으므로 별도의 텍스트 파일에 저장을 해놓는 것이 안전할 수 있습니다.

특정 테마에 관련된 CSS 코드는 가급적이면 자식 테마를 만들어서 자식 테마 내의 스타일시트 파일(style.css)에 추가하는 것이 안전할 수 있습니다.

차일드 테마는 테마에서 제공하는 경우 그대로 사용하면 되고(예: 아바다), 워드프레스 공식 문서를 참고로 하나 만들 수 있습니다. 또는, Child Theme Configurator 같은 플러그인을 사용하면 간단히 자식 테마를 만들 수 있습니다.

차일드 테마를 사용하지 않고 직접 테마 파일을 수정하는 경우 추후에 테마가 업데이트되면 수정 사항이 모두 사라지게 됩니다. 반드시 차일드 테마를 만들어서 작업하시기 바랍니다. (그런데 의외로 직접 수정하는 분들이 많습니다. 차일드 테마를 만들어서 작업하라고 해도 무시하는 분들도 간혹 봅니다.ㅠㅠ)

페이지 빌더를 사용한 콘텐츠

비주얼 컴포저, Fusion Builder 등의 페이지 빌더를 사용하여 페이지를 만든 경우, 페이지 콘텐츠 자체는 사라지지 않습니다. 하지만 테마를 변경하면서 페이지 빌더를 바꾸어야 하는 경우에는 문제가 발생합니다. 페이지 빌더 플러그인을 비활성화하면 무수히 많은 쇼트코드가 페이지에 표시됩니다.

테마를 바꾸면서 페이지 빌더가 바뀌는 경우 페이지를 새로 제작해야 합니다. 페이지 빌더가 편리한 면이 있지만, 사용을 중단하는 경우에는 사이트를 새롭게 만드는 작업이 될 수 있습니다.

테스트 사이트를 만들어 테스트하기

테마를 변경한 후에 사이트가 어떻게 바뀔지 확신이 서지 않으면 테스트 사이트를 하나 만들어서 테스트해볼 수 있습니다. 사이트 규모가 크지 않으면 Duplicator 같은 플러그인을 사용하면 쉽게 이전이 가능합니다.

Bluehost, Siteground 등 해외 호스팅의 경우 (최저가 상품을 제외하고는) DB가 무제한 제공되므로 쉽게 테스트 사이트를 구성할 수 있습니다. 사이트그라운드의 GoGeek 상품을 이용하는 경우 Staging 기능을 사용하여 수월하게 테스트해볼 수 있습니다.

*일부 글에 제휴링크가 포함될 수 있습니다.기부를 통해 블로그 운영을 후원하실 수 있습니다.

Related Posts

댓글 7건
  1. 꼬꼬마

    안녕하세요. 좋은 정보 감사해요. 한가지 헷갈리는 문제가, 차일드테마로 사용할때 부모테마로 다시 활성화 시 차일드테마에 적용된 사용자정의설정한 디자인이 그대로 따라오지 않죠, 저같은경우 css수정하기보다 함수function.php파일을 수정하는데 부모테마를 활성화시키고 차일드테마에 함수파일을 적용시 업뎃할때 초기화되지 않아 이런식으로 사용하고 있어요. 웹호스팅에서 백업기능을 해주기때문에(사용중인호스팅업체는스타트업으로전날만백업) 테마에서 css수정외에 테마에서 제공하는 사용자정의로 디자인작업한 내용들은 테마 업뎃시 문제가 되지 않겠죠? 솔직히 차일드를 생성하는건 css를 잘 다루는 분들이나 필요한 분들께 적합하기 때문에… 아니면, 차일드테마와 부모테마를 모두 만들어가면서 사용하는 것도 좋을까요? 머릿속이 번잡합니다 ㅋㅋㅋ ㅠㅠ

    1. Word

      안녕하세요?

      블로그를 방문해주셔서 감사합니다.

      차일드 테마를 만들어 사용하는 것은 CSS를 잘 하는 것과는 무관하고 다만 올바른 관행을 따르는가 아닌가와 관련된 것 같습니다.

      잘못된 관행에 따라 수정을 하면 나중에 문제가 발생할 수 있기 때문에 차일드 테마를 만들어 작업하라고 하는 것입니다.

      다음 글을 참고해보세요.

      https://www.thewordcracker.com/basic/%EC%9B%8C%EB%93%9C%ED%94%84%EB%A0%88%EC%8A%A4-%EC%B0%A8%EC%9D%BC%EB%93%9C-%ED%85%8C%EB%A7%88%EB%A5%BC-%EB%A7%8C%EB%93%A4%EC%A7%80-%EC%95%8A%EA%B3%A0-%EC%88%98%EC%A0%95%ED%95%A0-%EA%B2%BD%EC%9A%B0/

      1. SAVE US꼬꼬마

        답변 감사해요. 맞아요. 아까 전, 직접 시험해보니 적용에러가 나네요. 이건 다른 질문인데 다운로드 형식의 제품을 판매시 주소기입을 없애는 방법은 없나요? 현재 배송은 아직까진 한국만 되어있거든요. 자동으로 기록은 되긴하던데, 음.. 뭔가 불필요한.. 구매한 테마업체에서 이런 기능을 하는 구매페이지?를 따로 만들어주면 좋겠는데..,. 아! 그리고 다운로드 기능이 무료를 원할 시 결제방식을 거쳐야되던데, 다운로드를 무료나 유료나 포토 사이즈별로(예를 들면 무료및유료이미지판매 픽사x이같은 회사요. 테마 및 플러그인에 찾아봐도 정보가 많이 없는것 같아요) 즉각 받을 수 있는 기능인 플러그인요. css를 거쳐야되는 부분인가용..ㅁ_ㅁ

      2. Word

        우커머스에서 주소란을 숨기는 방법은 다음 글을 참고해보세요.

        https://www.thewordcracker.com/scribblings/how-to-hide-woocommerce-billing-and-shipping-address-in-wordpress/

        참고로 최신 우커머스 버전에서는 링크된 글의 방법이 어쩌면 잘 안 될 수도 있습니다. 그런 경우 약간의 검색이 필요할 것입니다.

      3. SAVE US꼬꼬마

        감사합니다 관리자님. 제 테마는 우커머스 지원하는 테마입니다. 혹시 마지막에 문의 드린 플러그인에 대한 질문은 서비스 신청을 거치거나 음.. 되는 부분인가요? http://www.ogq.me/ 해외사이트 폰배경 다운로드 회사인데 정말 멋지더라구요. 기술적인부분은 제로라서 해당 홈페이지의 기능도 전문가에게 맡겨야 되는 부분이겠죠? 번복되는 질문 죄송합니다. (혹시 알고계신 정보가 있으시면 ..부탁드려요) (디스커스엔 댓글 숨김기능이.. 없나봐요)

      4. Word

        우커머스에서 주소 필드를 숨기는 코드를 테스트해보셨어요?

        앞 댓글에서 말씀드렸듯이 어쩌면 최신 우커머스 버전에서는 잘 안 될 수도 있을 것입니다.

        그런 경우 우커머스 문서를 검색하여 변경된 부분이 무엇인지 이해한 후에 코드를 바꾸면 될 것 같습니다.

        다운로드 방식을 우커머스 상품 형식으로 제공한다면 우커머스 내의 기능만을 가지고 충분히 가능할 것입니다. 그렇지 않은 경우에는 개발자의 도움을 받는 것이 시간을 아끼는 방법이 될 것입니다.

        다른 방법으로 EDD + 아임포트를 연동하여 판매하는 플러그인을 이용하는 것도 가능할 것입니다.

        https://danbistore.com/item/edd-recurring-iamport/

        단비스토어에서 판매하고 있고요, 비용이 조금 비싼 편입니다.

      5. SAVE US꼬꼬마

        다운로드 방식은 우커머스를 통해 진행하려합니다. 1. 주소필드숨김은 알려주신 사이트에 적힌 첫번째 함수적용시 적용이 안되구요, 두번째 함수 적용시 주소는 숨겨집니다. 그런데, 다른주소로 배송란체크가 보이는데 이미지 전송이 아닌 배송상품 주문시 체크를 하게되면 배송주소까지 취득하게 되나요? 약간 골치가 아프네요, 소량 배송상품 판매도 함께 이루어진다면 다시 function.php수정을 해야될텐데말이죠. 2. 전 function 수정시 바로 코드수정으로 들어가는데, 만약을 위해 따로 다운로드하여 수정하는게 더 안전하겠죠?, 기본적으로 테마에 등록된 페이지 숏코드나 이런부분은 잘못건들게되면 (ex)[woocommerce_checkout] 초보측면에선 애먹으니 미리미리 백업을 해두거나 테마파일집을 저장해둬야될것 같아요. 3.테마같은 경우 구매하게되면 보여지는 가상의 상품들은 삭제시 문제가 되질
        않지만 페이지에 설정된 파일들을 건들면 지워지니.. 구매한 테마에 설정된 페이지목록(정적인콘텐츠)은 손을 거의 대지 않다고 해서요. 정리해보자면 테마의 제작자들이 만든 ux들은 워프의 페이지에 기록되어 있으니 그대로 두고 상품란만 건들면 되니깐요. (항상 긴장을 놓치면 안되는것 같아요 .. 지식이 부족할수록요ㅠ)

댓글 남기기