코스모스팜 회원관리 플러그인 버그 문의

증상: social-buttons.php 스킨 템플릿 파일을 차일드 테마의 cosmosfarm-members 경로에 추가해도 불러오지 않는 문제

 

다른 스킨 템플릿들의 경우 wp-content\plugins\cosmosfarm-members\class\Cosmosfarm_Members_Skin.class.php 에서 호출되고 있으나,

소셜 버튼 템플릿은 wp-content\plugins\cosmosfarm-members\class\Cosmosfarm_Members.class.php 의 social_buttons 함수에서 호출되고 있습니다.


social_buttons 함수에서 차일드 테마 경로에 템플릿 파일이 존재하는지 확인하는 부분이 필요해 보입니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    소셜 로그인 레이아웃 파일을 테마 쪽에 추가해서 커스텀하시려면

    Cosmosfarm_Members.class.php 파일의 social_buttons 메소드를 수정해보세요.

    FTP로 접속해서 /wp-content/plugins/cosmosfarm-members/class/Cosmosfarm_Members.class.php 파일에

    아래의 코드를 찾아서

    public function social_buttons($action='', $redirect_to='', $skin='', $file=''){
    	$option = get_cosmosfarm_members_option();
    	
    	if(!$skin){
    		$skin = $option->skin;
    	}
    	
    	if(!$file){
    		$file = 'social-buttons';
    	}
    	
    	ob_start();
    	$skin_path = COSMOSFARM_MEMBERS_URL . "/skin/{$skin}";
    	include COSMOSFARM_MEMBERS_DIR_PATH . "/skin/{$skin}/{$file}.php";
    	return ob_get_clean();
    }

    아래의 코드로 교체해보세요.

    public function social_buttons($action='', $redirect_to='', $skin='', $file=''){
    	$option = get_cosmosfarm_members_option();
    	$layout = '';
    	
    	if(!$skin){
    		$skin = $option->skin;
    	}
    	
    	if(!$file){
    		$file = 'social-buttons';
    	}
    	
    	if(file_exists(get_stylesheet_directory() . "/cosmosfarm-members/{$file}.php")){
    		$skin_path = get_stylesheet_directory_uri() . '/cosmosfarm-members';
    		$file_path = get_stylesheet_directory() . "/cosmosfarm-members/{$file}.php";
    	}
    	else{
    		$skin_path = COSMOSFARM_MEMBERS_URL . "/skin/{$skin}";
    		$file_path = COSMOSFARM_MEMBERS_DIR_PATH . "/skin/{$skin}/{$file}.php";
    	}
    	
    	$file_path = apply_filters('cosmosfarm_members_template_social_buttons', $file_path, $action, $redirect_to, $skin, $file);
    	
    	if(file_exists($file_path)){
    		ob_start();
    		include $file_path;
    		$layout = ob_get_clean();
    	}
    	
    	return $layout;
    }

    해당 변경사항은 추후 업데이트에 반영하도록 하겠습니다.

     

    그리고 테마 쪽에 social-buttons.php 파일을 추가해서 커스텀하실 경우 소셜 로그인 이미지를 테마 쪽으로 인식합니다.

    기존 /wp-content/plugins/cosmosfarm-members/skin/사용중인스킨/images 디렉토리와 그 안에 파일을

    모두 테마 쪽으로 복사하시거나 새로 만드신 후 새로운 이미지를 추가해주셔야 합니다.

    아래 이미지처럼 images 디렉토리와 소셜 로그인 이미지들도 테마 쪽에 위치해야 합니다.

    https://imgur.com/a/B7BaKaU

    다른 이미지로 교체하시려면 파일명은 위의 이미지를 참고하셔서 각 소셜 이미지를 교체해보세요.

    고맙습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요