ssh로 워드프레스에 접속하거나, SFTP를 이용합니다.
ssh의 경우 root 사용자 권한으로 진행했습니다. 우분투(ubuntu)에 로그인 후 sudo su
를 입력한 후 진행합니다.
자식 테마(차일드 테마) 생성하기
#워드프레스의 테마가 설치된 경로로 진입합니다.
cd /var/www/html/wordpress/wp-content/themes
Code language: JavaScript (javascript)
themes 폴더에 진입을 완료한 뒤 ls를 입력하면 해당 경로 내의 파일/폴더 리스트가 노출됩니다. 자식 테마(차일드 테마)를 만들 테마 폴더명을 복사합니다.
#자식 테마(차일드 테마) 폴더를 생성합니다.
sudo mkdir generatepress-child
#만든 자식 테마 폴더 안에 style.css 파일을 만들어줍니다.
cd generatepress-child
sudo nano generatepress-child/style.css
/*
Theme Name: GeneratePress Child
Template: generatepress
*/
Code language: JSON / JSON with Comments (json)
위 코드를 붙여넣고 ctrl + x, y, enter 키를 차례로 입력해 저장 후 상위 폴더로 되돌아옵니다.
#만든 자식 테마 폴더 안에 functions.php 파일을 만들어줍니다.
sudo nano generatepress-child/functions.php
<?php
function wptalk_enqueue_styles() {
$parent_style = 'parent-style';
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 ),
wp_get_theme()->get('Version')
);
}
add_action( 'wp_enqueue_scripts', 'wptalk_enqueue_styles' );
Code language: HTML, XML (xml)
위 코드를 붙여넣고 ctrl + x, y, enter 키를 차례로 입력해 저장 후 상위 폴더로 되돌아옵니다.
#부모 테마가 가진 썸네일 파일을 자식 테마로 복사해옵니다.
cp /var/www/html/wordpress/wp-content/themes/generatepress/screenshot.png /var/www/html/wordpress/wp-content/themes/generatepress-child
Code language: JavaScript (javascript)
워드프레스 테마에 접근하여 확인해보면 자식 테마에도 썸네일이 생긴 것을 확인할 수 있습니다.
테마 편집기에서 ‘변경 하기 전에 이 파일을 쓸 수 있게 만들 필요가 있습니다’ 오류를 반환하는 것을 방지하기 위해 소유자와 권한을 변경해줍니다.
#자식 테마 권한 변경, 소유자 변경
chmod -R 777 generatepress-child
#부모 폴더의 소유자/그룹도 확인합니다.
ls -l
generatepress 테마의 자식 테마를 만들 것이므로 동일하게 변경해주면 됩니다. 소유자와 그룹이 모두 www-data입니다. 아래 코드를 입력합니다.
#소유자/그룹을 다른 테마와 동일하게 변경해줍니다. (chown 소유자:소유그룹 파일명)
chown -R www-data:www-data generatepress-child
Code language: CSS (css)
모두 완료한 뒤 활성화를 클릭합니다. 만약, 테마가 보이지 않는다면 멀티사이트 워드프레스일 확률이 높습니다. 네트워크 관리자에서 테마를 먼저 네트워크에 활성화한 뒤 진행합니다.