[킴스큐] 모바일에서 카카오스토리 연결하는 방법

  • Read 7459
  • -
  • Score 0/0
By. 2014.04.30 08:45
레벨 5 이카루스 ( Lv. 5 )
게시판 기준으로 설명드리겠습니다.
아래의 순서대로 해보세요.

1. js 추가 

- 아래 소스를 해당 테마 _main.js 파일에 추가해주요.

// 카카오스토리 링크 js 시작

/*
 Copyright 2012 KAKAO
 */

(function (window, undefined) {
    var kakao = {};
    window.kakao = window.kakao || kakao;

    var uagent = navigator.userAgent.toLocaleLowerCase();
    if (uagent.search("android") > -1) {
        kakao.os = "android";
        if (uagent.search("chrome") > -1) {
            kakao.browser = "android+chrome";
        }
    } else if (uagent.search("iphone") > -1 || uagent.search("ipod") > -1 || uagent.search("ipad") > -1) {
        kakao.os = "ios";
    }

    var app = {
        talk: {
            base_url: "kakaolink://sendurl?",
            apiver: "2.0.1",
            store: {
                android: "market://details?id=com.kakao.talk",
                ios: "http://itunes.apple.com/app/id362057947"
            },
            package: "com.kakao.talk"
        },
        story: {
            base_url: "storylink://posting?",
            apiver: "1.0",
            store: {
                android: "market://details?id=com.kakao.story",
                ios: "http://itunes.apple.com/app/id486244601"
            },
            package: "com.kakao.story"
        }
    };

    kakao.link = function (name) {
        var link_app = app[name];
        if (!link_app) return { send: function () {
            throw "No App exists";
        }};
        return {
            send: function (params) {
                var _app = this.app;
                params['apiver'] = _app.apiver;
                var full_url = _app.base_url + serialized(params);

                var install_block = (function (os) {
                    return function () {
                        window.location = _app.store[os];
                    };
                })(this.os);

                if (this.os == "ios") {
                    var timer = setTimeout(install_block, 2 * 1000);
                    window.addEventListener('pagehide', clearTimer(timer));
                    window.location = full_url;
                } else if (this.os == "android") {
                    if (this.browser == "android+chrome") {
                        window.location = "intent:" + full_url + "#Intent;package=" + _app.package + ";end;";
                    } else {
                        var iframe = document.createElement('iframe');
                        iframe.style.visibility = 'hidden';
                        iframe.src = full_url;
                        iframe.onload = install_block;
                        document.body.appendChild(iframe);
                    }
                }
            },
            app: link_app,
            os: kakao.os,
            browser: kakao.browser
        };

        function serialized(params) {
            var stripped = [];
            for (var k in params) {
                if (params.hasOwnProperty(k)) {
                    stripped.push(k + "=" + encodeURIComponent(params[k]));
                }
            }
            return stripped.join("&");
        }

        function clearTimer(timer) {
            return function () {
                clearTimeout(timer);
                window.removeEventListener('pagehide', arguments.callee);
            };
        }
    };
}(window)); 

// 카카오스토리 링크 js 끝

2. php 소스 추가 

   해당 테마 view.php 페이지 상단에 아래의 소스를 추가해주세요.
   이 것은 원하는 이미지를 보내기 위한 것입니다. 
   만약 대표 이미지가 있다면 이 곳에서 하나 만들어서 위치를 정해주고
   아래 스크립트에 넣어주면 됩니다. 

<?php
 $exp = explode(']',str_replace('[','',trim($_R['upload'])));
 $UP=db_fetch_array(db_query("select * from ".$table['s_upload']." where uid=".$exp[0],$DB_CONNECT));
 $o_img = './files/'.$UP['folder'].'/'.$UP['tmpname'];// 원본이미지
 $t_img=getUploadImage($_R['upload'],$_R['d_regis'],$_R['content'],'jpg|jpeg');//썸네일
 $b_img="대표 이미지 주소";// 대표 이미지 사용할 경우
?>


3. 카카오스토리 링크연동 스크립트 추가 

   역시 해당 테마 view.php 페이지 하단 스크립트 출력되는 부분에
   아래 스크립트를 추가해주세요

// 카카오스토리 링크 연동 스크립트 시작 

