테스트 사이트 - 개발 중인 베타 버전입니다

[왕초보] latest() 함수 문의 드립니다. 채택완료

하이젠 7년 전 조회 2,160

안녕하세요.

그누보드를 처음 접하고 질문드립니다.

index.php 코드 내용 중 latest('theme/basic', $row['bo_table'], 6, 24) 는

theme/basic/skin/latest/basic 위치를 가리키는거 같은데

latest() 함수의 'theme/basic'이 어떻게 이해하면 해당 경로를 가르키는지 알고 싶습니다.

감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
7년 전

'theme/basic' 에서,

theme 는 현재 사용중인 테마를 의미합니다.  basic 은 latest 스킨의 스킨명

현재 사용중인 테마가 'basic'  이라면 /theme/basic/skin/latest/basic 이 되고,

현재 사용중인 테마가 'my'  라면 /theme/my/skin/latest/basic 이 됩니다.

 

그렇게 처리한 방식은, 윗분이 얘기한 코드처럼,

'theme/' 로 시작하는 문자열이 있는지를 체크하여 해당 부분을 사용중인 테마의 경로로 치환해주는 원리입니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

M
7년 전

/lib/lastest.lib.php에 해당 함수가 있습니다.

 

스킨 경로를 입력하지 않으면 basic으로 인식,

경로를 가져오는 방법은 아래 코드와 같습니다.

 

</p>

<p>    if(preg_match('#^theme/(.+)$#', $skin_dir, $match)) {

        if (G5_IS_MOBILE) {

            $latest_skin_path = G5_THEME_MOBILE_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];

            if(!is_dir($latest_skin_path))

                $latest_skin_path = G5_THEME_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];

            $latest_skin_url = str_replace(G5_PATH, G5_URL, $latest_skin_path);

        } else {

            $latest_skin_path = G5_THEME_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];

            $latest_skin_url = str_replace(G5_PATH, G5_URL, $latest_skin_path);

        }

        $skin_dir = $match[1];

    } else {

        if(G5_IS_MOBILE) {

            $latest_skin_path = G5_MOBILE_PATH.'/'.G5_SKIN_DIR.'/latest/'.$skin_dir;

            $latest_skin_url  = G5_MOBILE_URL.'/'.G5_SKIN_DIR.'/latest/'.$skin_dir;

        } else {

            $latest_skin_path = G5_SKIN_PATH.'/latest/'.$skin_dir;

            $latest_skin_url  = G5_SKIN_URL.'/latest/'.$skin_dir;

        }

    }</p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인