Find and Files in EmEditor

이 HTML 부분을 바꾸려면 워드프레스의 어떤 파일을 수정해야 하나요?

들어가며

워드프레스 커뮤니티에 심심찮게 올라오는 질문 중 하나는 “이 HTML 부분을 바꾸려고 하는데, 워드프레스에서 어떤 파일을 수정하면 되나요?“와 비슷한 질문입니다.

사실 워드프레스는 PHP 기반이기 때문에, 서버단(Server-side)에서 PHP 파일과 JS 파일, CSS 파일 등을 처리하여 프런트엔드(클라이언트)에 뿌려준다고 생각하면 될 것 같습니다. 그러므로 실제 브라우저에서 표시되는 HTML 소스의 특정 부분이 어떤 파일에서 처리되어 표시되는지는 PHP 파일을 등을 분석하여 결정해야 합니다.

What will happen when someone views your WordPress posts

워드프레스 파일을 수정하기 전에 먼저 PHP가 어떤 역할을 하고 어떻게 사용되는지 등에 대한 기본적인 정보를 확인해보는 것이 좋을 듯합니다. 이를 위해서는 서버와 클라이언트와의 관계를 이해하는 것이 필수적입니다. 이 부분에 대해서는 여기를 참고해보세요.

참고로 구글 크롬이나 IE의 개발자 도구(F12)를 사용하여 브라우저에서 수정하더라도 화면상으로 수정이 되지만, 새로고침하면 다시 원상복귀가 됩니다. 그 이유는 수정하는 내용이 실제 워드프레스 테마 파일이나 플러그인 파일에는 반영되지 않기 때문입니다. 예를 들어, CSS를 수정하여 화면상으로 반영되는 것을 확인했다면, 실제 적용되도록 하려면 수정한 CSS 부분을 복사하여 워드프레스 테마의 스타일시트(style.css)에 추가해주어야 합니다. 워드프레스 스타일시트(style.css)에 사용자 CSS를 추가하는 방법은 이 글에서 확인해볼 수 있습니다.

워드프레스에 조금 익숙해지면 소스를 보고서도 대충 어느 파일을 수정하면 될 것이라는 것을 알 수 있습니다. 확인하기가 쉽지 않다면 전체 파일(하위 폴더)을 검색하는 프로그램을 사용할 수 있습니다.

하위 폴더를 포함한 전체 파일에서 검색하는 방법

Linux에서 전체 파일 검색하기

여러 폴더 내에서 특정 문자열을 검색하려는 경우, 파일이 몇 개 되지 않으면 직접 파일을 열어서 확인이 가능하지만, 파일이 수천 개가 있다면 직접 확인하는 방법은 정말로 무식하고 비현실적입니다. 이런 경우, 리눅스를 사용한다면 한 줄의 명령어로 가능합니다(정말 쉽죠잉?)

$ grep -rn "a string you want to search"

또는

$ find . -name "*" | xargs grep -n "a string you want to search"

하지만 Linux는 개발자 이외에는 그리 사용되지 않습니다. 저도 예전에는 테스트로 리눅스를 설치하여 사용했지만, 요즘은 거의 사용하지 않습니다. VMWare에 리눅스를 설치하여 꼭 필요한 경우에만 사용하는 정도입니다. 리눅스를 운영해보고 싶다면 VMWare에서 설치해보는 것도 괜찮은 방법입니다.

EmEditor 사용하기

Windows에서 저는 주로 “EmEditor”라는 텍스트 에디터를 사용합니다. 이외에도 여러 가지 에디터가 이 기능을 지원합니다. 익숙한 툴을 사용하면 됩니다. 저는 EmEditor를 거의 10년 훨씬 이상 사용해왔기 때문에 이 툴이 아니면 불편합니다. 이 편집기에서 최상위 폴더의 아무 파일을 열고 Ctrl+Shift+F(혹은 Search > Find in Files) 하위 폴더를 포함하여 전체 파일에서 원하는 단어나 어구를 검색할 수 있습니다.

Em Editor - Find in Files

EmEditor는 정규식(Regular Expressions)도 지원하므로 매우 강력한 검색이 가능합니다. (Regular Expression을 조금 익히면 꼭 프로그래밍 언어 분야가 아니더라도 여러 가지 측면에서 도움이 많이 됩니다. 정규식과 관련하여 도움이 되는 프로그램으로 RegexBuddy라는 프로그램이 있습니다.)

프리웨어 사용하기 – FindInFiles for Windows

EmEditor는 유료 프로그램입니다. 이외에도 찾아보면 무료 편집기도 있을 것입니다. 무료 프로그램으로 “FindInFiles for Windows”라는 프로그램이 있습니다. 아마 기업에서도 무료로 사용 가능할 것 같은데요, 자세한 것은 직접 확인해보시기 바랍니다. 이 프로그램에 대한 자세한 기능과 내용은 여기에서 확인해볼 수 있습니다.

사용법을 간단히 살펴보겠습니다. 만일 우커머스(WooCommerce)에서 “Your order”라는 단어가 어느 파일에 위치해있는지를 찾는 방법을 살펴보면:

  1. “woocommerce” 폴더에 마우스를 대고 오른쪽 클릭합니다.
  2. 상황 메뉴에서 “FindInFiles”를 선택합니다.
    FindInFiles - Search a string in multiple files under multiple folders
  3. 하위 디렉토리를 포함한 전체 파일에서 검색하고자 하는 단어나 문자열을 입력합니다.
    FindInFiles - Search a string in multiple files in subdirectories
  4. “Find”를 클릭하면 결과 창이 나타납니다.
    FindInFiles Results - Find a string in multiple files in multiple subfolders
  5. 라인을 클릭해보면 해당 파일을 여는 데 필요한 텍스트 에디터를 지정하라는 팝업 창이 뜹니다.  지원되는 텍스트 에디터로 UltraEdit, Sublime text, EditPlus, EmEditor, Vim, Notepad++, AcroEdit, DesyEdit, Crimson Editor, SciTE, Programmer’s Notepad, EditPad 등이 있습니다.

사용하고 있는 텍스트 에디터에서 “전체 파일에서 찾기” 기능이 지원하는지를 확인해보시고, 그런 기능이 없다면 위의 옵션을 이용해보시기 바랍니다.

주의사항: 테마 수정 시 알고 있어야 하는 사항은 테마를 직접 수정하면 추후 테마 업데이트 시에 문제가 발생할 수 있다는 점입니다.  즉, 수정 사항이 모두 사라질 수 있습니다. 그러므로 가급적 차일드 테마(자식 테마)를 만들어서 작업하는 것이 바람직합니다. 이 글에서 효과적인 차일드 테마를 만드는 방법을 참고해보시기 바랍니다.

참고로 AVADA 등과 같은 유료 테마 또는 유료 플러그인을 사용하는 경우, 수정할 부분을 잘 파악할 수 없는 경우 테마 판매자에게 문의하면 친절하게 답변해줄 것입니다. 유료 테마나 플러그인은 사용자가 돈을 지불했기 때문에 지원 기간(보통 6개월 ~ 1년) 동안 지원 서비스를 충분히 활용하는 것도 일을 수월히 처리할 수 있는 방법 중 하나라고 생각됩니다.



기부를 통해 이 블로그를 후원하실 수 있습니다.
워드프레스 설치/제작/문제해결이 필요한 경우 서비스(유료)를 요청해주세요.