• 회원가입
  • 로그인
  • 구글아이디로 로그인

[아미나빌더] 아미나의 스킨 경로 관련해서 질문을 드려봅니다



안녕하세요! 신비님!
새해복 많이 받으시고 하시는 일 잘되시길 바랍니다!
그리고 저도 새해에 답변을 받았으면 하는 바램으로 ㅠ.ㅠ 글을 적어봅니다
제 수준은 전공자도 아니고 생업에 바빠 공부할시간도 없어서
일러스트 포토샵 부트스트랩등등 외적인 부분만 알고 있는 수준이라
php 관련되서는 낫놓고 ㄱ자는 간신히 보는 까막눈수준에 가깝습니다 ㅠ.ㅠ

우선 하고싶은건
게시판리스트에서 // 리스트를 일반 리스트형 or 갤러리 리스트형
등으로 버튼을 누르면 스킨이 변환되게 하고자 하는걸 하고싶었어요

제가 쓰고있는건..아미나 버전이구요

한별아빠님께 여쭤봤었는데..나리야는 자동지원하니 그냥 나리야를 쓰길 요청받았는데...이미 아미나로 만들고 있고..자료도 꽤 들어가있는 상태라..
고민이 들어서 포기를 했었고...건강에 문제가 있으시길래..
어찌 어찌 여쭤보기가 어려운 부분도 있어서 포기했다가..

우연히 sir 에서 다음과 같은 글을 보게되었어요
https://sir.kr/g5_tip/8261

그래서 이대로 따로 해봤더니..아니 왠걸...이게 되는겁니다.
물론 아미나를 쓰고있지만 저대로 하니..그누보드의 게시판으로 교체가 되긴하지만..일딴은 성공적으로...되고있는...

근데 문제는..경로가 그누보드 경로라..그누보드 오리지널 게시판이 나오고 있어요...

저 주소를 보시면 알겠지만
1. extend 폴더에 board.php 파일을 새로 만든다
2. list.skin.php에서 경로추가한 버튼 추가

이런식으로 되어있는데..

extend에 만들어진 board.php 내용중

<?php
$skin_href = "./board.php?bo_table=".$bo_table;
if($skin_path){
 set_cookie("skin", $skin_path, 86400);
    $board_skin_path = get_skin_path('board', $skin_path);
 $board_skin_url = get_skin_url('board', $skin_path);
}else{
 $skin_path = get_cookie("skin");
    if($skin_path){
        $board_skin_path = get_skin_path('board', $skin_path);
        $board_skin_url = get_skin_url('board', $skin_path);
 }
}
?>

위의 부분에서 경로를 아미나 경로로 잡지를 못하겠어요..모바일까지 따로 생각을 해줘서 써야하는부분인지도 잘 모르겠구요..
common을 뒤적해보니..
$board_skin_path = get_skin_path('board', $board['bo_skin']);

$board['bo_skin'])으로 잡아야하는거 같은데..그냥 그정도까지만 예상이 되고..

아미나에 관련된 스킨폴더를 쓰려면
board.php는 어떤식으로 교정하고
list.skin.php에서는 어떤식으로 불러와야할지.. 몰라서 질문을 남깁니다..

혹시 굉장히 난해한거라면..어쩔수 없겠지만..
자애로우신 신비님께 혹시나 하고 여쭤봅니다!

홈짱 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 2023-01-29 (일) 20:58 2년전
1.
get_skin_path(), get_skin_url() 함수 정의를 보니까, /theme 폴더 기준으로 로직이 되어있네요.
https://github.com/gnuboard/gnuboard5/blob/26b22ac9caa857d11488c5c8a90a0ce4b8fe27c9/lib/common.lib.php#L3545

2.
아미나는 /thema 폴더 안 테마를 사용하고, 테마 밖의 게시판 스킨만을 사용하니까 위 함수들을 복사해 get_skin_path2(), get_skin_url2() 함수 생성 후, 이 함수 안 코드들을 /theme 폴더 사용 않는 코드들로 재정의하는 작업을 하셔야 할 것으로 생각됩니다.

3.
잘 될진 모르겠지만, 대략 아래처럼 하시면 될 듯.

<?php
// 스킨 path
function get_skin_path2($dir, $skin)
{
    global $config;

    if(G5_IS_MOBILE)
        $skin_path = G5_MOBILE_PATH.'/'.G5_SKIN_DIR.'/'.$dir.'/'.$skin;
    else
        $skin_path = G5_SKIN_PATH.'/'.$dir.'/'.$skin;

    return $skin_path;
}

// 스킨 url
function get_skin_url2($dir, $skin)
{
    $skin_path = get_skin_path2($dir, $skin);

    return str_replace(G5_PATH, G5_URL, $skin_path);
}

$skin_href = "./board.php?bo_table=".$bo_table;
if($skin_path){
    set_cookie("skin", $skin_path, 86400);
    $board_skin_path = get_skin_path2('board', $skin_path);
    $board_skin_url = get_skin_url2('board', $skin_path);
}else{
    $skin_path = get_cookie("skin");
    if($skin_path){
        $board_skin_path = get_skin_path2('board', $skin_path);
        $board_skin_url = get_skin_url2('board', $skin_path);
    }
}
주소
     
     
no_profile 시니 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 2023-01-29 (일) 21:35 2년전
[@홈짱] 아이고 신비님 감사드립니다 !

