WordPress의 하위 테마 – 사용 방법 및 이유
게시 됨: 2016-04-29WordPress의 요점은 사람들에게 자신의 사이트 또는 블로그를 구축, 수정 및 조정할 수 있는 권한을 제공하는 것입니다. 이것은 불과 10년 전만 해도 전문 디자이너/개발자를 고용해야 했던 것입니다.
요즘에는 사이트를 스스로 관리할 수 있으며 원하는 대로 만들 수 있습니다.
그러나 WordPress Customizer 가 허용하는 것보다 더 많이 수행하려면 어떻게 해야 합니까? 현재 WordPress 테마에 대해 약간 더 맞춤화된 방식으로 수정하려면 어떻게 해야 합니까?
글쎄, 그것이 어린이 테마가 작동하는 곳입니다.
자식 테마를 사용하는 이유
동전의 반대쪽부터 시작하겠습니다.
자식 테마를 사용하지 *않고* 대신 현재(일반) 테마에 대한 수정을 수행하는 경우의 가장 큰 단점은 테마를 업데이트하면 해당 수정 사항이 모두 사라진다는 것입니다.
이제 수정 이 의미하는 바는 다음과 같습니다.
- 테마의 PHP 파일에 대한 수동 코드 편집,
- style.css 파일에 대한 모든 수정 사항,
- 테마의 디렉토리에 넣었을 수 있는 모든 새 파일(여기에는 PHP 파일, CSS 파일, 그래픽, 말 그대로 모든 것이 포함됨) - 사용자 정의 페이지 템플릿이 있는 경우 일반적인 문제입니다.
따라서 다시 한 번 강조하기 위해 위의 모든 내용은 테마를 업데이트하는 즉시 사라집니다.
근데 이게 왜 나쁜거죠?
글쎄, 당신이 사용하는 테마가 예전처럼 업데이트되지 않았다면 문제는 아마도 그렇게 잔인하지 않을 것입니다. 그러나 대부분의 고품질 WordPress 테마는 좀 더 자주 새로 고침되는 경향이 있습니다. 이는 특히 WordPress의 기본 테마(예: Twenty Fifteen)에 유효합니다. WordPress 코어의 새 버전이 출시될 때마다 업데이트됩니다.
이와 같은 상황에서 업데이트와 함께 제공되는 모든 새로운 기능과 패치를 놓치고 싶지 않습니다. 효과적으로 웹 사이트가 WordPress의 새 버전에서 올바르게 작동하도록 하고 전체 보안을 향상시킵니다(일반적인 보안 허점 및 버그 수정).
하지만 더 있습니다. 하위 테마를 사용 하면 더 나은 작업 조직의 형태로 부가가치를 얻을 수도 있습니다.
여기 문제가 있습니다. 현재 WordPress 테마 내에서 무엇이든 편집하려고 하면 무언가를 엉망으로 만들기 쉽습니다. 예를 들어 실수로 중요한 코드 줄이나 전체 파일 등을 지울 수 있습니다.
하위 테마를 사용하면 모든 수정 사항이 훨씬 더 잘 정리됩니다. 하위 테마의 디렉토리에 있는 모든 파일에는 사용자 고유의 코드만 포함되어 있으므로 "파일 X를 수정했습니까?"라고 더 이상 궁금해하지 마십시오.
첫 번째 자식 테마를 만드는 방법
이 부분은 정말 쉽고 코딩이 거의 필요하지 않습니다. 먼저 몇 가지 일반적인 지침은 다음과 같습니다.
- 모든 테마는 상위 테마가 될 수 있습니다. 즉, 이미 가지고 있는 모든 테마에 대해 하위 테마를 만들 수 있습니다.
- 자식 테마는 대부분의 "일"을 수행하는 부모에 따라 다릅니다. 가장 기본적인 방법으로 빈 자식 테마는 아무 것도 변경하지 않고 부모로부터 직접 모든 코드, 디자인, 스타일 지정 등을 가져옵니다.
- 자식 테마가 작동하려면 부모의 존재가 필요합니다. 상위 테마를 삭제하면 하위 테마가 더 이상 작동하지 않습니다.
- 앞에서 언급했듯이 상위 테마를 업데이트하고 수정 사항을 잃지 않을 수 있습니다.
- 어떤 경우든 언제든지 상위 테마로 전환하고 테마의 원래 버전으로 돌아갈 수 있습니다.
이제 방법에 대해 알아보겠습니다. 자식 테마에는 몇 가지만 필요합니다.
-
wp-content/themes
내부의 새 디렉토리와 고유한 이름/슬러그를 사용하여 무엇이라고 부르든, - 그 새 디렉토리 안에 있는 스타일 시트 파일 –
style.css
, - 그리고
functions.php
파일.
다음은 WordPress의 이전 기본 테마인 Twenty Fifteen용으로 만든 하위 테마의 예입니다. t15-child
라는 디렉토리를 만드는 것으로 시작했습니다.

