[이윰] 이윰빌더 짧은주소를 그누보드 짧은주소로 교체하기

페이지 정보

shadow2fox 1,473 2 2 2021.08.26 21:46

평점

  • 평점 : 5점 (2명 참여)

본문

📝 이윰빌더 짧은주소를 그누보드 짧은주소로 교체하기
그누보드가 짧은주소를 채택하기 전 발표되었던 이윰빌더 버전을 이용 중이라면 게시글 보기 시 이윰빌더만의 짧은주소를 생성, DB에 저장하고 그 정보를 불러와 짧은주소(Short URL)로 보여주는데 서버 리소스 낭비와 불필요한 기능이라 판단되어 이윰빌더 짧은주소를 그누보드 짧은주소로 변경해 보자.

1. 그누보드5/eyoom/core/board/view.skin.php를 열어 // 짤은주소 체크 및 생성을 검색하여 주석처리한다.

수정 전

// 짤은주소 체크 및 생성
if(!($short_url = $eb->get_short_url())) {
    $short_url = $eb->make_short_url();
}
수정 후

// 짤은주소 체크 및 생성
/*
if(!($short_url = $eb->get_short_url())) {
    $short_url = $eb->make_short_url();
}
*/

바로 아래쪽에 다음과 같은 소스를 추가한다.

//이윰빌더 짧은주소를 그누보드 짧은주소로 교체하기
$explode_url = explode('?', $view['href']);
$short_url = $explode_url[0];

위 수정만으로 게시글 보기 시 이윰빌더의 짧은주소가 그누보드의 짧은주소로 교체가 된다.

2. 구글과 같은 검색엔진에 의해 과거에 색인되었던 이윰빌더의 짧은주소 기능이 필요치 않거나 향후 재수집되어 그누보드 짧은주소로 갱신되기를 원한다면 아래 설명을 보고 추가 작업을 실시한다.
그누보드5/eyoom/classes/eyoom.class.php를 열어 // 10진수를 62진수 변환 - PHP스쿨 마냐님 소스를 검색하여 base62_encode function부터 make_short_url function까지 주석처리한다.

/*
// 10진수를 62진수 변환 - PHP스쿨 마냐님 소스 : http://www.phpschool.com/link/tipntech/79695 참조
public function base62_encode($val, $base=62) {
    // can't handle numbers larger than 2^31-1 = 2147483647
    $str = '';
    do {
        $i = $val % $base;
        $str = $this->chars[$i] . $str;
        //$val = ($val - $i) / $base;
        $val = (int)($val - $i) / (int)$base;
    } while($val > 0);
    return $str;
}
...
...
...
// 짧은주소 생성하기
public function make_short_url() {
    global $g5, $bo_table, $wr_id, $theme;
    $sql = "insert into {$g5['eyoom_link']} set bo_table='{$bo_table}', wr_id = '{$wr_id}', theme = '{$theme}'";
    sql_query($sql,false);
    $s_no = sql_insert_id();
    $t = $this->base62_encode($s_no);
    return G5_BBS_URL . "/?t=".$t;
}
*/
이윰빌더의 메뉴 링크로 부터 메뉴속성 추출하기 증 짧은글 주소(?t=파일명)가 올바르게 작동하도록 하려면 // 62진수를 10진수로 변환// 짧은주소에서 게시판 기본정보 추출하기 함수를 이용할 수 있도록 주석해제 한다.

3. 그누보드5/extend/xeyoom.extend.php를 열어 // 짧은주소 적용을 검색하고 주석처리한다.

/* 이윰빌더 짧은주소를 그누보드 짧은주소로 교체하기
// 짧은주소 적용
if(defined('_LINK_')) {
    $link = array();
    $link = $eb->short_url_data($t);
    $bo_table = $link['bo_table'];
    $write_table = $link['write_table'];
    $wr_id = $link['wr_id'];
    $board = $link['board'];
    $gr_id = $link['gr_id'];
    $group = $link['group'];
    $write = $link['write'];
    $theme = $link['theme'];
    unset($link);
}
*/


4. 이윰빌더의 짧은주소의 정보가 담긴 DB 테이블인 g5_eyoom_link도 삭제한다.

DROP TABLE IF EXISTS `g5_eyoom_link`;

5. 그누보드5/eyoom/install/eyoom.table.sql을 열어 Table structure for table `g5_eyoom_link`를 검색하고 아래 라인들을 삭제한다.

--
-- Table structure for table `g5_eyoom_link`
--

