add_stylesheet로 추가한 스타일 제거하기 함수 추가 정보
add_stylesheet로 추가한 스타일 제거하기 함수 추가본문
제가 작업하던중에 head를 공통으로 쓰다가
어떤 페이지에서는 스타일이 중복되어서 head에 추가된 스타일을 빼야 되는 경우가 생겼습니다.
그래서 수정해봤습니다.
/lib/common.lib.php 수정해주셔야 합니다.
"class html_process"
이걸 찾으셔서 위쪽에 추가해 줍니다. 아마 2493줄에 있을꺼예요.
function del_stylesheet($stylesheet)
{
    global $html_process;
    if(trim($stylesheet) && method_exists($html_process, 'split_stylesheet') )
        $html_process->split_stylesheet($stylesheet);
}
class html_process 안에
function split_stylesheet($stylesheet) {
        $links = $this->css;
        $has_item = false;
        for($i=0;$i<count($links);$i++) {
            $link = $links[$i];
            if($link[1] == $stylesheet) {
                $has_item = true;
                break;
            }
        }
        if($has_item)
            array_splice($this->css, $i,1);
}
를 추가해 줍니다.
================================================
function del_stylesheet($stylesheet)
{
    global $html_process;
    if(trim($stylesheet) && method_exists($html_process, 'split_stylesheet') )
        $html_process->split_stylesheet($stylesheet);
}
class html_process {
    protected $css = array();
    protected $js  = array();
......
    function split_stylesheet($stylesheet) {
        $links = $this->css;
        $has_item = false;
        for($i=0;$i<count($links);$i++) {
            $link = $links[$i];
            if($link[1] == $stylesheet) {
                $has_item = true;
                break;
            }
        }
        if($has_item)
            array_splice($this->css, $i,1);
    }
......
}
============================================
이런 모양이 될 것 같습니다.
사용법은
del_stylesheet('<link rel="stylesheet" href="'.G5_URL.'/adm/css/admin.css">');
본인이 add_stylesheet로 추가했던 내용 그대로 입력하시면 됩니다.
5
댓글 5개