<script type="text/javascript">
 function executeKakaoStoryLink()
 {
   kakao.link("story").send({   
   var kims_tit = "<?php echo urlencode($_HS['title'])?>";
   var kims_sbj = "<?php echo urlencode($R['subject'])?>";
   var kims_img="<?php echo $t_img?>"; // 썸네일 이미지 주소   
   post : "<?php echo urlencode($g['url_root'].($_HS['rewrite']?($_HS['usescode']?'/'.$r:'').'/b/'.$R['bbsid'].'/'.$R['uid']:'/?'.($_HS['usescode']?'r='.$r.'&':'').'m='.$m.'&bid='.$R['bbsid'].'&uid='.$R['uid']))?>",
   appid : "<?php echo $g['s']?>", // 홈피주소
   appver : "1.0",
   appname : "<?php echo $_HS['name']?>", // 홈피이름
   urlinfo : JSON.stringify({title:kims_tit, desc:kims_sbj, imageurl:[kims_img], type:"article"})
    });
  }
</script>

// 카카오스토리 링크 연동 스크립트 끝

4. 클릭요소에 onclick 이벤트 적용하기 

 카카오스토리 링크 버튼 혹은 기타 링크에 아래와 같이 스크립트 연동을 해줍니다.

 1) 이미지일 경우  
 <img src="카카오스토리 이미지" alt="카카오스토리 링크" title="게시글을 카카오스토리로 보내기" onclick="executeKakaoStoryLink();" />
 
 2) 텍스트일 경우
 <a href="#"  alt="카카오스토리 링크" title="게시글을 카카오스토리로 보내기" onclick="executeKakaoStoryLink();" />카카오스토리로 글보내기</a>



CMS포럼 -Total. 21

CMS포럼
번호 제목 글쓴이 조회 날짜
공지 우리나라에서 주로 사용중인 대표 CMS 안내
레벨 1 관리자
7889 03.18
20 [킴스큐] 모바일에서 이미지 첨부시 같은 이름으로 업로드 되는 현상
레벨 1 관리자
960 03.05
19 [킴스큐] 게시판의 링크주소 부가필드 적용
레벨 5 이카루스
1660 01.08
18 [킴스큐] 댓글 카카오이미지로 변경
레벨 1 관리자
1234 08.05
17 [XE] 네이버 “XE 개발, 요람에서 무덤까지 도와드려요”
레벨 3 iloveme
1127 05.23
16 [킴스큐] 모바일에서 사진 등록시 자동회전 방법
레벨 5 이카루스
3191 04.30
>> [킴스큐] 모바일에서 카카오스토리 연결하는 방법
레벨 5 이카루스
7460 04.30
14 [킴스큐] 모바일에서 파일 업로드시 사이즈 자동 조절 방법
레벨 5 이카루스
3386 04.30
13 모바일 [워드프레스] 결제연동 프로세스 무료 배포
레벨 3 iloveme
1198 11.07
12 [킴스큐] 자음퀴즈 모듈 탑제
레벨 1 관리자
1415 10.01
11 [킴스큐] Google+ 보내기 스크립 추가
레벨 1 관리자
2961 09.30
10 [킴스큐] 아이콘샵 모듈 추가
레벨 5 이카루스
3036 09.27
9 [킴스큐] 배경음악 설정 방법
레벨 5 이카루스
1720 09.17
8 [킴스큐] 킴스큐 설치후 로그인이 안되는 문제 해결 방법
레벨 5 이카루스
3381 09.10
7 [그누보드] 미니돌 아바타 설치 정보
레벨 5 이카루스
1981 06.07
6 [킴스큐] 스위치를 이용한 좌우측 고정된 퀵메뉴 달기
레벨 1 관리자
2603 05.30
5 [킴스큐] 모바일게시판에서 유튜브 동영상 넓히기 팁
레벨 1 관리자
2087 05.10
4 [킴스큐] 홈페이지 도메인 고정 방법 - 스위치 이용
레벨 1 관리자
2993 03.21
3 [킴스큐] 익명게시판 적용 방법
레벨 5 이카루스
29056 03.20
2 [킴스큐] 유입키워드의 정보가 누적이 안될 경우
레벨 1 관리자
2515 03.18
1 [킴스큐] 최근게시물에 게시판명 붙히는 방법
레벨 1 관리자
4185 03.14
처음페이지이전 10 페이지1다음 10 페이지마지막페이지
회원 로그인
아이디/비번 기억
소셜네트워크 서비스를 통해서 로그인하시면 별도의 로그인 절차없이 회원서비스를 이용하실 수 있습니다.
많이 본 글
댓글 많은 글
추천글