다음으로 해당 디렉토리에 두 개의 새 파일을 만들고 style.css
및 functions.php
라고 이름을 지정했습니다.
먼저 style.css
파일을 수정해 보겠습니다. 여기 내 것:
/* Theme Name: T15 child KK Theme URI: http://karol.cc/ Author: Karol K Author URI: http://karol.cc/ Template: twentyfifteen Description: My child of twentyfifteen Version: 1.0.0 License: GNU General Public License v2.0 License URI: http://www.gnu.org/licenses/gpl-2.0.html Text Domain: t15-child */
보시다시피 너무 멋진 것은 없습니다. 거기에 있는 두 가지 중요한 라인이 강조 표시되었습니다.
- 테마 이름 – Appearance / Themes 아래의 wp-admin 에 표시될 새 하위 테마의 이름입니다.
- 템플릿 - 여기에서 가장 중요한 줄 - 슬러그로 상위 테마를 가리킵니다.
그런 다음 functions.php
파일로 이동합니다. 내가 가진 유일한 것은 다음과 같습니다.
<?php function theme_enqueue_styles() { $parent_; wp_enqueue_style($parent_style, get_template_directory_uri().'/style.css'); wp_enqueue_style('child-style', get_stylesheet_directory_uri().'/style.css', array($parent_style)); } add_action('wp_enqueue_scripts', 'theme_enqueue_styles');
이것은 단순한 새 기능입니다. 다음 두 가지를 처리합니다.
- 부모 테마의 원래 스타일 시트를 가져오고
- 새 style.css 파일을 "켜기" 때문에 해당 파일에서 테마 디자인을 추가로 수정할 수 있습니다.
명심해야 할 기타 중요한 사항:
- 지금 당장 새로운
style.css
파일을 자유롭게 수정할 수 있습니다. 거기에 어떤 새 클래스를 넣든, 수정한 이전 클래스가 무엇이든 웹사이트와 모양에 영향을 미칩니다. - 다른 PHP 파일을 하위 테마의 디렉토리에 추가할 수 있습니다. 이러한 파일은 예를 들어 새로운 사용자 정의 템플릿의 경우 완전히 새롭거나 상위 테마의 표준 파일을 대체할 수 있습니다. 예를 들어, 완전히 새로운 버전의 single.php 파일을 만들어 블로그 게시물이 표시되는 방식을 처리할 수 있습니다.
- 새
functions.php
파일에 넣은 모든 것은 상위 테마의 기본 functions.php 파일이 작동하는 방식과 유사하게 실행됩니다.
아직 자식 테마를 만들지 못하셨습니까?
이 단계에서 작업이 완료되었으며 이제 웹 사이트를 추가로 수정하는 데 사용할 수 있는 기본 하위 테마가 생겼습니다. 또는 이 새로운 하위 테마를 사용하여 이미 수행한 조정이 상위 테마의 향후 업데이트를 통해 유지되도록 할 수 있습니다.
여기 어떻게 생각하세요? WordPress 사이트 또는 블로그에서 하위 테마를 사용할 계획입니까?