커스텀 스킨의 css 로드 제한하는 방법

안녕하세요.

K보드의 기본 스킨을 여러개 복사해서 사용하고 있습니다.

안에 php 구조만 약간씩 다르고 css는 모두 동일한데, 각 게시판마다 css가 모두 로딩되다보니 비효율적이여서,

default 스킨의 css만 로딩하고 나머지는 로딩을 제한하고 싶습니다.

https://imgur.com/a/HKhrA5a

어디에서 변경할 수 있는지 알 수 있을까요?

항상 빠르게 답변 해 주셔서 감사드립니다.

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 저도 예전부터 이 방법을 찾고 있는데요, 전문 개발자가 아니다보니 구현을 못 했습니다. 저는 할 수 없이 복사된 스킨들은 빈 css 파일로 만듭니다. 케이보드 정말 잘 쓰고 있지만 css 로드하는 방식은 좀 문제가 있는 것 같습니다. 게시판이 몇십개인데 스킨 새로 만들 때마다 무조건 로드가 되니 참 난감합니다. 

  • 앗.. 그러셨군요 ㅎㅎ;

    케이보드 플러그인 폴더에 index.php 파일 중

    <?php
    /*
     * 스크립트와 스타일 파일 등록
     */
    add_action('wp_enqueue_scripts', 'kboard_style', 999);
    add_action('kboard_switch_to_blog', 'kboard_style');
    function kboard_style(){
    	// KBoard 미디어 추가 스타일 속성 등록
    	wp_enqueue_style('kboard-editor-media', KBOARD_URL_PATH . '/template/css/editor_media.css', array(), KBOARD_VERSION);
    	
    	// 활성화된 스킨의 style.css 등록
    	$skin = KBoardSkin::getInstance();
    	foreach($skin->getActiveList() as $skin_name){
    		wp_enqueue_style("kboard-skin-{$skin_name}", $skin->url($skin_name, 'style.css'), array(), KBOARD_VERSION);
    	}
    	
    	wp_register_style('kboard-jquery-flick-style', KBOARD_URL_PATH . '/template/css/jquery-ui.css', array(), '1.12.1');
    }
    

    를 수정하면 될 것 같은데.. 이 부분 말고 다른 부분도 수정을 해야 하는것 같더라구요..^^;ㅋㅋ

  • 안녕하세요~^^

    kboard_skin_active_list 필터를 활용하시면

    특정 스킨의 style.css 파일을 로딩에서 제외하실 수 있습니다.

    아래 코드를 활용해보시겠어요?

    add_filter('kboard_skin_active_list', 'kboard_skin_active_list_20211014', 10, 1);
    function kboard_skin_active_list_20211014($active){
    	$skin = 'default'; // 실제 게시판 스킨명으로 교체해주세요.
    	$search = array_search($skin, $active);
    	unset($active[$search]);
    	
    	return $active;
    }

    위의 코드에서 $skin = 'default' 부분은 실제 스킨명으로 적용해주세요.

    위의 코드를 적용하면 스킨 파일의 functions.php 파일 로딩도 제외되니 사용에 주의해주세요.

     

    테마의 functions.php 파일에 코드를 추가하거나 Code Snippets 플러그인을 사용해서 코드를 추가할 수 있습니다.

     

    스킨 style.css 파일 로딩 관련해서는

    저희도 심도 있게 고민해보겠습니다.

    고맙습니다.

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