그런데 잘안되네요 ㅠ.ㅠ 제가 초보라그런지..말씀하신뜻은 간신히 이해했는데..적용해보니 게시판이 쏙 하고 사라져버렸어요.

그래도 적어주신거 보고..다른자료 모아서 비교해보면서..알아가보고자 합니다! 감사드립니다!
주소
          
          
홈짱 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 2023-01-29 (일) 22:10 2년전
[@시니] 1.
위 코드는 게시판스킨명 단위로 쿠키 구운 시스템이라, 아미나 전용 게시판스킨에서는 사용할 수 없는 코드입니다. 아미나는 list.skin.php 상단에서 $boset['list_skin'] 변수에 대해서 별도로 쿠키 구우셔야 합니다. (자세한 건 저도 더듬더듬 찾아보며 작업해야 하는 수준이라  자세한 안내는 힘들 듯 합니다.)

2.
아래 코드 바로 위에서 쿠키 구우시면 될 듯.
/skin/board/Basic--Board/list.skin.php 약 18라인

$list_skin_url = $board_skin_url.'/list/'.$boset['list_skin'];
$list_skin_path = $board_skin_path.'/list/'.$boset['list_skin'];
주소
               
               
no_profile 시니 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 2023-01-29 (일) 22:46 2년전
[@홈짱] 앗! 감사합니다

고사이에...제 수준에 맞는..
좀 간단하지는 않지만 다른방안을 찾아서..
구글링하고 예전 g4기록등등을 찾아찾아..
아미나용으로..(야매로)..
어느정도 하고는 있어요..한번 봐주셨으면 감사드리겠습니다

common.php 파일에다가
if ($list_type) { // 신규리스트
    $qstr .= '&list_type=$list_type';
}

타입을 추가한뒤...

스킨게시판에서 list.skin.php를 복사해서

list1.skin.php 타입과
list2.skin.php 타입으로 나눈뒤

list.skin.php의 내용은 지우고
타입 인크루드만
if($list_type){
include_once("$board_skin_path/list2.skin.php");
}else{
include_once("$board_skin_path/list1.skin.php");
}
 한뒤
list2.skin.php 에서 스킨계열 경로만 다른 스킨으로 설정하고

주소를
보드명뒤에 &list_type=2 로 구분해서..
1스킨 2스킨으로 나눠보려고 해요

일딴 리스트에선 되고있고..
뷰페이지를 봤을때...
하단에 전체목록보이기를 수정해야할거 같아서..
이건 뷰를 건드려야하나..하고 요래조래..왔다갔다하고있답니다.

이런식도 괜찮을까 싶기도하구요...
홈짱에 기록해도 될까 싶어서 ( >.<;; ) 설레발중..

그거 해놓고 다시..신비님 말씀대로 또 연구해보려구요!
대단히 감사합니다!
주소
                    
                    
홈짱 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 2023-01-29 (일) 23:08 2년전
[@시니] 이 작업매뉴얼은 유료회원 전용이라, 대략적인 작업 방향만 알려드리는 점 양해바랍니다.

(1) 쿠키 굽기 전용 파일을 별도로 루트에 생성
(2) 해당 파일주소로 GET방식으로 스킨타입 넘김
(3) 쿠키굽기전용파일에서 구운 후, 리퍼러 체크해 다시 원위치로 이동
(4) 구운 쿠키값 변수로 바로 위 알려드린 코드에서 $boset['list_skin'] 값 수정
주소
                         
                         
no_profile 시니 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 2023-01-29 (일) 23:20 2년전
[@홈짱] 감사드려요! 체크체크체크!! 잊어먹지않게!
주소
분류 제목 글쓴이
질문 날짜부분 링크 걸고 싶은데 도와주세요!! 1 asd 메일보내기 이름으로 검색
홈짱닷컴 페이지 스크롤 할 때 광고창 올라오는 것 1 jm joh 이름으로 검색
그누보드5 그누보드 구형 설치 1 초보남 이름으로 검색
배추빌더5 배추님 사이트맵 받고 싶어요ㅠ_ㅠ 1 no_profile 임진영 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
기타 google 500. 오류가 발생했습니다. 1 no_profile 컴맹 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
홈짱닷컴 댓글을 달고나면 깨져서 보입니다. 3 no_profile 디피씨평단14752원 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
홈짱닷컴 읽을권한이 없다고 하는데 어떻게해야 권한이 생… 1 no_profile 두번째창업 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
CSS 셀 전체에 링크걸기 문의 4 no_profile 홍주부 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 form 형식으로 보내지지 않는 경우는? 1 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 디비에 저장된 값을 가져와서 분기문으로 만들 … 5 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 php 버젼을 낮은 걸 쓰는 탓일까요? 2 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 토큰 정보가 올바르지 않습니다. 4 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 배추5의 g5_member 테이블에서 컬럼 추… 1 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 모바일 버젼만 사용하기 2 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 이름을 검색하는 경우 6 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 배추빌더5 g5_member의 원래 칼럼명들을… 2 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 배추빌더5에서 로그인하고 나서 본문만 뜨게하려… 4 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 실수를 예방하려고 사이트를 복사/이전해놓고 작… 7 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 [재질문] 인기검색어 관리를 없애는 방법? 3 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
배추빌더5 업데이트 페이지를 만들려고 합니다. (질문 또… 1 no_profile 이할인 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물
2/3
목록
찾아주셔서 감사합니다. Since 2012