DROP TABLE IF EXISTS `g5_eyoom_link`;
CREATE TABLE IF NOT EXISTS `g5_eyoom_link` (
  `s_no` int(11) unsigned NOT NULL auto_increment,
  `bo_table` varchar(20) collate utf8_unicode_ci NOT NULL,
  `wr_id` int(11) unsigned NOT NULL default '0',
  `theme` varchar(40) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`s_no`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

📌xeyoom.extend.php 파일 내 // 짧은주소 적용 주석처리함
📌이윰빌더 메뉴 링크로 부터 메뉴속성 추출하기 증 짧은글 주소(?t=파일명)가 포함되었을 경우 오류 수정

끌어올림|2021.08.26 21:46|횟수 2

추천인 2
  • 내사랑
  • 하늘구장
10
shadow2fox - 회원등급 : 자연/Level 142 - 포인트 : 2,544,205
레벨 142
경험치 3,042,610

Progress Bar 93%

- 가입일 : 2015-03-10 12:21:44
- 서명 : 인간에게 가장 큰 선물은 자기 자신에게 기회를 주는 것이다. - 크리스 가드너, Chris Gardner -
- 자기소개 : There's never a shortcut to happiness.

댓글2

하늘구장님의 댓글

하늘구장 2021.07.02 21:50
추천이요 그누보드에서 짧은주소를 지원하기 때문에 이윰빌더만의 짧은주소는 필요치 않는 것 같아요

축하합니다. 첫 댓글로 7경험치를 획득하였습니다.

내사랑님의 댓글

내사랑 @하늘구장 2021.07.03 00:10
동감이에요 저도 잘 사용하겠습니다
Total 747438 페이지
제목 글쓴이 날짜 조회 추천
이윰  댓글+4🏆 📸 유튜브 썸네일 생성 개선하기 루루아빠 2021.06.24 3,493 3
서버  🏆 config.php 관련 nginx 403 에러 - 사용 권한 없음: 액세스가 거부되었습니다. 루루아빠 2016.02.25 3,486 0
그누•영카트  🏆 영카트 5.0.35 패치 루루아빠 2015.06.01 3,475 0
jQuery  🏆 Theia Sticky Sidebar 사용시 모달(modal)이 사이드바 아래로 내려가는 문제 해결하기 루루아빠 2016.03.16 3,461 0
에디터  🏆 CKeditor4.x 소스 온전하게 보여주기 루루아빠 2015.05.06 3,461 1
jQuery  댓글+2🏆 사이드바를 고정하기 위한 Theia Sticky Sidebar 소개 및 적용법 루루아빠 2016.02.10 3,455 0
이윰  🏆 SNS 아이콘 툴팁 추가와 효과 바꾸기 루루아빠 2015.10.01 3,452 0
이윰  댓글+1🏆 style.css를 유지하면서 venobox 플러그인 사용하기 루루아빠 2015.07.30 3,447 0
이윰  댓글+4🏆 새로고침 없이 댓글을 달거나 삭제할 수 있는 ajax 댓글 시스템으로 교체하기 shadow2fox 2018.12.11 3,445 2
그누•영카트  🏆 그누보드 5.0.37 패치 루루아빠 2015.06.23 3,441 0
이윰  🏆 이윰빌더 1.1.5 패치 루루아빠 2015.06.22 3,423 0
기타  댓글+3🏆 아이프레임에 포함된 플래쉬(White flash방지) 로딩 완벽 해결법 루루아빠 2015.04.11 3,421 0
에디터  🏆 Smarteditor2 링크 무조건 새창(_blank)으로 띄우기 루루아빠 2015.05.31 3,421 0
JavaScript  🏆 모달창(Modal Window) backdrop(모달창 바깥 부분) 클릭시 모달창 닫지 않기 루루아빠 2016.05.06 3,410 0
이윰  🏆 짧은 글 주소에 댓글에 표시되지 않는 버그 패치 루루아빠 2015.06.08 3,408 0
이윰  🏆 Eyoom Builder 1.3.14 패치 루루아빠 2017.12.17 3,406 0
이윰  🏆 이윰빌더 1.1.6 패치 루루아빠 2015.06.23 3,395 0
이윰  댓글+1🏆 이윰 메뉴 설정에서 출력 순서로 인한 오류 발생시 루루아빠 2015.04.09 3,389 0
제로  🏆 선택한 게시글은 목록 제목에서 진하게 표시하기 루루아빠 2006.05.29 3,385 0
그누•영카트  🏆 영카트 5.1.0 (테마지원) 패치 루루아빠 2015.10.11 3,380 0