사이트 캡쳐스킨 g5 용을 g4에서 사용하게 수정하고싶어요 도움부탁드립니다.
관련링크
본문
g5 원본스킨
https://sir.kr/g5_skin/11777?sfl=wr_subject%7C%7Cwr_content&stx=%EB%94%B0%EC%98%A4%EA%B8%B0
을 g4에서 사용하려고하는데
어디를 좀 수정하면될런지 도움주세요
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
function link_image_thaogi($url=""){
if(empty($url)) return false;
$url_info = json_decode(file_get_contents("https://www.googleapis.com/pagespeedonline/v1/runPagespeed?url=".$url."&screenshot=true"), true);
$image['data'] = str_replace(array("_", "-"), array("/", "+"), $url_info['screenshot']['data']);//encoded
$image['mime'] = $url_info['screenshot']['mime_type'];
$image['decode'] = base64_decode($image['data']);
if(preg_match("/image\/(jpe?g|gif|png)+/i", $image['mime'], $match))
$filename_ext = ".".str_replace("jpeg", "jpg", $match[1]);
else
$filename_ext = "";
$ym = date('ym', G5_SERVER_TIME);
$data_dir = G5_DATA_PATH.'/editor/'.$ym;
$data_url = G5_DATA_URL.'/editor/'.$ym;
@mkdir($data_dir, G5_DIR_PERMISSION);
@chmod($data_dir, G5_DIR_PERMISSION);
$file_name = sprintf('%u', ip2long($_SERVER['REMOTE_ADDR'])).'_'.get_microtime().$filename_ext;
$save_dir = sprintf('%s/%s', $data_dir, $file_name);
$save_url = sprintf('%s/%s', $data_url, $file_name);
$ifp = fopen($save_dir, "wb");
fwrite($ifp, $image['decode']);
fclose($ifp);
chmod($save_dir, G5_FILE_PERMISSION);
return $save_url;
}
for ($i=1; $i<=G5_LINK_COUNT; $i++) {
${'wr_link'.$i} = set_http(${'wr_link'.$i});
if(isset(${'wr_link'.$i}) && !empty(${'wr_link'.$i}) && ${'wr_link'.$i} != $write['wr_link'.$i]) {
if($link_image = link_image_thaogi(${'wr_link'.$i})) ${'wr_'.$i} = $link_image;
}
}
if(!$wr_1) $wr_1 = $write['wr_1'];
if(!$wr_2) $wr_2 = $write['wr_2'];
답변 6
지금 스킨을 보니 대부분 변수값만 바꾸시면 될것입니다.
실제 사용할때도 그렇게 수정해서 쓰고있습니다.
그리고 아래 두가지 부분만 체크하시면 됩니다.
1. G5_**** 를 $g4[****]형식으로 변경
그누4에서는 $g4[path] 형식으로 되어있는데요 그누 G5_PATH 이런형식으로변경이 되었습니다.
혹..하위폴더가 포함되어있거나 따로 구현되어있지않은 변수값이 있습니다.
$g4[bbs_path] -> G5_BBS_PATH 이런식입니다.
그리고 G5_에서는 G5_PATH 와 G5_URL 형식으로도 되어있으니 혹 PATH 와 URL 의 정확한 구분을 모르시면 하나하나 넣어보면서 테스트해보십시요.
지금 스킨내용을 파악해보니 이부분만 변경하면될것입니다.
2.그누4와 그누5 스킨차이
게시판경우 $board_skin_path 연결변수값인데요..
그누4는 $board_skin_path 하나로 되어있지만
그누5는 $board_skin_path 와 $board_skin_url 로 두개를 사용합니다.
path는 절대경로 이며
url은 상대경로라고 합니다.. 이부분도 구분해서 사용하세요.
보통 절대경로는 include 파일에 사용합니다.
include G5_PATH."****.php";
url은 진짜 링크가 필요가 곳에 사용합니다.
이두가지만 주의해서 그누4스킨하고 같이 열어놓고 수정/하시면 될것입니다.
구를 스크린샷url처리부분은 그냥 그대로 쓰시면 될것입니다.
오 명쾌한 답변 주시는 군요
적용해 보겠습니다.
G5_DIR_PERMISSION
G5_FILE_PERMISSION
G5_LINK_COUNT
요 세가지가 헷갈리네요 이건 어떻게 수정해야되나요?
아~ 야매의 한계가 느껴집니다.
소스 수정해주실 분없나요?
상단에 이렇게 넣어봤는데 안되네요
문제 지적좀 부탁드립니다.
define(G5_DATA_PATH, $g4[path].'/data');
define(G5_DATA_URL, $g4[path].'/data');
define(G5_DIR_PERMISSION, 0755);
define(G5_FILE_PERMISSION, 0755);
define(G5_SERVER_TIME, "$g4[time_ymdhis]");
퍼미션문제였군요
해결되었어요~~~~